[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 7793b2fe2ab: Merge from savannah/emacs-30
From: |
Po Lu |
Subject: |
master 7793b2fe2ab: Merge from savannah/emacs-30 |
Date: |
Sat, 14 Sep 2024 20:55:13 -0400 (EDT) |
branch: master
commit 7793b2fe2ab0fccebdabef993024585e9fea9db8
Merge: 691f441717e 709ce2aff14
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Merge from savannah/emacs-30
709ce2aff14 Port to Haiku R1/beta5
21efdd5ef31 Fix c++-ts-mode font-lock for latest c++ grammar (bug#73191)
ffc00eac53d ; Set Transient's version and add admin/MAINTAINERS entry
3822a5e5d12 * admin/update-copyright: Print reminder to do manual upd...
43b678d3d26 * admin/notes/years: Update.
38de992a5a3 * etc/TODO: New item "support indentation guides".
# Conflicts:
# admin/notes/years
# doc/misc/transient.texi
# lisp/progmodes/c-ts-mode.el
# lisp/transient.el
---
admin/MAINTAINERS | 7 +++++++
admin/notes/years | 39 ++++++++++++++++++++-------------------
admin/update-copyright | 4 ++++
etc/TODO | 8 ++++++++
lisp/progmodes/c-ts-mode.el | 16 +++++++++++++---
lisp/transient.el | 2 ++
src/haiku_support.cc | 10 +++++++++-
7 files changed, 63 insertions(+), 23 deletions(-)
diff --git a/admin/MAINTAINERS b/admin/MAINTAINERS
index 8930f47b35b..20d5c1c60dc 100644
--- a/admin/MAINTAINERS
+++ b/admin/MAINTAINERS
@@ -393,6 +393,13 @@ Tramp
doc/misc/tramp*.texi
test/lisp/net/tramp*-tests.el
+Transient
+ Maintainer: Jonas Bernoulli
+ Repository: https://github.com/magit/transient
+
+ lisp/transient.el
+ doc/misc/transient.texi
+
Modus themes
Maintainer: Protesilaos Stavrou
Repository: https://github.com/protesilaos/modus-themes
diff --git a/admin/notes/years b/admin/notes/years
index 2a961536da6..9c0b9a81886 100644
--- a/admin/notes/years
+++ b/admin/notes/years
@@ -1,6 +1,6 @@
HOW TO MAINTAIN COPYRIGHT YEARS FOR GNU EMACS
-Maintaining copyright years is now very simple: every time a new year
+Maintaining copyright years is very simple: every time a new year
rolls around, add that year to every FSF (and AIST) copyright notice.
Do this by running the 'admin/update-copyright' script on a fresh repo
checkout, redirecting its output to a file, so that you could later
@@ -20,16 +20,19 @@ A few known problems with the build-aux/update-copyright
script:
. it doesn't update the second Copyright notice, the one that gets
output into PDF and PS, in etc/refcards/ru-refcard.tex
. it doesn't update etc/refcards/gnus-refcard.tex, doc/misc/org.org,
- and nt/*.rc.in because their Copyright statements have a
- non-standard format
- . several README and XPM files under etc/images/
- (e.g. etc/images/gud/README), and also etc/refcards/README,
- msdos/README, and nt/icons/README aren't updated either
- - the copyright notices for headers generated by exec/configure.ac and
- by configure.ac are not updated as the file already bears a notice
- above it
-
-These files need to be updated by hand.
+ nt/emacs.rc.in, and nt/emacsclient.rc.in, because their Copyright
+ statements have a non-standard format
+ . several README files under etc/images/, and also
+ etc/refcards/README, msdos/README, and nt/icons/README aren't
+ updated either
+ . the copyright notices for headers generated by configure.ac and
+ exec/configure.ac are not updated as the files already bear notices
+ above them
+ . the example copyright year in doc/lispref/tips.texi is not updated
+
+These files need to be updated by hand, however note that the above list
+is not necessarily exhaustive. For that reason, it's best to grep for
+something like "\<202[0-4]\>" and check any hits manually.
Next, run "M-x set-copyright" from admin.el, which updates several
copyright notices in the Emacs sources.
@@ -42,23 +45,21 @@ ETAGS.good* and CTAGS.good files, and then commit the new
test files.
There's no need to worry about whether an individual file has changed
in a given year - it's sufficient that Emacs as a whole has changed.
-
Therefore the years are updated en-masse near the start of each year,
so basically there is no need for most people to do any updating of them.
-The current (in 2011) version of "Information for Maintainers of GNU
-Software" (see that document for more details) says that it is OK to use
-ranges in copyright years, so in early 2011 the years were changed to use
-ranges, which occupy less space and do not grow in length every year.
+The refcards in etc/refcards can print only the latest copyright year,
+but should keep the full list in a comment in the source.
For more detailed information on maintaining copyright, see the file
"copyright" in this directory.
The previous policy was more complex, but is now only of historical
-interest (see versions of this file from before 2009).
+interest (see versions of this file from before 2009). In early 2011,
+the years were changed to use ranges. This is OK according to changes
+made to "Information for Maintainers of GNU Software" that same year
+(see that document for more details).
-The refcards in etc/refcards can print only the latest copyright year,
-but should keep the full list in a comment in the source.
"Our lawyer says it is ok if we add, to each file that has been in Emacs
diff --git a/admin/update-copyright b/admin/update-copyright
index b9007100b35..56fdfb86265 100755
--- a/admin/update-copyright
+++ b/admin/update-copyright
@@ -77,3 +77,7 @@ updatable_files=$(find $repo_files \
-print) &&
build-aux/update-copyright $updatable_files
+
+printf ">>> Please remember to search for and manually update any\n"
+printf ">>> copyright years that were not updated by this script.\n"
+printf ">>> See the file 'admin/notes/years' for details.\n"
diff --git a/etc/TODO b/etc/TODO
index c894cf68c3d..d37ca6646bb 100644
--- a/etc/TODO
+++ b/etc/TODO
@@ -481,6 +481,14 @@ For some discussion and implementation ideas (including
possibly using
LSP), see the thread starting at
https://lists.gnu.org/archive/html/emacs-devel/2023-09/msg00609.html
+** Add indentation guide support to the display engine
+Support vertical lines that indicate the current level of indentation,
+which is useful when editing source code. This feature should be
+implemented in the display engine.
+
+See the indent-bars package, which implements this in Emacs Lisp:
+https://github.com/jdtsmith/indent-bars
+
** FFI (foreign function interface)
See e.g. https://lists.gnu.org/r/emacs-devel/2013-10/msg00246.html
diff --git a/lisp/progmodes/c-ts-mode.el b/lisp/progmodes/c-ts-mode.el
index 26b352874c2..804d0040f5c 100644
--- a/lisp/progmodes/c-ts-mode.el
+++ b/lisp/progmodes/c-ts-mode.el
@@ -577,7 +577,7 @@ MODE is either `c' or `cpp'."
"or_eq" "override" "private" "protected"
"public" "requires" "template" "throw"
"try" "typename" "using"
- "xor" "xor_eq"))
+ "xor" "xor_eq" "thread_local"))
(append '("auto") c-keywords))))
(defvar c-ts-mode--type-keywords
@@ -599,6 +599,11 @@ MODE is either `c' or `cpp'."
(rx (| "/**" "/*!" "//!" "///"))
"A regexp that matches all doxygen comment styles.")
+(defun c-ts-mode--test-virtual-named-p ()
+ "Return t if the virtual keyword is a namded node, nil otherwise."
+ (ignore-errors
+ (progn (treesit-query-compile 'cpp "(virtual)" t) t)))
+
(defun c-ts-mode--font-lock-settings (mode)
"Tree-sitter font-lock settings.
MODE is either `c' or `cpp'."
@@ -643,8 +648,13 @@ MODE is either `c' or `cpp'."
`([,@(c-ts-mode--keywords mode)] @font-lock-keyword-face
,@(when (eq mode 'cpp)
'((auto) @font-lock-keyword-face
- (this) @font-lock-keyword-face
- (virtual) @font-lock-keyword-face)))
+ (this) @font-lock-keyword-face))
+ ,@(when (and (eq mode 'cpp)
+ (c-ts-mode--test-virtual-named-p))
+ '((virtual) @font-lock-keyword-face))
+ ,@(when (and (eq mode 'cpp)
+ (not (c-ts-mode--test-virtual-named-p)))
+ '("virtual" @font-lock-keyword-face)))
:language mode
:feature 'operator
diff --git a/lisp/transient.el b/lisp/transient.el
index 7ec9848889f..41515f6616e 100644
--- a/lisp/transient.el
+++ b/lisp/transient.el
@@ -32,6 +32,8 @@
;;; Code:
+(defconst transient-version "0.7.2.2")
+
(require 'cl-lib)
(require 'eieio)
(require 'edmacro)
diff --git a/src/haiku_support.cc b/src/haiku_support.cc
index 08e7f29685a..4ea5e0884b9 100644
--- a/src/haiku_support.cc
+++ b/src/haiku_support.cc
@@ -340,10 +340,18 @@ keysym_from_raw_char (int32 raw, int32 key, unsigned
*code)
break;
+#if B_HAIKU_VERSION >= B_HAIKU_VERSION_1_BETA_5
+ case B_HANGUL_KEY:
+#else /* B_HAIKU_VERSION < B_HAIKU_VERSION_1_BETA_5 */
case B_HANGUL:
+#endif /* B_HAIKU_VERSION >= B_HAIKU_VERSION_1_BETA_5 */
*code = KEY_HANGUL;
break;
- case B_HANGUL_HANJA:
+#if B_HAIKU_VERSION >= B_HAIKU_VERSION_1_BETA_5
+ case B_HANGUL_HANJA_KEY:
+#else /* B_HAIKU_VERSION < B_HAIKU_VERSION_1_BETA_5 */
+ case B_HANGUL:
+#endif /* B_HAIKU_VERSION >= B_HAIKU_VERSION_1_BETA_5 */
*code = KEY_HANGUL_HANJA;
break;
case B_KATAKANA_HIRAGANA: