diff options
| author | Stefan Kangas | 2023-01-06 06:30:10 +0100 |
|---|---|---|
| committer | Stefan Kangas | 2023-01-06 06:30:10 +0100 |
| commit | 3fcbb865853d7c364cf7c2986ead9e258f449f97 (patch) | |
| tree | c25714a8d349280168f57016f49612478bc04e74 | |
| parent | 15fc7b3cde92e420f48dfe188251e6af4d832af5 (diff) | |
| parent | 0f5e74f17349dde4bd561f2a703a2bb2c4b97c54 (diff) | |
| download | emacs-3fcbb865853d7c364cf7c2986ead9e258f449f97.tar.gz emacs-3fcbb865853d7c364cf7c2986ead9e258f449f97.zip | |
Merge from origin/emacs-29
0f5e74f1734 ruby-ts-mode: Highlight method and block parameters
f1aa306f915 ruby-ts-mode: Highlight variable assignments
089b08eb3eb ruby-ts-mode: Move 'self' and 'super' from constants to k...
7ede600273c (ruby-ts-mode): Split font-lock feature 'builtin' into two
ec172d748f3 Avoid assertion violation due to fill-column indicator face
62c2963ce60 Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...
2e6070f16c4 ; Another review of etc/NEWS
16eca92415b ; * src/gnutls.c (Fgnutls_deinit): Fix typo in doc string...
4753b587868 * lisp/cedet/semantic/symref/grep.el: Support ts-modes (b...
8a18369afdc ; Another fix for doc strings of 2 treesit.el functions
3fc68833517 ; Fix the doc strings of 2 treesit.el functions
83ce7c861e1 Make 'toml-ts-mode' optional
# Conflicts:
# etc/NEWS
| -rw-r--r-- | etc/NEWS.29 | 257 | ||||
| -rw-r--r-- | lisp/cedet/semantic/symref/grep.el | 5 | ||||
| -rw-r--r-- | lisp/progmodes/ruby-ts-mode.el | 67 | ||||
| -rw-r--r-- | lisp/textmodes/toml-ts-mode.el | 1 | ||||
| -rw-r--r-- | lisp/treesit.el | 24 | ||||
| -rw-r--r-- | src/gnutls.c | 2 | ||||
| -rw-r--r-- | src/xdisp.c | 15 |
7 files changed, 207 insertions, 164 deletions
diff --git a/etc/NEWS.29 b/etc/NEWS.29 index 91e470306c7..059278b08a1 100644 --- a/etc/NEWS.29 +++ b/etc/NEWS.29 | |||
| @@ -332,7 +332,7 @@ this off, disable the new 'isearch-fold-quotes-mode' minor mode. | |||
| 332 | 332 | ||
| 333 | --- | 333 | --- |
| 334 | ** Sorting commands no longer necessarily change modification status. | 334 | ** Sorting commands no longer necessarily change modification status. |
| 335 | In earlier Emacs versions, commands like 'M-x sort-lines' would always | 335 | In earlier Emacs versions, commands like 'sort-lines' would always |
| 336 | change buffer modification status to "modified", whether they changed | 336 | change buffer modification status to "modified", whether they changed |
| 337 | something in the buffer or not. This has been changed: the buffer is | 337 | something in the buffer or not. This has been changed: the buffer is |
| 338 | marked as modified only if the sorting ended up actually changing the | 338 | marked as modified only if the sorting ended up actually changing the |
| @@ -383,7 +383,7 @@ files that were compiled with an old EIEIO (Emacs<25). | |||
| 383 | This is to open up the 'C-x 8 .' map to bind further characters there. | 383 | This is to open up the 'C-x 8 .' map to bind further characters there. |
| 384 | 384 | ||
| 385 | --- | 385 | --- |
| 386 | ** 'C-x 8 =' moved to 'C-x 8 = ='. | 386 | ** 'C-x 8 =' has been moved to 'C-x 8 = ='. |
| 387 | You can now use 'C-x 8 =' to insert several characters with macron; | 387 | You can now use 'C-x 8 =' to insert several characters with macron; |
| 388 | for example, 'C-x 8 = a' will insert U+0101 LATIN SMALL LETTER A WITH | 388 | for example, 'C-x 8 = a' will insert U+0101 LATIN SMALL LETTER A WITH |
| 389 | MACRON. To insert a lone macron, type 'C-x 8 = =' instead of the | 389 | MACRON. To insert a lone macron, type 'C-x 8 = =' instead of the |
| @@ -393,8 +393,8 @@ previous 'C-x ='. | |||
| 393 | 393 | ||
| 394 | *** Eshell's PATH is now derived from 'exec-path'. | 394 | *** Eshell's PATH is now derived from 'exec-path'. |
| 395 | For consistency with remote connections, Eshell now uses 'exec-path' | 395 | For consistency with remote connections, Eshell now uses 'exec-path' |
| 396 | to determine the execution path on the local system, instead of using | 396 | to determine the execution path on the local or remote system, instead |
| 397 | the PATH environment variable directly. | 397 | of using the PATH environment variable directly. |
| 398 | 398 | ||
| 399 | --- | 399 | --- |
| 400 | *** 'source' and '.' no longer accept the '--help' option. | 400 | *** 'source' and '.' no longer accept the '--help' option. |
| @@ -416,12 +416,12 @@ To pipe both stdout and stderr, use the '|&' operator instead of '|'. | |||
| 416 | 416 | ||
| 417 | --- | 417 | --- |
| 418 | ** The 'delete-forward-char' command now deletes by grapheme clusters. | 418 | ** The 'delete-forward-char' command now deletes by grapheme clusters. |
| 419 | This command is by default bound to the <Delete> function key | 419 | This command is by default bound to the '<Delete>' function key |
| 420 | (a.k.a. <deletechar>). When invoked without a prefix argument or with | 420 | (a.k.a. '<deletechar>'). When invoked without a prefix argument or |
| 421 | a positive prefix numeric argument, the command will now delete | 421 | with a positive prefix numeric argument, the command will now delete |
| 422 | complete grapheme clusters produced by character composition. For | 422 | complete grapheme clusters produced by character composition. For |
| 423 | example, if point is before an Emoji sequence, pressing <Delete> will | 423 | example, if point is before an Emoji sequence, pressing '<Delete>' |
| 424 | delete the entire sequence, not just a single character at its | 424 | will delete the entire sequence, not just a single character at its |
| 425 | beginning. | 425 | beginning. |
| 426 | 426 | ||
| 427 | +++ | 427 | +++ |
| @@ -510,7 +510,7 @@ performance, but the latter is closer to a drop-in replacement. | |||
| 510 | 510 | ||
| 511 | --- | 511 | --- |
| 512 | ** The thumbs.el library is now obsolete. | 512 | ** The thumbs.el library is now obsolete. |
| 513 | We recommend using 'M-x image-dired' instead. | 513 | We recommend using command 'image-dired' instead. |
| 514 | 514 | ||
| 515 | --- | 515 | --- |
| 516 | ** The autoarg.el library is now marked obsolete. | 516 | ** The autoarg.el library is now marked obsolete. |
| @@ -648,7 +648,7 @@ duplicated on its right-hand side. | |||
| 648 | 648 | ||
| 649 | +++ | 649 | +++ |
| 650 | ** 'network-lookup-address-info' can now check numeric IP address validity. | 650 | ** 'network-lookup-address-info' can now check numeric IP address validity. |
| 651 | Specifying 'numeric' as the new optional 'hints' argument makes it | 651 | Specifying 'numeric' as the new optional HINTS argument makes it |
| 652 | check if the passed address is a valid IPv4/IPv6 address (without DNS | 652 | check if the passed address is a valid IPv4/IPv6 address (without DNS |
| 653 | traffic). | 653 | traffic). |
| 654 | 654 | ||
| @@ -697,7 +697,7 @@ This is like 'save-buffers-kill-emacs', but instead of just killing | |||
| 697 | the current Emacs process at the end, it starts a new Emacs process | 697 | the current Emacs process at the end, it starts a new Emacs process |
| 698 | (using the same command line arguments as the running Emacs process). | 698 | (using the same command line arguments as the running Emacs process). |
| 699 | 'kill-emacs' and 'save-buffers-kill-emacs' have also gained new | 699 | 'kill-emacs' and 'save-buffers-kill-emacs' have also gained new |
| 700 | optional parameters to restart instead of just killing the current | 700 | optional arguments to restart instead of just killing the current |
| 701 | process. | 701 | process. |
| 702 | 702 | ||
| 703 | ** Drag and Drop | 703 | ** Drag and Drop |
| @@ -902,7 +902,7 @@ the 'COLORTERM' environment variable is set to the value "truecolor". | |||
| 902 | 902 | ||
| 903 | --- | 903 | --- |
| 904 | *** Select active regions with xterm selection support. | 904 | *** Select active regions with xterm selection support. |
| 905 | On terminals with xterm setSelection support, the active region may be | 905 | On terminals with xterm "setSelection" support, the active region may be |
| 906 | saved to the X primary selection, following the | 906 | saved to the X primary selection, following the |
| 907 | 'select-active-regions' variable. This support is enabled when | 907 | 'select-active-regions' variable. This support is enabled when |
| 908 | 'tty-select-active-regions' is non-nil. | 908 | 'tty-select-active-regions' is non-nil. |
| @@ -1041,7 +1041,7 @@ instead. | |||
| 1041 | *** New user option 'help-enable-variable-value-editing'. | 1041 | *** New user option 'help-enable-variable-value-editing'. |
| 1042 | If enabled, 'e' on a value in "*Help*" will pop you to a new buffer | 1042 | If enabled, 'e' on a value in "*Help*" will pop you to a new buffer |
| 1043 | where you can edit the value. This is not enabled by default, because | 1043 | where you can edit the value. This is not enabled by default, because |
| 1044 | it's easy to make an edit that yields an invalid result. | 1044 | it is easy to make an edit that yields an invalid result. |
| 1045 | 1045 | ||
| 1046 | --- | 1046 | --- |
| 1047 | *** 'C-h b' uses outlining by default. | 1047 | *** 'C-h b' uses outlining by default. |
| @@ -1086,7 +1086,7 @@ helpful commands for various tasks. You can toggle the display using | |||
| 1086 | 'C-h C-q'. | 1086 | 'C-h C-q'. |
| 1087 | 1087 | ||
| 1088 | ** Emacs now comes with Org v9.6. | 1088 | ** Emacs now comes with Org v9.6. |
| 1089 | See the file ORG-NEWS for user-visible changes in Org. | 1089 | See the file "ORG-NEWS" for user-visible changes in Org. |
| 1090 | 1090 | ||
| 1091 | ** Outline Mode | 1091 | ** Outline Mode |
| 1092 | 1092 | ||
| @@ -1135,14 +1135,14 @@ buffer on that frame. | |||
| 1135 | *** 'display-buffer' now can set up the body size of the chosen window. | 1135 | *** 'display-buffer' now can set up the body size of the chosen window. |
| 1136 | For example, a 'display-buffer-alist' entry of | 1136 | For example, a 'display-buffer-alist' entry of |
| 1137 | 1137 | ||
| 1138 | '(window-width . (body-columns . 40))' | 1138 | (window-width . (body-columns . 40)) |
| 1139 | 1139 | ||
| 1140 | will make the body of the chosen window 40 columns wide. For the | 1140 | will make the body of the chosen window 40 columns wide. For the |
| 1141 | height use 'window-height' and 'body-lines', respectively. | 1141 | height use 'window-height' and 'body-lines', respectively. |
| 1142 | 1142 | ||
| 1143 | --- | 1143 | --- |
| 1144 | *** You can customize on which window 'scroll-other-window' operates. | 1144 | *** You can customize on which window 'scroll-other-window' operates. |
| 1145 | This is controlled by the new 'other-window-scroll-default' user option. | 1145 | This is controlled by the new 'other-window-scroll-default' variable. |
| 1146 | 1146 | ||
| 1147 | ** Frames | 1147 | ** Frames |
| 1148 | 1148 | ||
| @@ -1182,7 +1182,7 @@ LRI). The new command 'highlight-confusing-reorderings' finds and | |||
| 1182 | highlights segments of buffer text whose reordering for display is | 1182 | highlights segments of buffer text whose reordering for display is |
| 1183 | suspicious and could be malicious. | 1183 | suspicious and could be malicious. |
| 1184 | 1184 | ||
| 1185 | ** Emacs server and client changes | 1185 | ** Emacs Server and Client |
| 1186 | 1186 | ||
| 1187 | +++ | 1187 | +++ |
| 1188 | *** New command-line option '-r'/'--reuse-frame' for emacsclient. | 1188 | *** New command-line option '-r'/'--reuse-frame' for emacsclient. |
| @@ -1215,9 +1215,9 @@ available options can be restored by enabling this option. | |||
| 1215 | *** New user option 'rcirc-bridge-bot-alist'. | 1215 | *** New user option 'rcirc-bridge-bot-alist'. |
| 1216 | If you are in a channel where a bot is responsible for bridging | 1216 | If you are in a channel where a bot is responsible for bridging |
| 1217 | between networks, you can use this variable to make these messages | 1217 | between networks, you can use this variable to make these messages |
| 1218 | appear more native. For example you might set the option to: | 1218 | appear more native. For example, you might set the option to: |
| 1219 | 1219 | ||
| 1220 | (setq rcirc-bridge-bot-alist '(("bridge" . "{\\(.+?\\)}[[:space:]]+"))) | 1220 | (setopt rcirc-bridge-bot-alist '(("bridge" . "{\\(.+?\\)}[[:space:]]+"))) |
| 1221 | 1221 | ||
| 1222 | for messages like | 1222 | for messages like |
| 1223 | 1223 | ||
| @@ -1256,6 +1256,7 @@ will wait forever for redisplay to finish. (We believe you won't need | |||
| 1256 | this feature, given the ability to display buffers with very long | 1256 | this feature, given the ability to display buffers with very long |
| 1257 | lines.) | 1257 | lines.) |
| 1258 | 1258 | ||
| 1259 | |||
| 1259 | * Editing Changes in Emacs 29.1 | 1260 | * Editing Changes in Emacs 29.1 |
| 1260 | 1261 | ||
| 1261 | +++ | 1262 | +++ |
| @@ -1313,12 +1314,12 @@ dragged. | |||
| 1313 | --- | 1314 | --- |
| 1314 | ** New user option 'yank-menu-max-items'. | 1315 | ** New user option 'yank-menu-max-items'. |
| 1315 | Customize this option to limit the number of entries in the menu | 1316 | Customize this option to limit the number of entries in the menu |
| 1316 | "Edit->Paste from Kill Menu". The default is 60. | 1317 | "Edit → Paste from Kill Menu". The default is 60. |
| 1317 | 1318 | ||
| 1318 | +++ | 1319 | +++ |
| 1319 | ** Performing a pinch gesture on a touchpad now increases the text scale. | 1320 | ** Performing a pinch gesture on a touchpad now increases the text scale. |
| 1320 | 1321 | ||
| 1321 | ** show-paren-mode | 1322 | ** Show Paren Mode |
| 1322 | 1323 | ||
| 1323 | +++ | 1324 | +++ |
| 1324 | *** New user option 'show-paren-context-when-offscreen'. | 1325 | *** New user option 'show-paren-context-when-offscreen'. |
| @@ -1358,15 +1359,16 @@ you don't want to enable input fontification by default. | |||
| 1358 | 1359 | ||
| 1359 | --- | 1360 | --- |
| 1360 | *** New user options for alternate wheel events. | 1361 | *** New user options for alternate wheel events. |
| 1361 | The options 'mouse-wheel-down-alternate-event', | 1362 | The user options 'mouse-wheel-down-alternate-event' and |
| 1362 | 'mouse-wheel-up-alternate-event', 'mouse-wheel-left-alternate-event', | 1363 | 'mouse-wheel-up-alternate-event' as well as the variables |
| 1363 | and 'mouse-wheel-right-alternate-event' have been added to better | 1364 | 'mouse-wheel-left-alternate-event' and |
| 1364 | support systems where two kinds of wheel events can be received. | 1365 | 'mouse-wheel-right-alternate-event' have been added to better support |
| 1366 | systems where two kinds of wheel events can be received. | ||
| 1365 | 1367 | ||
| 1366 | ** Internationalization changes | 1368 | ** Internationalization |
| 1367 | 1369 | ||
| 1368 | --- | 1370 | --- |
| 1369 | *** The <Delete> function key now allows deleting the entire composed sequence. | 1371 | *** The '<Delete>' function key now allows deleting the entire composed sequence. |
| 1370 | For the details, see the item about the 'delete-forward-char' command | 1372 | For the details, see the item about the 'delete-forward-char' command |
| 1371 | above. | 1373 | above. |
| 1372 | 1374 | ||
| @@ -1471,7 +1473,7 @@ change the input method's translation rules, customize the user option | |||
| 1471 | 'tamil-translation-rules'. | 1473 | 'tamil-translation-rules'. |
| 1472 | 1474 | ||
| 1473 | --- | 1475 | --- |
| 1474 | *** New tamil99 input method for the Tamil language. | 1476 | *** New 'tamil99' input method for the Tamil language. |
| 1475 | This supports the keyboard layout specifically designed for the Tamil | 1477 | This supports the keyboard layout specifically designed for the Tamil |
| 1476 | language. | 1478 | language. |
| 1477 | 1479 | ||
| @@ -1505,7 +1507,7 @@ If non-nil and there's only one matching option, auto-select that. | |||
| 1505 | If non-nil, this user option describes what entries not to add to the | 1507 | If non-nil, this user option describes what entries not to add to the |
| 1506 | database stored on disk. | 1508 | database stored on disk. |
| 1507 | 1509 | ||
| 1508 | ** Auth-Source | 1510 | ** Auth Source |
| 1509 | 1511 | ||
| 1510 | +++ | 1512 | +++ |
| 1511 | *** New user option 'auth-source-pass-extra-query-keywords'. | 1513 | *** New user option 'auth-source-pass-extra-query-keywords'. |
| @@ -1537,7 +1539,7 @@ The corresponding key 'Y' is now bound by default in Dired. | |||
| 1537 | 1539 | ||
| 1538 | +++ | 1540 | +++ |
| 1539 | *** 'dired-do-relsymlink-regexp' moved from dired-x to dired. | 1541 | *** 'dired-do-relsymlink-regexp' moved from dired-x to dired. |
| 1540 | The corresponding key '% Y' is now bound by default in Dired. | 1542 | The corresponding key sequence '% Y' is now bound by default in Dired. |
| 1541 | 1543 | ||
| 1542 | --- | 1544 | --- |
| 1543 | *** 'M-G' is now bound to 'dired-goto-subdir'. | 1545 | *** 'M-G' is now bound to 'dired-goto-subdir'. |
| @@ -1583,7 +1585,7 @@ Dired will now, by default, include the free space in the first line | |||
| 1583 | instead of having it on a separate line. To get the previous behavior | 1585 | instead of having it on a separate line. To get the previous behavior |
| 1584 | back, say: | 1586 | back, say: |
| 1585 | 1587 | ||
| 1586 | (setq dired-free-space 'separate) | 1588 | (setopt dired-free-space 'separate) |
| 1587 | 1589 | ||
| 1588 | --- | 1590 | --- |
| 1589 | *** New user option 'dired-make-directory-clickable'. | 1591 | *** New user option 'dired-make-directory-clickable'. |
| @@ -1676,7 +1678,7 @@ this invocation as its default. | |||
| 1676 | This is bound to 'H' and toggles whether to hide or show the widget | 1678 | This is bound to 'H' and toggles whether to hide or show the widget |
| 1677 | contents. | 1679 | contents. |
| 1678 | 1680 | ||
| 1679 | ** Diff mode | 1681 | ** Diff Mode |
| 1680 | 1682 | ||
| 1681 | --- | 1683 | --- |
| 1682 | *** New user option 'diff-whitespace-style'. | 1684 | *** New user option 'diff-whitespace-style'. |
| @@ -1826,7 +1828,7 @@ only jump if the location of the first error is known), and | |||
| 1826 | 1828 | ||
| 1827 | +++ | 1829 | +++ |
| 1828 | *** New user option 'compilation-max-output-line-length'. | 1830 | *** New user option 'compilation-max-output-line-length'. |
| 1829 | Lines longer than the value of this variable will have their ends | 1831 | Lines longer than the value of this option will have their ends |
| 1830 | hidden, with a button to reveal the hidden text. This speeds up | 1832 | hidden, with a button to reveal the hidden text. This speeds up |
| 1831 | operations like grepping on files that have few newlines. The default | 1833 | operations like grepping on files that have few newlines. The default |
| 1832 | value is 400; set to nil to disable hiding. | 1834 | value is 400; set to nil to disable hiding. |
| @@ -1858,10 +1860,10 @@ uses the 'key-parse' syntax. It replaces the old 'kmacro-lambda-form' | |||
| 1858 | 1860 | ||
| 1859 | --- | 1861 | --- |
| 1860 | ** savehist.el can now truncate variables that are too long. | 1862 | ** savehist.el can now truncate variables that are too long. |
| 1861 | An element of 'savehist-additional-variables' can now be of the form | 1863 | An element of user option 'savehist-additional-variables' can now be |
| 1862 | '(VARIABLE . MAX-ELTS)', which means to truncate the VARIABLE's value to | 1864 | of the form '(VARIABLE . MAX-ELTS)', which means to truncate the |
| 1863 | at most MAX-ELTS elements (if the value is a list) before saving the | 1865 | VARIABLE's value to at most MAX-ELTS elements (if the value is a list) |
| 1864 | value. | 1866 | before saving the value. |
| 1865 | 1867 | ||
| 1866 | ** Minibuffer and Completions | 1868 | ** Minibuffer and Completions |
| 1867 | 1869 | ||
| @@ -1978,7 +1980,7 @@ command accepts the Unicode name of an Emoji (for example, "smiling | |||
| 1978 | face" or "heart with arrow"), like 'C-x 8 e e', with minibuffer | 1980 | face" or "heart with arrow"), like 'C-x 8 e e', with minibuffer |
| 1979 | completion, and adds the Emoji into the search string. | 1981 | completion, and adds the Emoji into the search string. |
| 1980 | 1982 | ||
| 1981 | ** Glyphless characters | 1983 | ** Glyphless Characters |
| 1982 | 1984 | ||
| 1983 | +++ | 1985 | +++ |
| 1984 | *** New minor mode 'glyphless-display-mode'. | 1986 | *** New minor mode 'glyphless-display-mode'. |
| @@ -1995,7 +1997,7 @@ and GUI terminals. | |||
| 1995 | *** "Replacement character" feature for undisplayable characters on TTYs. | 1997 | *** "Replacement character" feature for undisplayable characters on TTYs. |
| 1996 | The 'acronym' method of displaying glyphless characters on text-mode | 1998 | The 'acronym' method of displaying glyphless characters on text-mode |
| 1997 | frames treats single-character acronyms specially: they are displayed | 1999 | frames treats single-character acronyms specially: they are displayed |
| 1998 | without the surrounding [..] "box", thus in effect treating such | 2000 | without the surrounding '[..]' "box", thus in effect treating such |
| 1999 | "acronyms" as replacement characters. | 2001 | "acronyms" as replacement characters. |
| 2000 | 2002 | ||
| 2001 | ** Registers | 2003 | ** Registers |
| @@ -2007,7 +2009,7 @@ For instance, to enable jumping to the "*Messages*" buffer with | |||
| 2007 | 2009 | ||
| 2008 | (set-register ?m '(buffer . "*Messages*")) | 2010 | (set-register ?m '(buffer . "*Messages*")) |
| 2009 | 2011 | ||
| 2010 | ** Pixel-fill | 2012 | ** Pixel Fill |
| 2011 | 2013 | ||
| 2012 | +++ | 2014 | +++ |
| 2013 | *** This is a new package that deals with filling variable-pitch text. | 2015 | *** This is a new package that deals with filling variable-pitch text. |
| @@ -2019,11 +2021,11 @@ This fills the region to be no wider than a specified pixel width. | |||
| 2019 | ** Info | 2021 | ** Info |
| 2020 | 2022 | ||
| 2021 | +++ | 2023 | +++ |
| 2022 | *** 'M-x info-apropos' now takes a prefix argument to search for regexps. | 2024 | *** Command 'info-apropos' now takes a prefix argument to search for regexps. |
| 2023 | 2025 | ||
| 2024 | --- | 2026 | --- |
| 2025 | *** New command 'Info-goto-node-web' and key binding 'G'. | 2027 | *** New command 'Info-goto-node-web' and key binding 'G'. |
| 2026 | This will take you to the gnu.org web server's version of the current | 2028 | This will take you to the "gnu.org" web server's version of the current |
| 2027 | info node. This command only works for the Emacs and Emacs Lisp manuals. | 2029 | info node. This command only works for the Emacs and Emacs Lisp manuals. |
| 2028 | 2030 | ||
| 2029 | ** Shortdoc | 2031 | ** Shortdoc |
| @@ -2164,9 +2166,9 @@ main Emacs initialization file ("~/.emacs" or "~/.emacs.d/init.el"). | |||
| 2164 | 2166 | ||
| 2165 | +++ | 2167 | +++ |
| 2166 | *** 'eudc-expansion-overwrites-query' to 'eudc-expansion-save-query-as-kill'. | 2168 | *** 'eudc-expansion-overwrites-query' to 'eudc-expansion-save-query-as-kill'. |
| 2167 | 'eudc-expansion-overwrites-query' is renamed to | 2169 | The user option 'eudc-expansion-overwrites-query' is renamed to |
| 2168 | 'eudc-expansion-save-query-as-kill' to reflect the actual behavior of | 2170 | 'eudc-expansion-save-query-as-kill' to reflect the actual behavior of |
| 2169 | the user option. | 2171 | the user option. The former is kept as alias. |
| 2170 | 2172 | ||
| 2171 | +++ | 2173 | +++ |
| 2172 | *** New command 'eudc-expand-try-all'. | 2174 | *** New command 'eudc-expand-try-all'. |
| @@ -2180,7 +2182,7 @@ for a name that happens to match a contact in one's BBDB. | |||
| 2180 | *** New behavior and default for user option 'eudc-inline-expansion-format'. | 2182 | *** New behavior and default for user option 'eudc-inline-expansion-format'. |
| 2181 | EUDC inline expansion result formatting defaulted to | 2183 | EUDC inline expansion result formatting defaulted to |
| 2182 | 2184 | ||
| 2183 | '("%s %s <%s>" firstname name email) | 2185 | ("%s %s <%s>" firstname name email) |
| 2184 | 2186 | ||
| 2185 | Since email address specifications need to comply with RFC 5322 in | 2187 | Since email address specifications need to comply with RFC 5322 in |
| 2186 | order to be useful in messages, there was a risk to produce syntax | 2188 | order to be useful in messages, there was a risk to produce syntax |
| @@ -2227,8 +2229,9 @@ are supported only. | |||
| 2227 | The 'eww-auto-rename-buffer' user option can be configured to rename | 2229 | The 'eww-auto-rename-buffer' user option can be configured to rename |
| 2228 | rendered web pages by using their title, URL, or a user-defined | 2230 | rendered web pages by using their title, URL, or a user-defined |
| 2229 | function which returns a string. For the first two cases, the length | 2231 | function which returns a string. For the first two cases, the length |
| 2230 | of the resulting name is controlled by 'eww-buffer-name-length'. By | 2232 | of the resulting name is controlled by the user option |
| 2231 | default, no automatic renaming is performed. | 2233 | 'eww-buffer-name-length'. By default, no automatic renaming is |
| 2234 | performed. | ||
| 2232 | 2235 | ||
| 2233 | +++ | 2236 | +++ |
| 2234 | *** New user option 'shr-allowed-images'. | 2237 | *** New user option 'shr-allowed-images'. |
| @@ -2247,7 +2250,7 @@ doesn't work on other systems. Also see etc/PROBLEMS. | |||
| 2247 | These are used to alter an URL before using it. By default it removes | 2250 | These are used to alter an URL before using it. By default it removes |
| 2248 | the common "utm_" trackers from URLs. | 2251 | the common "utm_" trackers from URLs. |
| 2249 | 2252 | ||
| 2250 | ** Find-Dired | 2253 | ** Find Dired |
| 2251 | 2254 | ||
| 2252 | --- | 2255 | --- |
| 2253 | *** New command 'find-dired-with-command'. | 2256 | *** New command 'find-dired-with-command'. |
| @@ -2264,14 +2267,14 @@ Message, referred to as 'gnus-summary-tool-bar-retro', | |||
| 2264 | 'gnus-group-tool-bar-retro' and 'message-tool-bar-retro', and | 2267 | 'gnus-group-tool-bar-retro' and 'message-tool-bar-retro', and |
| 2265 | 'gnus-summary-tool-bar-gnome', 'gnus-group-tool-bar-gnome' and | 2268 | 'gnus-summary-tool-bar-gnome', 'gnus-group-tool-bar-gnome' and |
| 2266 | 'message-tool-bar-gnome'. The "retro" tool bars have been removed (as | 2269 | 'message-tool-bar-gnome'. The "retro" tool bars have been removed (as |
| 2267 | well as the icons used), and the "Gnome" tool bars are now the only | 2270 | well as the icons used), and the "gnome" tool bars are now the only |
| 2268 | pre-defined toolbars. | 2271 | pre-defined toolbars. |
| 2269 | 2272 | ||
| 2270 | --- | 2273 | --- |
| 2271 | *** 'gnus-summary-up-thread' and 'gnus-summary-down-thread' bindings removed. | 2274 | *** 'gnus-summary-up-thread' and 'gnus-summary-down-thread' bindings removed. |
| 2272 | The 'gnus-summary-down-thread' binding to "M-C-d" was shadowed by | 2275 | The 'gnus-summary-down-thread' binding to 'M-C-d' was shadowed by |
| 2273 | 'gnus-summary-read-document', and these commands are also available on | 2276 | 'gnus-summary-read-document', and these commands are also available on |
| 2274 | "T-u" and "T-d" respectively. | 2277 | 'T u' and 'T d' respectively. |
| 2275 | 2278 | ||
| 2276 | --- | 2279 | --- |
| 2277 | *** Gnus now uses a variable-pitch font in the headers by default. | 2280 | *** Gnus now uses a variable-pitch font in the headers by default. |
| @@ -2355,7 +2358,7 @@ displayed in the "*Help*" buffer will be linked to the documentation | |||
| 2355 | for the command they are bound to. This does not affect listings of | 2358 | for the command they are bound to. This does not affect listings of |
| 2356 | key bindings and functions (such as 'C-h b'). | 2359 | key bindings and functions (such as 'C-h b'). |
| 2357 | 2360 | ||
| 2358 | ** Info-look | 2361 | ** Info Look |
| 2359 | 2362 | ||
| 2360 | --- | 2363 | --- |
| 2361 | *** info-look specs can now be expanded at run time instead of a load time. | 2364 | *** info-look specs can now be expanded at run time instead of a load time. |
| @@ -2363,14 +2366,14 @@ The new ':doc-spec-function' element can be used to compute the | |||
| 2363 | ':doc-spec' element when the user asks for info on that particular | 2366 | ':doc-spec' element when the user asks for info on that particular |
| 2364 | mode (instead of at load time). | 2367 | mode (instead of at load time). |
| 2365 | 2368 | ||
| 2366 | ** Ansi-color | 2369 | ** Ansi Color |
| 2367 | 2370 | ||
| 2368 | --- | 2371 | --- |
| 2369 | *** Support for ANSI 256-color and 24-bit colors. | 2372 | *** Support for ANSI 256-color and 24-bit colors. |
| 2370 | 256-color and 24-bit color codes are now handled by ANSI color | 2373 | 256-color and 24-bit color codes are now handled by ANSI color |
| 2371 | filters and displayed with the specified color. | 2374 | filters and displayed with the specified color. |
| 2372 | 2375 | ||
| 2373 | ** Term-mode | 2376 | ** Term Mode |
| 2374 | 2377 | ||
| 2375 | --- | 2378 | --- |
| 2376 | *** New user option 'term-bind-function-keys'. | 2379 | *** New user option 'term-bind-function-keys'. |
| @@ -2434,7 +2437,7 @@ matches. | |||
| 2434 | --- | 2437 | --- |
| 2435 | *** New function 'xref-show-xrefs'. | 2438 | *** New function 'xref-show-xrefs'. |
| 2436 | 2439 | ||
| 2437 | ** File notifications | 2440 | ** File Notifications |
| 2438 | 2441 | ||
| 2439 | +++ | 2442 | +++ |
| 2440 | *** The new command 'file-notify-rm-all-watches' removes all file notifications. | 2443 | *** The new command 'file-notify-rm-all-watches' removes all file notifications. |
| @@ -2505,7 +2508,7 @@ The old name was confusing, and is now an obsolete function alias. | |||
| 2505 | *** Users can now add special image conversion functions. | 2508 | *** Users can now add special image conversion functions. |
| 2506 | This is done via 'image-converter-add-handler'. | 2509 | This is done via 'image-converter-add-handler'. |
| 2507 | 2510 | ||
| 2508 | ** Image-Dired | 2511 | ** Image Dired |
| 2509 | 2512 | ||
| 2510 | +++ | 2513 | +++ |
| 2511 | *** 'image-dired-image-mode' is now based on 'image-mode'. | 2514 | *** 'image-dired-image-mode' is now based on 'image-mode'. |
| @@ -2606,9 +2609,9 @@ programs. Version 0.9.0 adds two larger thumbnail sizes: 512x512 and | |||
| 2606 | to use it; it is not enabled by default. | 2609 | to use it; it is not enabled by default. |
| 2607 | 2610 | ||
| 2608 | --- | 2611 | --- |
| 2609 | *** Reduce dependency on external "exiftool" command. | 2612 | *** Reduce dependency on external "exiftool" program. |
| 2610 | The 'image-dired-copy-with-exif-file-name' no longer requires an | 2613 | The 'image-dired-copy-with-exif-file-name' command no longer requires |
| 2611 | external "exiftool" command to be available. The user options | 2614 | an external "exiftool" program to be available. The user options |
| 2612 | 'image-dired-cmd-read-exif-data-program' and | 2615 | 'image-dired-cmd-read-exif-data-program' and |
| 2613 | 'image-dired-cmd-read-exif-data-options' are now obsolete. | 2616 | 'image-dired-cmd-read-exif-data-options' are now obsolete. |
| 2614 | 2617 | ||
| @@ -2712,7 +2715,7 @@ fringe (or nil to disable showing this marker). | |||
| 2712 | This is a convenience function to extract the field data from | 2715 | This is a convenience function to extract the field data from |
| 2713 | 'exif-parse-file' and 'exif-parse-buffer'. | 2716 | 'exif-parse-file' and 'exif-parse-buffer'. |
| 2714 | 2717 | ||
| 2715 | ** Xwidgets | 2718 | ** Xwidget |
| 2716 | 2719 | ||
| 2717 | --- | 2720 | --- |
| 2718 | *** New user option 'xwidget-webkit-buffer-name-format'. | 2721 | *** New user option 'xwidget-webkit-buffer-name-format'. |
| @@ -2755,7 +2758,7 @@ and friends. | |||
| 2755 | 2758 | ||
| 2756 | +++ | 2759 | +++ |
| 2757 | *** New connection methods "docker", "podman" and "kubernetes". | 2760 | *** New connection methods "docker", "podman" and "kubernetes". |
| 2758 | They allow accessing environments provided by Docker and similar | 2761 | They allow accessing containers provided by Docker and similar |
| 2759 | programs. | 2762 | programs. |
| 2760 | 2763 | ||
| 2761 | --- | 2764 | --- |
| @@ -2853,7 +2856,7 @@ will cause the whole command to be passed to the operating system | |||
| 2853 | shell. This is particularly useful to bypass Eshell's own pipelining | 2856 | shell. This is particularly useful to bypass Eshell's own pipelining |
| 2854 | support for pipelines which will move a lot of data. See section | 2857 | support for pipelines which will move a lot of data. See section |
| 2855 | "Running Shell Pipelines Natively" in the Eshell manual, node | 2858 | "Running Shell Pipelines Natively" in the Eshell manual, node |
| 2856 | "(eshell) Input/Output". | 2859 | "(eshell) Pipelines". |
| 2857 | 2860 | ||
| 2858 | +++ | 2861 | +++ |
| 2859 | *** New module to help supplying absolute file names to remote commands. | 2862 | *** New module to help supplying absolute file names to remote commands. |
| @@ -2908,8 +2911,8 @@ values passed as a single token, such as '-oVALUE' or | |||
| 2908 | commands" in the "(eshell) Built-ins" node of the Eshell manual. | 2911 | commands" in the "(eshell) Built-ins" node of the Eshell manual. |
| 2909 | 2912 | ||
| 2910 | --- | 2913 | --- |
| 2911 | *** Eshell globs ending with '/' now match only directories. | 2914 | *** Eshell globs ending with "/" now match only directories. |
| 2912 | Additionally, globs ending with '**/' or '***/' no longer raise an | 2915 | Additionally, globs ending with "**/" or "***/" no longer raise an |
| 2913 | error, and now expand to all directories recursively (following | 2916 | error, and now expand to all directories recursively (following |
| 2914 | symlinks in the latter case). | 2917 | symlinks in the latter case). |
| 2915 | 2918 | ||
| @@ -3052,7 +3055,7 @@ The old name is still available as an obsolete function alias. | |||
| 3052 | *** The url-irc library now understands "ircs://" links. | 3055 | *** The url-irc library now understands "ircs://" links. |
| 3053 | 3056 | ||
| 3054 | --- | 3057 | --- |
| 3055 | *** New command 'world-clock-copy-time-as-kill' for 'M-x world-clock'. | 3058 | *** New command 'world-clock-copy-time-as-kill' for 'world-clock-mode'. |
| 3056 | It copies the current line into the kill ring. | 3059 | It copies the current line into the kill ring. |
| 3057 | 3060 | ||
| 3058 | --- | 3061 | --- |
| @@ -3061,17 +3064,17 @@ The new face 'abbrev-table-name' is used to display the abbrev table | |||
| 3061 | name. | 3064 | name. |
| 3062 | 3065 | ||
| 3063 | --- | 3066 | --- |
| 3064 | *** New key binding 'O' in 'M-x list-buffers'. | 3067 | *** New key binding 'O' in "*Buffer List*". |
| 3065 | This key is now bound to 'Buffer-menu-view-other-window', which will | 3068 | This key is now bound to 'Buffer-menu-view-other-window', which will |
| 3066 | view this line's buffer in View mode in another window. | 3069 | view this line's buffer in View mode in another window. |
| 3067 | 3070 | ||
| 3068 | ** Scheme mode | 3071 | ** Scheme Mode |
| 3069 | 3072 | ||
| 3070 | --- | 3073 | --- |
| 3071 | *** Auto-detection of Scheme library files. | 3074 | *** Auto-detection of Scheme library files. |
| 3072 | Emacs now automatically enables the Scheme mode when opening R6RS | 3075 | Emacs now automatically enables the Scheme mode when opening R6RS |
| 3073 | Scheme Library Source ('.sls') files and R7RS Scheme Library | 3076 | Scheme Library Source (".sls") files and R7RS Scheme Library |
| 3074 | Definition ('.sld') files. | 3077 | Definition (".sld") files. |
| 3075 | 3078 | ||
| 3076 | --- | 3079 | --- |
| 3077 | *** Imenu members for R6RS and R7RS library members. | 3080 | *** Imenu members for R6RS and R7RS library members. |
| @@ -3086,10 +3089,10 @@ Imenu now lists the members directly nested in R6RS Scheme libraries | |||
| 3086 | Emacs now comes with the Eglot package, which enhances various Emacs | 3089 | Emacs now comes with the Eglot package, which enhances various Emacs |
| 3087 | features, such as completion, documentation, error detection, etc., | 3090 | features, such as completion, documentation, error detection, etc., |
| 3088 | based on data provided by language servers using the Language Server | 3091 | based on data provided by language servers using the Language Server |
| 3089 | Protocol (LSP). | 3092 | Protocol (LSP). See the new Info manual "(eglot) Top" for more. |
| 3090 | 3093 | ||
| 3091 | +++ | 3094 | +++ |
| 3092 | *** use-package: Declarative package configuration. | 3095 | ** use-package: Declarative package configuration. |
| 3093 | use-package is now shipped with Emacs. It provides the 'use-package' | 3096 | use-package is now shipped with Emacs. It provides the 'use-package' |
| 3094 | macro, which allows you to isolate package configuration in your init | 3097 | macro, which allows you to isolate package configuration in your init |
| 3095 | file in a way that is declarative, tidy, and performance-oriented. | 3098 | file in a way that is declarative, tidy, and performance-oriented. |
| @@ -3164,7 +3167,7 @@ such files, and will display a warning if the tree-sitter library or | |||
| 3164 | the parser grammar library is not available. To prevent the warnings, | 3167 | the parser grammar library is not available. To prevent the warnings, |
| 3165 | either build Emacs with tree-sitter and install the grammar libraries, | 3168 | either build Emacs with tree-sitter and install the grammar libraries, |
| 3166 | or customize 'auto-mode-alist' to specify some other major mode (or | 3169 | or customize 'auto-mode-alist' to specify some other major mode (or |
| 3167 | even Fundamental mode) for those kinds of files. | 3170 | even 'fundamental-mode') for those kinds of files. |
| 3168 | 3171 | ||
| 3169 | Each major mode based on tree-sitter needs a language grammar library, | 3172 | Each major mode based on tree-sitter needs a language grammar library, |
| 3170 | usually named "libtree-sitter-LANG.so" ("libtree-sitter-LANG.dll" on | 3173 | usually named "libtree-sitter-LANG.so" ("libtree-sitter-LANG.dll" on |
| @@ -3251,9 +3254,8 @@ extension is ".cmake". | |||
| 3251 | 3254 | ||
| 3252 | +++ | 3255 | +++ |
| 3253 | *** New major mode 'toml-ts-mode'. | 3256 | *** New major mode 'toml-ts-mode'. |
| 3254 | A major mode based on the tree-sitter library for editing files | 3257 | An optional major mode based on the tree-sitter library for editing |
| 3255 | written in TOML, a format for writing configuration files. It is | 3258 | files written in TOML, a format for writing configuration files. |
| 3256 | auto-enabled for files with the ".toml" extension. | ||
| 3257 | 3259 | ||
| 3258 | +++ | 3260 | +++ |
| 3259 | *** New major mode 'go-ts-mode'. | 3261 | *** New major mode 'go-ts-mode'. |
| @@ -3332,13 +3334,13 @@ auto-scaling applied. (This only makes a difference on HiDPI | |||
| 3332 | displays.) | 3334 | displays.) |
| 3333 | 3335 | ||
| 3334 | +++ | 3336 | +++ |
| 3335 | ** Changes in how "raw" in-memory xbm images are specified. | 3337 | ** Changes in how "raw" in-memory XBM images are specified. |
| 3336 | Some years back Emacs gained the ability to scale images, and you | 3338 | Some years back Emacs gained the ability to scale images, and you |
| 3337 | could then specify ':width' and ':height' when using 'create-image' on all | 3339 | could then specify ':width' and ':height' when using 'create-image' on all |
| 3338 | image types -- except xbm images, because this format already used the | 3340 | image types -- except XBM images, because this format already used the |
| 3339 | ':width' and ':height' arguments to specify the width/height of the "raw" | 3341 | ':width' and ':height' arguments to specify the width/height of the "raw" |
| 3340 | in-memory format. This meant that if you used these specifications | 3342 | in-memory format. This meant that if you used these specifications |
| 3341 | on, for instance, xbm files, Emacs would refuse to display them. This | 3343 | on, for instance, XBM files, Emacs would refuse to display them. This |
| 3342 | has been changed, and ':width'/':height' now works as with all other image | 3344 | has been changed, and ':width'/':height' now works as with all other image |
| 3343 | formats, and the way to specify the width/height of the "raw" | 3345 | formats, and the way to specify the width/height of the "raw" |
| 3344 | in-memory format is now by using ':data-width' and ':data-height'. | 3346 | in-memory format is now by using ':data-width' and ':data-height'. |
| @@ -3349,7 +3351,7 @@ The various "loaddefs.el" files in the Emacs tree (which contain | |||
| 3349 | information about autoloads, built-in packages and package prefixes) | 3351 | information about autoloads, built-in packages and package prefixes) |
| 3350 | used to be generated by functions in autoloads.el. These are now | 3352 | used to be generated by functions in autoloads.el. These are now |
| 3351 | generated by loaddefs-gen.el instead. This leads to functionally | 3353 | generated by loaddefs-gen.el instead. This leads to functionally |
| 3352 | equivalent "loaddef.el" files, but they do not use exactly the same | 3354 | equivalent "loaddefs.el" files, but they do not use exactly the same |
| 3353 | syntax, so using 'M-x update-file-autoloads' no longer works. (This | 3355 | syntax, so using 'M-x update-file-autoloads' no longer works. (This |
| 3354 | didn't work well in most files in the past, either, but it will now | 3356 | didn't work well in most files in the past, either, but it will now |
| 3355 | signal an error in any file.) | 3357 | signal an error in any file.) |
| @@ -3494,7 +3496,7 @@ This change is now applied in 'dired-insert-directory'. | |||
| 3494 | 3496 | ||
| 3495 | --- | 3497 | --- |
| 3496 | ** 'compilation-last-buffer' is (finally) declared obsolete. | 3498 | ** 'compilation-last-buffer' is (finally) declared obsolete. |
| 3497 | It's been obsolete since Emacs-22.1, actually. | 3499 | It has been obsolete since Emacs 22.1, actually. |
| 3498 | 3500 | ||
| 3499 | --- | 3501 | --- |
| 3500 | ** Calling 'lsh' now elicits a byte-compiler warning. | 3502 | ** Calling 'lsh' now elicits a byte-compiler warning. |
| @@ -3524,9 +3526,9 @@ but switching to 'ash' is generally much preferable. | |||
| 3524 | 'command-history-map', 'compilation-parse-errors-function', | 3526 | 'command-history-map', 'compilation-parse-errors-function', |
| 3525 | 'completion-annotate-function', 'condition-case-no-debug', | 3527 | 'completion-annotate-function', 'condition-case-no-debug', |
| 3526 | 'count-lines-region', 'crisp-mode-modeline-string', | 3528 | 'count-lines-region', 'crisp-mode-modeline-string', |
| 3527 | 'custom-print-functions', 'custom-print-functions', | 3529 | 'custom-print-functions', 'cvs-string-prefix-p', 'data-debug-map', |
| 3528 | 'cvs-string-prefix-p', 'data-debug-map', 'deferred-action-function', | 3530 | 'deferred-action-function', 'deferred-action-list', |
| 3529 | 'deferred-action-list', 'dired-pop-to-buffer', 'dired-shrink-to-fit', | 3531 | 'dired-pop-to-buffer', 'dired-shrink-to-fit', |
| 3530 | 'dired-sort-set-modeline', 'dired-x-submit-report', | 3532 | 'dired-sort-set-modeline', 'dired-x-submit-report', |
| 3531 | 'display-buffer-function', | 3533 | 'display-buffer-function', |
| 3532 | 'ediff-choose-window-setup-function-automatically', | 3534 | 'ediff-choose-window-setup-function-automatically', |
| @@ -3548,11 +3550,10 @@ but switching to 'ash' is generally much preferable. | |||
| 3548 | 'inhibit-first-line-modes-suffixes', 'input-method-inactivate-hook', | 3550 | 'inhibit-first-line-modes-suffixes', 'input-method-inactivate-hook', |
| 3549 | 'intdos', 'javascript-generic-mode', 'javascript-generic-mode-hook', | 3551 | 'intdos', 'javascript-generic-mode', 'javascript-generic-mode-hook', |
| 3550 | 'latex-string-prefix-p', 'macro-declaration-function' (function), | 3552 | 'latex-string-prefix-p', 'macro-declaration-function' (function), |
| 3551 | 'macro-declaration-function' (variable), 'mail-complete-function', | 3553 | 'macro-declaration-function' (variable), 'mail-complete', |
| 3552 | 'mail-completion-at-point-function', | 3554 | 'mail-complete-function', 'mail-mailer-swallows-blank-line', |
| 3553 | 'mail-mailer-swallows-blank-line', 'mail-sent-via', 'make-register', | 3555 | 'mail-sent-via', 'make-register', 'makefile-complete', |
| 3554 | 'makefile-complete', 'menu-bar-kill-ring-save', | 3556 | 'menu-bar-kill-ring-save', 'meta-complete-symbol', 'meta-mode-map', |
| 3555 | 'meta-complete-symbol', 'meta-mode-map', | ||
| 3556 | 'mh-kill-folder-suppress-prompt-hooks', | 3557 | 'mh-kill-folder-suppress-prompt-hooks', |
| 3557 | 'minibuffer-completing-symbol', | 3558 | 'minibuffer-completing-symbol', |
| 3558 | 'minibuffer-local-filename-must-match-map', 'mode25', 'mode4350', | 3559 | 'minibuffer-local-filename-must-match-map', 'mode25', 'mode4350', |
| @@ -3723,7 +3724,7 @@ This can be used to specify what forms to put into 'command-history' | |||
| 3723 | when executing commands interactively. | 3724 | when executing commands interactively. |
| 3724 | 3725 | ||
| 3725 | +++ | 3726 | +++ |
| 3726 | ** The FORM arg of 'time-convert' is mandatory. | 3727 | ** The FORM argument of 'time-convert' is mandatory. |
| 3727 | 'time-convert' can still be called without it, as before, but the | 3728 | 'time-convert' can still be called without it, as before, but the |
| 3728 | compiler now emits a warning about this deprecated usage. | 3729 | compiler now emits a warning about this deprecated usage. |
| 3729 | 3730 | ||
| @@ -3740,7 +3741,7 @@ TIMEOUT is the idle time after which to deactivate the transient map. | |||
| 3740 | The default timeout value can be defined by the new variable | 3741 | The default timeout value can be defined by the new variable |
| 3741 | 'set-transient-map-timeout'. | 3742 | 'set-transient-map-timeout'. |
| 3742 | 3743 | ||
| 3743 | ** Connection-local variables | 3744 | ** Connection Local Variables |
| 3744 | 3745 | ||
| 3745 | +++ | 3746 | +++ |
| 3746 | *** Some connection-local variables are now user options. | 3747 | *** Some connection-local variables are now user options. |
| @@ -3769,7 +3770,7 @@ Reference manual for more information. | |||
| 3769 | 3770 | ||
| 3770 | +++ | 3771 | +++ |
| 3771 | ** 'plist-get', 'plist-put' and 'plist-member' are no longer limited to 'eq'. | 3772 | ** 'plist-get', 'plist-put' and 'plist-member' are no longer limited to 'eq'. |
| 3772 | These function now take an optional comparison predicate argument. | 3773 | These function now take an optional comparison PREDICATE argument. |
| 3773 | 3774 | ||
| 3774 | +++ | 3775 | +++ |
| 3775 | ** 'read-multiple-choice' can now use long-form answers. | 3776 | ** 'read-multiple-choice' can now use long-form answers. |
| @@ -3829,7 +3830,7 @@ When called with a new optional argument UNICODE non-nil, 'max-char' | |||
| 3829 | will now report the maximum valid codepoint defined by the Unicode | 3830 | will now report the maximum valid codepoint defined by the Unicode |
| 3830 | Standard. | 3831 | Standard. |
| 3831 | 3832 | ||
| 3832 | ** seq | 3833 | ** Seq |
| 3833 | 3834 | ||
| 3834 | +++ | 3835 | +++ |
| 3835 | *** New function 'seq-split'. | 3836 | *** New function 'seq-split'. |
| @@ -3867,8 +3868,8 @@ It is called whenever the configuration of different monitors on a | |||
| 3867 | display changes. | 3868 | display changes. |
| 3868 | 3869 | ||
| 3869 | +++ | 3870 | +++ |
| 3870 | ** 'prin1' and 'prin1-to-string' now take an optional OVERRIDES parameter. | 3871 | ** 'prin1' and 'prin1-to-string' now take an optional OVERRIDES argument. |
| 3871 | This parameter can be used to override values of print-related settings. | 3872 | This argument can be used to override values of print-related settings. |
| 3872 | 3873 | ||
| 3873 | +++ | 3874 | +++ |
| 3874 | ** New minor mode 'header-line-indent-mode'. | 3875 | ** New minor mode 'header-line-indent-mode'. |
| @@ -3877,9 +3878,9 @@ be kept aligned with the buffer contents when the user switches | |||
| 3877 | 'display-line-numbers-mode' on or off. | 3878 | 'display-line-numbers-mode' on or off. |
| 3878 | 3879 | ||
| 3879 | +++ | 3880 | +++ |
| 3880 | ** New minor mode 'lost-selection-mode'. | 3881 | ** New global minor mode 'lost-selection-mode'. |
| 3881 | This minor mode makes Emacs deactivate the mark in all buffers when | 3882 | This global minor mode makes Emacs deactivate the mark in all buffers |
| 3882 | the primary selection is obtained by another program. | 3883 | when the primary selection is obtained by another program. |
| 3883 | 3884 | ||
| 3884 | --- | 3885 | --- |
| 3885 | ** On X, Emacs will try to preserve selection ownership when a frame is deleted. | 3886 | ** On X, Emacs will try to preserve selection ownership when a frame is deleted. |
| @@ -3894,7 +3895,7 @@ setting the user option 'x-auto-preserve-selections' to nil. | |||
| 3894 | ** New predicate 'char-uppercase-p'. | 3895 | ** New predicate 'char-uppercase-p'. |
| 3895 | This returns non-nil if its argument its an uppercase character. | 3896 | This returns non-nil if its argument its an uppercase character. |
| 3896 | 3897 | ||
| 3897 | ** Byte compilation | 3898 | ** Byte Compilation |
| 3898 | 3899 | ||
| 3899 | --- | 3900 | --- |
| 3900 | *** Byte compilation will now warn about some quoting mistakes in docstrings. | 3901 | *** Byte compilation will now warn about some quoting mistakes in docstrings. |
| @@ -3912,7 +3913,7 @@ should really be present in the docstring, they should be quoted with | |||
| 3912 | 3913 | ||
| 3913 | --- | 3914 | --- |
| 3914 | *** Byte compilation will now warn about some malformed 'defcustom' types. | 3915 | *** Byte compilation will now warn about some malformed 'defcustom' types. |
| 3915 | It's very common to write 'defcustom' types on the form: | 3916 | It is very common to write 'defcustom' types on the form: |
| 3916 | 3917 | ||
| 3917 | :type '(choice (const :tag "foo" 'bar)) | 3918 | :type '(choice (const :tag "foo" 'bar)) |
| 3918 | 3919 | ||
| @@ -3991,7 +3992,7 @@ batch-based Emacs scripts. | |||
| 3991 | This works like 'buttonize', but for a region instead of a string. | 3992 | This works like 'buttonize', but for a region instead of a string. |
| 3992 | 3993 | ||
| 3993 | +++ | 3994 | +++ |
| 3994 | ** 'macroexp-let2*' can omit TEST arg and use single-var bindings. | 3995 | ** 'macroexp-let2*' can omit TEST argument and use single-var bindings. |
| 3995 | 3996 | ||
| 3996 | +++ | 3997 | +++ |
| 3997 | ** New macro-writing macros, 'cl-with-gensyms' and 'cl-once-only'. | 3998 | ** New macro-writing macros, 'cl-with-gensyms' and 'cl-once-only'. |
| @@ -4004,7 +4005,7 @@ from which the last input event originated, and 'device-class' can be | |||
| 4004 | used to determine the type of an input device. | 4005 | used to determine the type of an input device. |
| 4005 | 4006 | ||
| 4006 | +++ | 4007 | +++ |
| 4007 | ** 'track-mouse' can have a new value 'drag-source'. | 4008 | ** Variable 'track-mouse' can have a new value 'drag-source'. |
| 4008 | This means the same as 'dropping', but modifies the mouse position | 4009 | This means the same as 'dropping', but modifies the mouse position |
| 4009 | list in reported motion events if there is no frame underneath the | 4010 | list in reported motion events if there is no frame underneath the |
| 4010 | mouse pointer. | 4011 | mouse pointer. |
| @@ -4052,7 +4053,7 @@ frequently than once in a second. | |||
| 4052 | 4053 | ||
| 4053 | --- | 4054 | --- |
| 4054 | ** New function 'bidi-string-strip-control-characters'. | 4055 | ** New function 'bidi-string-strip-control-characters'. |
| 4055 | This utility function is meant for displaying strings when it's | 4056 | This utility function is meant for displaying strings when it is |
| 4056 | essential that there's no bidirectional context. It removes all the | 4057 | essential that there's no bidirectional context. It removes all the |
| 4057 | bidirectional formatting control characters (such as RLM, LRO, PDF, | 4058 | bidirectional formatting control characters (such as RLM, LRO, PDF, |
| 4058 | etc.) from its argument string. The characters it removes are listed | 4059 | etc.) from its argument string. The characters it removes are listed |
| @@ -4110,21 +4111,21 @@ them towards or away from each other. | |||
| 4110 | 4111 | ||
| 4111 | +++ | 4112 | +++ |
| 4112 | ** New hook 'x-pre-popup-menu-hook'. | 4113 | ** New hook 'x-pre-popup-menu-hook'. |
| 4113 | This hook is run before 'x-popup-menu' is about to display a | 4114 | This hook, run before 'x-popup-menu', is about to display a |
| 4114 | deck-of-cards menu on screen. | 4115 | deck-of-cards menu on screen. |
| 4115 | 4116 | ||
| 4116 | --- | 4117 | --- |
| 4117 | ** New hook 'post-select-region-hook'. | 4118 | ** New hook 'post-select-region-hook'. |
| 4118 | This hook is run immediately after 'select-active-regions' causes the | 4119 | This hook is run immediately after 'select-active-regions'. It causes |
| 4119 | region to be set as the primary selection. | 4120 | the region to be set as the primary selection. |
| 4120 | 4121 | ||
| 4121 | +++ | 4122 | +++ |
| 4122 | ** New function 'buffer-match-p'. | 4123 | ** New function 'buffer-match-p'. |
| 4123 | Check if a buffer satisfies some condition. Some examples for | 4124 | Check if a buffer satisfies some condition. Some examples for |
| 4124 | conditions can be regular expressions that match a buffer name, a | 4125 | conditions can be regular expressions that match a buffer name, a |
| 4125 | cons-cell like '(major-mode . shell-mode)' that matches any buffer | 4126 | cons-cell like '(major-mode . shell-mode)' that matches any buffer |
| 4126 | where 'major-mode' is 'shell-mode' or a combined with a condition like | 4127 | where 'major-mode' is 'shell-mode' or a combination with a condition |
| 4127 | '(and "\\`\\*.+\\*\\'" (major-mode . special-mode))'. | 4128 | like '(and "\\`\\*.+\\*\\'" (major-mode . special-mode))'. |
| 4128 | 4129 | ||
| 4129 | +++ | 4130 | +++ |
| 4130 | ** New function 'match-buffers'. | 4131 | ** New function 'match-buffers'. |
| @@ -4132,19 +4133,19 @@ It uses 'buffer-match-p' to gather a list of buffers that match a | |||
| 4132 | condition. | 4133 | condition. |
| 4133 | 4134 | ||
| 4134 | --- | 4135 | --- |
| 4135 | ** New optional arguments 'text-face' and 'default-face' for 'tooltip-show'. | 4136 | ** New optional arguments TEXT-FACE and DEFAULT-FACE for 'tooltip-show'. |
| 4136 | They allow changing the faces used for the tooltip text and frame | 4137 | They allow changing the faces used for the tooltip text and frame |
| 4137 | colors of the resulting tooltip frame from the default 'tooltip' face. | 4138 | colors of the resulting tooltip frame from the default 'tooltip' face. |
| 4138 | 4139 | ||
| 4139 | ** Text security and suspiciousness | 4140 | ** Text Security and Suspiciousness |
| 4140 | 4141 | ||
| 4141 | +++ | 4142 | +++ |
| 4142 | *** New library textsec.el. | 4143 | *** New library textsec.el. |
| 4143 | This library contains a number of checks for whether a string is | 4144 | This library contains a number of checks for whether a string is |
| 4144 | "suspicious". This usually means that the string contains characters | 4145 | "suspicious". This usually means that the string contains characters |
| 4145 | that have glyphs that can be confused with other, more commonly used | 4146 | that have glyphs that can be confused with other, more commonly used |
| 4146 | glyphs, or contain bidirectional (or other) formatting characters that | 4147 | glyphs, or contains bidirectional (or other) formatting characters |
| 4147 | may be used to confuse a user. | 4148 | that may be used to confuse a user. |
| 4148 | 4149 | ||
| 4149 | +++ | 4150 | +++ |
| 4150 | *** New user option 'textsec-check'. | 4151 | *** New user option 'textsec-check'. |
| @@ -4162,7 +4163,7 @@ This is the main function Emacs applications should be using to check | |||
| 4162 | whether a string is suspicious. It heeds the 'textsec-check' user | 4163 | whether a string is suspicious. It heeds the 'textsec-check' user |
| 4163 | option. | 4164 | option. |
| 4164 | 4165 | ||
| 4165 | ** Keymaps and key definitions | 4166 | ** Keymaps and Key Definitions |
| 4166 | 4167 | ||
| 4167 | +++ | 4168 | +++ |
| 4168 | *** 'where-is-internal' can now filter events marked as non key events. | 4169 | *** 'where-is-internal' can now filter events marked as non key events. |
| @@ -4198,7 +4199,7 @@ de-emphasized in the documentation. | |||
| 4198 | *** Use 'keymap-set-after' instead of 'define-key-after'. | 4199 | *** Use 'keymap-set-after' instead of 'define-key-after'. |
| 4199 | 4200 | ||
| 4200 | +++ | 4201 | +++ |
| 4201 | *** Use 'keymap-lookup' instead of 'lookup-keymap' and 'key-binding'. | 4202 | *** Use 'keymap-lookup' instead of 'lookup-key' and 'key-binding'. |
| 4202 | 4203 | ||
| 4203 | +++ | 4204 | +++ |
| 4204 | *** Use 'keymap-local-lookup' instead of 'local-key-binding'. | 4205 | *** Use 'keymap-local-lookup' instead of 'local-key-binding'. |
| @@ -4286,9 +4287,9 @@ instance) when covering huge amounts of data (that has no meaningful | |||
| 4286 | searchable data, like image data) with a 'display' text property. | 4287 | searchable data, like image data) with a 'display' text property. |
| 4287 | 4288 | ||
| 4288 | +++ | 4289 | +++ |
| 4289 | ** 'insert-image' now takes an INHIBIT-ISEARCH optional parameter. | 4290 | ** 'insert-image' now takes an INHIBIT-ISEARCH optional argument. |
| 4290 | It marks the image with the 'inhibit-isearch' text property, which | 4291 | It marks the image with the 'inhibit-isearch' text property, which |
| 4291 | inhibits 'isearch' matching the STRING parameter. | 4292 | inhibits 'isearch' matching the STRING argument. |
| 4292 | 4293 | ||
| 4293 | --- | 4294 | --- |
| 4294 | ** New variable 'replace-regexp-function'. | 4295 | ** New variable 'replace-regexp-function'. |
| @@ -4356,7 +4357,7 @@ character width/height. | |||
| 4356 | This means the vscroll will not be reset when set on a window that is | 4357 | This means the vscroll will not be reset when set on a window that is |
| 4357 | "frozen" due to a mini-window being resized. | 4358 | "frozen" due to a mini-window being resized. |
| 4358 | 4359 | ||
| 4359 | ** XDG support | 4360 | ** XDG Support |
| 4360 | 4361 | ||
| 4361 | --- | 4362 | --- |
| 4362 | *** New function 'xdg-state-home'. | 4363 | *** New function 'xdg-state-home'. |
| @@ -4402,7 +4403,7 @@ This holds the value of the previous call to 'set-locale-environment'. | |||
| 4402 | This macro can be used to change the locale temporarily while | 4403 | This macro can be used to change the locale temporarily while |
| 4403 | executing code. | 4404 | executing code. |
| 4404 | 4405 | ||
| 4405 | ** table.el | 4406 | ** Table |
| 4406 | 4407 | ||
| 4407 | --- | 4408 | --- |
| 4408 | *** New user option 'table-latex-environment'. | 4409 | *** New user option 'table-latex-environment'. |
| @@ -4428,8 +4429,8 @@ local variables and removes overlays and text properties. | |||
| 4428 | 4429 | ||
| 4429 | +++ | 4430 | +++ |
| 4430 | ** 'kill-all-local-variables' can now kill all local variables. | 4431 | ** 'kill-all-local-variables' can now kill all local variables. |
| 4431 | If given the new optional KILL-PERMANENT argument, also kill permanent | 4432 | If given the new optional KILL-PERMANENT argument, it also kills |
| 4432 | local variables. | 4433 | permanent local variables. |
| 4433 | 4434 | ||
| 4434 | +++ | 4435 | +++ |
| 4435 | ** Third 'mapconcat' argument SEPARATOR is now optional. | 4436 | ** Third 'mapconcat' argument SEPARATOR is now optional. |
| @@ -4447,7 +4448,7 @@ This macro allows defining keymap variables more conveniently. | |||
| 4447 | Use ':repeat t' to have all bindings be repeatable or for more | 4448 | Use ':repeat t' to have all bindings be repeatable or for more |
| 4448 | advanced usage: | 4449 | advanced usage: |
| 4449 | 4450 | ||
| 4450 | ':repeat (:enter (commands ...) :exit (commands ...))' | 4451 | :repeat (:enter (commands ...) :exit (commands ...)) |
| 4451 | 4452 | ||
| 4452 | --- | 4453 | --- |
| 4453 | ** 'kbd' can now be used in built-in, preloaded libraries. | 4454 | ** 'kbd' can now be used in built-in, preloaded libraries. |
| @@ -4488,7 +4489,7 @@ an exact match, then the lowercased '[menu-bar foo\ bar]' and finally | |||
| 4488 | '[menu-bar foo-bar]'. This further improves backwards-compatibility | 4489 | '[menu-bar foo-bar]'. This further improves backwards-compatibility |
| 4489 | when converting menus to use 'easy-menu-define'. | 4490 | when converting menus to use 'easy-menu-define'. |
| 4490 | 4491 | ||
| 4491 | ** xwidgets | 4492 | ** Xwidget |
| 4492 | 4493 | ||
| 4493 | +++ | 4494 | +++ |
| 4494 | *** The function 'make-xwidget' now accepts an optional RELATED argument. | 4495 | *** The function 'make-xwidget' now accepts an optional RELATED argument. |
| @@ -4540,7 +4541,7 @@ commits to the load. | |||
| 4540 | 4541 | ||
| 4541 | +++ | 4542 | +++ |
| 4542 | *** New event type 'xwidget-display-event'. | 4543 | *** New event type 'xwidget-display-event'. |
| 4543 | These events are sent whenever an xwidget requests that Emacs display | 4544 | These events are sent whenever an xwidget requests that Emacs displays |
| 4544 | another xwidget. The only arguments to this event are the xwidget | 4545 | another xwidget. The only arguments to this event are the xwidget |
| 4545 | that should be displayed, and the xwidget that asked to display it. | 4546 | that should be displayed, and the xwidget that asked to display it. |
| 4546 | 4547 | ||
| @@ -4565,10 +4566,10 @@ temporary transition aid for Emacs 27, has served its purpose. | |||
| 4565 | '(encode-time (list SECOND MINUTE HOUR DAY MONTH YEAR nil -1 nil))'. | 4566 | '(encode-time (list SECOND MINUTE HOUR DAY MONTH YEAR nil -1 nil))'. |
| 4566 | 4567 | ||
| 4567 | +++ | 4568 | +++ |
| 4568 | ** 'date-to-time' now accepts arguments that lacks month, day, or time. | 4569 | ** 'date-to-time' now accepts arguments that lack month, day, or time. |
| 4569 | The function now assumes the earliest possible values if its argument | 4570 | The function now assumes the earliest possible values if its argument |
| 4570 | lacks month, day, or time. For example, (date-to-time "2021-12-04") | 4571 | lacks month, day, or time. For example, (date-to-time "2021-12-04") |
| 4571 | now assumes a time of 00:00 instead of signaling an error. | 4572 | now assumes a time of "00:00" instead of signaling an error. |
| 4572 | 4573 | ||
| 4573 | +++ | 4574 | +++ |
| 4574 | ** 'format-seconds' now allows suppressing zero-value trailing elements. | 4575 | ** 'format-seconds' now allows suppressing zero-value trailing elements. |
| @@ -4577,7 +4578,7 @@ elements that appear after "%x". | |||
| 4577 | 4578 | ||
| 4578 | +++ | 4579 | +++ |
| 4579 | ** New events for taking advantage of touchscreen devices. | 4580 | ** New events for taking advantage of touchscreen devices. |
| 4580 | The events 'touchscreen-begin, 'touchscreen-update', and | 4581 | The events 'touchscreen-begin', 'touchscreen-update', and |
| 4581 | 'touchscreen-end' have been added to take better advantage of | 4582 | 'touchscreen-end' have been added to take better advantage of |
| 4582 | touch-capable display panels. | 4583 | touch-capable display panels. |
| 4583 | 4584 | ||
| @@ -4611,7 +4612,7 @@ Use 'indian-tml-itrans-digits-v5-hash' if you want digits | |||
| 4611 | translation. | 4612 | translation. |
| 4612 | 4613 | ||
| 4613 | +++ | 4614 | +++ |
| 4614 | ** 'shell-quote-argument' has a new optional parameter POSIX. | 4615 | ** 'shell-quote-argument' has a new optional argument POSIX. |
| 4615 | This is useful when quoting shell arguments for a remote shell | 4616 | This is useful when quoting shell arguments for a remote shell |
| 4616 | invocation. Such shells are POSIX conformant by default. | 4617 | invocation. Such shells are POSIX conformant by default. |
| 4617 | 4618 | ||
| @@ -4728,7 +4729,7 @@ has built-in support for displaying BMP images. | |||
| 4728 | --- | 4729 | --- |
| 4729 | *** GUI Yes/No dialogs now include a "Cancel" button. | 4730 | *** GUI Yes/No dialogs now include a "Cancel" button. |
| 4730 | The "Cancel" button is in addition to "Yes" and "No", and is intended | 4731 | The "Cancel" button is in addition to "Yes" and "No", and is intended |
| 4731 | to allow users to quit the dialog, as an equivalent of C-g when Emacs | 4732 | to allow users to quit the dialog, as an equivalent of 'C-g' when Emacs |
| 4732 | asks a yes/no question via the echo area. This is controlled by the | 4733 | asks a yes/no question via the echo area. This is controlled by the |
| 4733 | new variable 'w32-yes-no-dialog-show-cancel', by default t. Set it to | 4734 | new variable 'w32-yes-no-dialog-show-cancel', by default t. Set it to |
| 4734 | nil to get back the old behavior of showing a modal dialog with only | 4735 | nil to get back the old behavior of showing a modal dialog with only |
diff --git a/lisp/cedet/semantic/symref/grep.el b/lisp/cedet/semantic/symref/grep.el index c698c2ef5a2..cebeac3adca 100644 --- a/lisp/cedet/semantic/symref/grep.el +++ b/lisp/cedet/semantic/symref/grep.el | |||
| @@ -44,7 +44,9 @@ those hits returned.") | |||
| 44 | 44 | ||
| 45 | (defvar semantic-symref-filepattern-alist | 45 | (defvar semantic-symref-filepattern-alist |
| 46 | '((c-mode "*.[ch]") | 46 | '((c-mode "*.[ch]") |
| 47 | (c-ts-mode "*.[ch]") | ||
| 47 | (c++-mode "*.[chCH]" "*.[ch]pp" "*.cc" "*.hh") | 48 | (c++-mode "*.[chCH]" "*.[ch]pp" "*.cc" "*.hh") |
| 49 | (c++-ts-mode "*.[chCH]" "*.[ch]pp" "*.cc" "*.hh") | ||
| 48 | (html-mode "*.html" "*.shtml" "*.php") | 50 | (html-mode "*.html" "*.shtml" "*.php") |
| 49 | (mhtml-mode "*.html" "*.shtml" "*.php") ; FIXME: remove | 51 | (mhtml-mode "*.html" "*.shtml" "*.php") ; FIXME: remove |
| 50 | ; duplication of | 52 | ; duplication of |
| @@ -53,7 +55,10 @@ those hits returned.") | |||
| 53 | ; major mode definition? | 55 | ; major mode definition? |
| 54 | (ruby-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml" | 56 | (ruby-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml" |
| 55 | "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile") | 57 | "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile") |
| 58 | (ruby-ts-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml" | ||
| 59 | "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile") | ||
| 56 | (python-mode "*.py" "*.pyi" "*.pyw") | 60 | (python-mode "*.py" "*.pyi" "*.pyw") |
| 61 | (python-ts-mode "*.py" "*.pyi" "*.pyw") | ||
| 57 | (perl-mode "*.pl" "*.PL") | 62 | (perl-mode "*.pl" "*.PL") |
| 58 | (cperl-mode "*.pl" "*.PL") | 63 | (cperl-mode "*.pl" "*.PL") |
| 59 | (lisp-interaction-mode "*.el" "*.ede" ".emacs" "_emacs") | 64 | (lisp-interaction-mode "*.el" "*.ede" ".emacs" "_emacs") |
diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el index 5c173ad24c7..349318e7579 100644 --- a/lisp/progmodes/ruby-ts-mode.el +++ b/lisp/progmodes/ruby-ts-mode.el | |||
| @@ -52,9 +52,10 @@ | |||
| 52 | ;; following levels: | 52 | ;; following levels: |
| 53 | ;; 1: comment method-definition | 53 | ;; 1: comment method-definition |
| 54 | ;; 2: keyword regexp string type | 54 | ;; 2: keyword regexp string type |
| 55 | ;; 3: builtin constant delimiter escape-sequence | 55 | ;; 3: builtin-variable builtin-constant constant |
| 56 | ;; delimiter escape-sequence | ||
| 56 | ;; global instance | 57 | ;; global instance |
| 57 | ;; interpolation literal symbol variable | 58 | ;; interpolation literal symbol assignment |
| 58 | ;; 4: bracket error function operator punctuation | 59 | ;; 4: bracket error function operator punctuation |
| 59 | 60 | ||
| 60 | ;; Thus if treesit-font-lock-level is set to level 3 which is its | 61 | ;; Thus if treesit-font-lock-level is set to level 3 which is its |
| @@ -87,11 +88,6 @@ | |||
| 87 | :prefix "ruby-ts-" | 88 | :prefix "ruby-ts-" |
| 88 | :group 'languages) | 89 | :group 'languages) |
| 89 | 90 | ||
| 90 | (defcustom ruby-ts-highlight-predefined-constants t | ||
| 91 | "When non-nil, the pre-defined constants are highlighted. | ||
| 92 | They will be highlighted the same way as the pre-defined variables." | ||
| 93 | :type 'boolean) | ||
| 94 | |||
| 95 | (defvar ruby-ts--operators | 91 | (defvar ruby-ts--operators |
| 96 | '("+" "-" "*" "/" "%" "**" | 92 | '("+" "-" "*" "/" "%" "**" |
| 97 | "==" "!=" ">" "<" ">=" "<=" "<=>" "===" | 93 | "==" "!=" ">" "<" ">=" "<=" "<=>" "===" |
| @@ -113,8 +109,7 @@ They will be highlighted the same way as the pre-defined variables." | |||
| 113 | "RUBY_PATCHLEVEL" "RUBY_PLATFORM" "RUBY_RELEASE_DATE" | 109 | "RUBY_PATCHLEVEL" "RUBY_PLATFORM" "RUBY_RELEASE_DATE" |
| 114 | "RUBY_REVISION" "RUBY_VERSION" "STDERR" "STDIN" "STDOUT" | 110 | "RUBY_REVISION" "RUBY_VERSION" "STDERR" "STDIN" "STDOUT" |
| 115 | "TOPLEVEL_BINDING")) | 111 | "TOPLEVEL_BINDING")) |
| 116 | "Ruby predefined global constants. | 112 | "Ruby predefined global constants.") |
| 117 | These are currently unused") | ||
| 118 | 113 | ||
| 119 | (defvar ruby-ts--predefined-variables | 114 | (defvar ruby-ts--predefined-variables |
| 120 | (rx (or "$!" "$@" "$~" "$&" "$‘" "$‘" "$+" "$=" "$/" "$\\" "$," "$;" | 115 | (rx (or "$!" "$@" "$~" "$&" "$‘" "$‘" "$+" "$=" "$/" "$\\" "$," "$;" |
| @@ -122,7 +117,7 @@ These are currently unused") | |||
| 122 | "$LOADED_FEATURES" "$DEBUG" "$FILENAME" "$stderr" "$stdin" | 117 | "$LOADED_FEATURES" "$DEBUG" "$FILENAME" "$stderr" "$stdin" |
| 123 | "$stdout" "$VERBOSE" "$-a" "$-i" "$-l" "$-p" | 118 | "$stdout" "$VERBOSE" "$-a" "$-i" "$-l" "$-p" |
| 124 | (seq "$" (+ digit)))) | 119 | (seq "$" (+ digit)))) |
| 125 | "Ruby global variables (but not global constants.") | 120 | "Ruby predefined global variables.") |
| 126 | 121 | ||
| 127 | (defconst ruby-ts--class-or-module-regex | 122 | (defconst ruby-ts--class-or-module-regex |
| 128 | (rx string-start | 123 | (rx string-start |
| @@ -201,22 +196,24 @@ values of OVERRIDE" | |||
| 201 | '((comment) @ruby-ts--comment-font-lock) | 196 | '((comment) @ruby-ts--comment-font-lock) |
| 202 | 197 | ||
| 203 | :language language | 198 | :language language |
| 204 | :feature 'builtin | 199 | :feature 'builtin-variable |
| 205 | `(((global_variable) @var (:match ,ruby-ts--predefined-variables @var)) @font-lock-builtin-face | 200 | `(((global_variable) @var (:match ,ruby-ts--predefined-variables @var)) @font-lock-builtin-face) |
| 206 | ,@(when ruby-ts-highlight-predefined-constants | 201 | |
| 207 | `(((constant) @var (:match ,ruby-ts--predefined-constants @var)) @font-lock-builtin-face))) | 202 | :language language |
| 203 | :feature 'builtin-constant | ||
| 204 | `(((constant) @var (:match ,ruby-ts--predefined-constants @var)) @font-lock-builtin-face) | ||
| 208 | 205 | ||
| 209 | :language language | 206 | :language language |
| 210 | :feature 'keyword | 207 | :feature 'keyword |
| 211 | `([,@ruby-ts--keywords] @font-lock-keyword-face) | 208 | `([,@ruby-ts--keywords] @font-lock-keyword-face |
| 209 | (self) @font-lock-keyword-face | ||
| 210 | (super) @font-lock-keyword-face) | ||
| 212 | 211 | ||
| 213 | :language language | 212 | :language language |
| 214 | :feature 'constant | 213 | :feature 'constant |
| 215 | '((true) @font-lock-doc-markup-face | 214 | '((true) @font-lock-doc-markup-face |
| 216 | (false) @font-lock-doc-markup-face | 215 | (false) @font-lock-doc-markup-face |
| 217 | (nil) @font-lock-doc-markup-face | 216 | (nil) @font-lock-doc-markup-face) |
| 218 | (self) @font-lock-doc-markup-face | ||
| 219 | (super) @font-lock-doc-markup-face) | ||
| 220 | 217 | ||
| 221 | :language language | 218 | :language language |
| 222 | :feature 'symbol | 219 | :feature 'symbol |
| @@ -293,6 +290,21 @@ values of OVERRIDE" | |||
| 293 | (method | 290 | (method |
| 294 | name: (setter) @font-lock-function-name-face)) | 291 | name: (setter) @font-lock-function-name-face)) |
| 295 | 292 | ||
| 293 | :language language | ||
| 294 | :feature 'parameter-definition | ||
| 295 | '((method_parameters | ||
| 296 | (identifier) @font-lock-variable-name-face) | ||
| 297 | (block_parameters | ||
| 298 | (identifier) @font-lock-variable-name-face) | ||
| 299 | (optional_parameter | ||
| 300 | name: (identifier) @font-lock-variable-name-face) | ||
| 301 | (splat_parameter | ||
| 302 | name: (identifier) @font-lock-variable-name-face) | ||
| 303 | (hash_splat_parameter | ||
| 304 | name: (identifier) @font-lock-variable-name-face) | ||
| 305 | (block_parameter | ||
| 306 | name: (identifier) @font-lock-variable-name-face)) | ||
| 307 | |||
| 296 | ;; Yuan recommends also putting method definitions into the | 308 | ;; Yuan recommends also putting method definitions into the |
| 297 | ;; 'function' category (thus keeping it in both). I've opted to | 309 | ;; 'function' category (thus keeping it in both). I've opted to |
| 298 | ;; just use separate categories for them -- dgutov. | 310 | ;; just use separate categories for them -- dgutov. |
| @@ -302,6 +314,15 @@ values of OVERRIDE" | |||
| 302 | method: (identifier) @font-lock-function-name-face)) | 314 | method: (identifier) @font-lock-function-name-face)) |
| 303 | 315 | ||
| 304 | :language language | 316 | :language language |
| 317 | :feature 'assignment | ||
| 318 | '((assignment | ||
| 319 | left: (identifier) @font-lock-variable-name-face) | ||
| 320 | (assignment | ||
| 321 | left: (left_assignment_list (identifier) @font-lock-variable-name-face)) | ||
| 322 | (operator_assignment | ||
| 323 | left: (identifier) @font-lock-variable-name-face)) | ||
| 324 | |||
| 325 | :language language | ||
| 305 | :feature 'error | 326 | :feature 'error |
| 306 | '((ERROR) @font-lock-warning-face) | 327 | '((ERROR) @font-lock-warning-face) |
| 307 | 328 | ||
| @@ -930,12 +951,12 @@ leading double colon is not added." | |||
| 930 | (setq-local treesit-font-lock-settings (ruby-ts--font-lock-settings 'ruby)) | 951 | (setq-local treesit-font-lock-settings (ruby-ts--font-lock-settings 'ruby)) |
| 931 | ;; Level 3 is the default. | 952 | ;; Level 3 is the default. |
| 932 | (setq-local treesit-font-lock-feature-list | 953 | (setq-local treesit-font-lock-feature-list |
| 933 | '(( comment method-definition ) | 954 | '(( comment method-definition parameter-definition) |
| 934 | ( keyword regexp string type) | 955 | ( keyword regexp string type) |
| 935 | ( builtin constant | 956 | ( builtin-variable builtin-constant constant |
| 936 | delimiter escape-sequence global | 957 | delimiter escape-sequence |
| 937 | instance | 958 | global instance |
| 938 | interpolation literal symbol variable) | 959 | interpolation literal symbol assignment) |
| 939 | ( bracket error function operator punctuation))) | 960 | ( bracket error function operator punctuation))) |
| 940 | 961 | ||
| 941 | (treesit-major-mode-setup)) | 962 | (treesit-major-mode-setup)) |
diff --git a/lisp/textmodes/toml-ts-mode.el b/lisp/textmodes/toml-ts-mode.el index 1b68632f58c..2430c5f3e76 100644 --- a/lisp/textmodes/toml-ts-mode.el +++ b/lisp/textmodes/toml-ts-mode.el | |||
| @@ -117,7 +117,6 @@ Return nil if there is no name or if NODE is not a defun node." | |||
| 117 | (or (treesit-node-text (treesit-node-child node 1) t) | 117 | (or (treesit-node-text (treesit-node-child node 1) t) |
| 118 | "Root table")))) | 118 | "Root table")))) |
| 119 | 119 | ||
| 120 | ;;;###autoload | ||
| 121 | (add-to-list 'auto-mode-alist '("\\.toml\\'" . toml-ts-mode)) | 120 | (add-to-list 'auto-mode-alist '("\\.toml\\'" . toml-ts-mode)) |
| 122 | 121 | ||
| 123 | ;;;###autoload | 122 | ;;;###autoload |
diff --git a/lisp/treesit.el b/lisp/treesit.el index 1b3b557ee03..e7de110b9dd 100644 --- a/lisp/treesit.el +++ b/lisp/treesit.el | |||
| @@ -302,9 +302,15 @@ properties." | |||
| 302 | (defun treesit-parent-until (node pred &optional include-node) | 302 | (defun treesit-parent-until (node pred &optional include-node) |
| 303 | "Return the closest parent of NODE that satisfies PRED. | 303 | "Return the closest parent of NODE that satisfies PRED. |
| 304 | 304 | ||
| 305 | Return nil if none was found. PRED should be a function that | 305 | This function successively examines the parent of NODE, then |
| 306 | takes one argument, the parent node, and return non-nil/nil for | 306 | the parent of the parent, etc., until it finds the first |
| 307 | match/no match. | 307 | ancestor node which satisfies the predicate PRED; then it |
| 308 | returns that ancestor node. It returns nil if no ancestor | ||
| 309 | node was found that satisfies PRED. | ||
| 310 | |||
| 311 | PRED should be a function that takes one argument, the node to | ||
| 312 | examine, and returns a boolean value indicating whether that | ||
| 313 | node is a match. | ||
| 308 | 314 | ||
| 309 | If INCLUDE-NODE is non-nil, return NODE if it satisfies PRED." | 315 | If INCLUDE-NODE is non-nil, return NODE if it satisfies PRED." |
| 310 | (let ((node (if include-node node | 316 | (let ((node (if include-node node |
| @@ -315,8 +321,16 @@ If INCLUDE-NODE is non-nil, return NODE if it satisfies PRED." | |||
| 315 | 321 | ||
| 316 | (defun treesit-parent-while (node pred) | 322 | (defun treesit-parent-while (node pred) |
| 317 | "Return the furthest parent of NODE that satisfies PRED. | 323 | "Return the furthest parent of NODE that satisfies PRED. |
| 318 | Return nil if none was found. PRED should be a function that | 324 | |
| 319 | takes one argument, the parent node." | 325 | This function successively examines the parent of NODE, then |
| 326 | the parent of the parent, etc., until it finds an ancestor node | ||
| 327 | which no longer satisfies the predicate PRED; it returns the last | ||
| 328 | examined ancestor that satisfies PRED. It returns nil if no | ||
| 329 | ancestor node was found that satisfies PRED. | ||
| 330 | |||
| 331 | PRED should be a function that takes one argument, the node to | ||
| 332 | examine, and returns a boolean value indicating whether that | ||
| 333 | node is a match." | ||
| 320 | (let ((last nil)) | 334 | (let ((last nil)) |
| 321 | (while (and node (funcall pred node)) | 335 | (while (and node (funcall pred node)) |
| 322 | (setq last node | 336 | (setq last node |
diff --git a/src/gnutls.c b/src/gnutls.c index 8320c928a4e..e8528381efd 100644 --- a/src/gnutls.c +++ b/src/gnutls.c | |||
| @@ -1072,7 +1072,7 @@ usage: (gnutls-error-string ERROR) */) | |||
| 1072 | 1072 | ||
| 1073 | DEFUN ("gnutls-deinit", Fgnutls_deinit, Sgnutls_deinit, 1, 1, 0, | 1073 | DEFUN ("gnutls-deinit", Fgnutls_deinit, Sgnutls_deinit, 1, 1, 0, |
| 1074 | doc: /* Deallocate GnuTLS resources associated with process PROC. | 1074 | doc: /* Deallocate GnuTLS resources associated with process PROC. |
| 1075 | See also `gnutls-init'. */) | 1075 | See also `gnutls-boot'. */) |
| 1076 | (Lisp_Object proc) | 1076 | (Lisp_Object proc) |
| 1077 | { | 1077 | { |
| 1078 | return emacs_gnutls_deinit (proc); | 1078 | return emacs_gnutls_deinit (proc); |
diff --git a/src/xdisp.c b/src/xdisp.c index 66c72aea6da..2e962b011a6 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -23322,8 +23322,9 @@ extend_face_to_end_of_line (struct it *it) | |||
| 23322 | it->avoid_cursor_p = true; | 23322 | it->avoid_cursor_p = true; |
| 23323 | it->object = Qnil; | 23323 | it->object = Qnil; |
| 23324 | 23324 | ||
| 23325 | const int stretch_ascent = (((it->ascent + it->descent) | 23325 | const int stretch_height = it->ascent + it->descent; |
| 23326 | * FONT_BASE (font)) / FONT_HEIGHT (font)); | 23326 | const int stretch_ascent = |
| 23327 | (stretch_height * FONT_BASE (font)) / FONT_HEIGHT (font); | ||
| 23327 | 23328 | ||
| 23328 | if (indicator_column >= 0 | 23329 | if (indicator_column >= 0 |
| 23329 | && indicator_column > it->current_x | 23330 | && indicator_column > it->current_x |
| @@ -23343,8 +23344,7 @@ extend_face_to_end_of_line (struct it *it) | |||
| 23343 | if (stretch_width > 0) | 23344 | if (stretch_width > 0) |
| 23344 | { | 23345 | { |
| 23345 | append_stretch_glyph (it, Qnil, stretch_width, | 23346 | append_stretch_glyph (it, Qnil, stretch_width, |
| 23346 | it->ascent + it->descent, | 23347 | stretch_height, stretch_ascent); |
| 23347 | stretch_ascent); | ||
| 23348 | } | 23348 | } |
| 23349 | 23349 | ||
| 23350 | /* Generate the glyph indicator only if | 23350 | /* Generate the glyph indicator only if |
| @@ -23352,6 +23352,8 @@ extend_face_to_end_of_line (struct it *it) | |||
| 23352 | if (it->current_x < indicator_column) | 23352 | if (it->current_x < indicator_column) |
| 23353 | { | 23353 | { |
| 23354 | const int save_face_id = it->face_id; | 23354 | const int save_face_id = it->face_id; |
| 23355 | const int save_ascent = it->ascent; | ||
| 23356 | const int save_descent = it->descent; | ||
| 23355 | it->char_to_display | 23357 | it->char_to_display |
| 23356 | = XFIXNAT (Vdisplay_fill_column_indicator_character); | 23358 | = XFIXNAT (Vdisplay_fill_column_indicator_character); |
| 23357 | it->face_id | 23359 | it->face_id |
| @@ -23359,6 +23361,8 @@ extend_face_to_end_of_line (struct it *it) | |||
| 23359 | 0, extend_face_id); | 23361 | 0, extend_face_id); |
| 23360 | PRODUCE_GLYPHS (it); | 23362 | PRODUCE_GLYPHS (it); |
| 23361 | it->face_id = save_face_id; | 23363 | it->face_id = save_face_id; |
| 23364 | it->ascent = save_ascent; | ||
| 23365 | it->descent = save_descent; | ||
| 23362 | } | 23366 | } |
| 23363 | } | 23367 | } |
| 23364 | 23368 | ||
| @@ -23372,8 +23376,7 @@ extend_face_to_end_of_line (struct it *it) | |||
| 23372 | { | 23376 | { |
| 23373 | clear_position (it); | 23377 | clear_position (it); |
| 23374 | append_stretch_glyph (it, Qnil, stretch_width, | 23378 | append_stretch_glyph (it, Qnil, stretch_width, |
| 23375 | it->ascent + it->descent, | 23379 | stretch_height, stretch_ascent); |
| 23376 | stretch_ascent); | ||
| 23377 | } | 23380 | } |
| 23378 | } | 23381 | } |
| 23379 | 23382 | ||