mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-26 07:33:47 +00:00
Merge from origin/emacs-29
0f5e74f173
ruby-ts-mode: Highlight method and block parametersf1aa306f91
ruby-ts-mode: Highlight variable assignments089b08eb3e
ruby-ts-mode: Move 'self' and 'super' from constants to k...7ede600273
(ruby-ts-mode): Split font-lock feature 'builtin' into twoec172d748f
Avoid assertion violation due to fill-column indicator face62c2963ce6
Merge branch 'emacs-29' of git.savannah.gnu.org:/srv/git/...2e6070f16c
; Another review of etc/NEWS16eca92415
; * src/gnutls.c (Fgnutls_deinit): Fix typo in doc string...4753b58786
* lisp/cedet/semantic/symref/grep.el: Support ts-modes (b...8a18369afd
; Another fix for doc strings of 2 treesit.el functions3fc6883351
; Fix the doc strings of 2 treesit.el functions83ce7c861e
Make 'toml-ts-mode' optional # Conflicts: # etc/NEWS
This commit is contained in:
commit
3fcbb86585
257
etc/NEWS.29
257
etc/NEWS.29
@ -332,7 +332,7 @@ this off, disable the new 'isearch-fold-quotes-mode' minor mode.
|
||||
|
||||
---
|
||||
** Sorting commands no longer necessarily change modification status.
|
||||
In earlier Emacs versions, commands like 'M-x sort-lines' would always
|
||||
In earlier Emacs versions, commands like 'sort-lines' would always
|
||||
change buffer modification status to "modified", whether they changed
|
||||
something in the buffer or not. This has been changed: the buffer is
|
||||
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).
|
||||
This is to open up the 'C-x 8 .' map to bind further characters there.
|
||||
|
||||
---
|
||||
** 'C-x 8 =' moved to 'C-x 8 = ='.
|
||||
** 'C-x 8 =' has been moved to 'C-x 8 = ='.
|
||||
You can now use 'C-x 8 =' to insert several characters with macron;
|
||||
for example, 'C-x 8 = a' will insert U+0101 LATIN SMALL LETTER A WITH
|
||||
MACRON. To insert a lone macron, type 'C-x 8 = =' instead of the
|
||||
@ -393,8 +393,8 @@ previous 'C-x ='.
|
||||
|
||||
*** Eshell's PATH is now derived from 'exec-path'.
|
||||
For consistency with remote connections, Eshell now uses 'exec-path'
|
||||
to determine the execution path on the local system, instead of using
|
||||
the PATH environment variable directly.
|
||||
to determine the execution path on the local or remote system, instead
|
||||
of using the PATH environment variable directly.
|
||||
|
||||
---
|
||||
*** 'source' and '.' no longer accept the '--help' option.
|
||||
@ -416,12 +416,12 @@ To pipe both stdout and stderr, use the '|&' operator instead of '|'.
|
||||
|
||||
---
|
||||
** The 'delete-forward-char' command now deletes by grapheme clusters.
|
||||
This command is by default bound to the <Delete> function key
|
||||
(a.k.a. <deletechar>). When invoked without a prefix argument or with
|
||||
a positive prefix numeric argument, the command will now delete
|
||||
This command is by default bound to the '<Delete>' function key
|
||||
(a.k.a. '<deletechar>'). When invoked without a prefix argument or
|
||||
with a positive prefix numeric argument, the command will now delete
|
||||
complete grapheme clusters produced by character composition. For
|
||||
example, if point is before an Emoji sequence, pressing <Delete> will
|
||||
delete the entire sequence, not just a single character at its
|
||||
example, if point is before an Emoji sequence, pressing '<Delete>'
|
||||
will delete the entire sequence, not just a single character at its
|
||||
beginning.
|
||||
|
||||
+++
|
||||
@ -510,7 +510,7 @@ performance, but the latter is closer to a drop-in replacement.
|
||||
|
||||
---
|
||||
** The thumbs.el library is now obsolete.
|
||||
We recommend using 'M-x image-dired' instead.
|
||||
We recommend using command 'image-dired' instead.
|
||||
|
||||
---
|
||||
** The autoarg.el library is now marked obsolete.
|
||||
@ -648,7 +648,7 @@ duplicated on its right-hand side.
|
||||
|
||||
+++
|
||||
** 'network-lookup-address-info' can now check numeric IP address validity.
|
||||
Specifying 'numeric' as the new optional 'hints' argument makes it
|
||||
Specifying 'numeric' as the new optional HINTS argument makes it
|
||||
check if the passed address is a valid IPv4/IPv6 address (without DNS
|
||||
traffic).
|
||||
|
||||
@ -697,7 +697,7 @@ This is like 'save-buffers-kill-emacs', but instead of just killing
|
||||
the current Emacs process at the end, it starts a new Emacs process
|
||||
(using the same command line arguments as the running Emacs process).
|
||||
'kill-emacs' and 'save-buffers-kill-emacs' have also gained new
|
||||
optional parameters to restart instead of just killing the current
|
||||
optional arguments to restart instead of just killing the current
|
||||
process.
|
||||
|
||||
** Drag and Drop
|
||||
@ -902,7 +902,7 @@ the 'COLORTERM' environment variable is set to the value "truecolor".
|
||||
|
||||
---
|
||||
*** Select active regions with xterm selection support.
|
||||
On terminals with xterm setSelection support, the active region may be
|
||||
On terminals with xterm "setSelection" support, the active region may be
|
||||
saved to the X primary selection, following the
|
||||
'select-active-regions' variable. This support is enabled when
|
||||
'tty-select-active-regions' is non-nil.
|
||||
@ -1041,7 +1041,7 @@ instead.
|
||||
*** New user option 'help-enable-variable-value-editing'.
|
||||
If enabled, 'e' on a value in "*Help*" will pop you to a new buffer
|
||||
where you can edit the value. This is not enabled by default, because
|
||||
it's easy to make an edit that yields an invalid result.
|
||||
it is easy to make an edit that yields an invalid result.
|
||||
|
||||
---
|
||||
*** 'C-h b' uses outlining by default.
|
||||
@ -1086,7 +1086,7 @@ helpful commands for various tasks. You can toggle the display using
|
||||
'C-h C-q'.
|
||||
|
||||
** Emacs now comes with Org v9.6.
|
||||
See the file ORG-NEWS for user-visible changes in Org.
|
||||
See the file "ORG-NEWS" for user-visible changes in Org.
|
||||
|
||||
** Outline Mode
|
||||
|
||||
@ -1135,14 +1135,14 @@ buffer on that frame.
|
||||
*** 'display-buffer' now can set up the body size of the chosen window.
|
||||
For example, a 'display-buffer-alist' entry of
|
||||
|
||||
'(window-width . (body-columns . 40))'
|
||||
(window-width . (body-columns . 40))
|
||||
|
||||
will make the body of the chosen window 40 columns wide. For the
|
||||
height use 'window-height' and 'body-lines', respectively.
|
||||
|
||||
---
|
||||
*** You can customize on which window 'scroll-other-window' operates.
|
||||
This is controlled by the new 'other-window-scroll-default' user option.
|
||||
This is controlled by the new 'other-window-scroll-default' variable.
|
||||
|
||||
** Frames
|
||||
|
||||
@ -1182,7 +1182,7 @@ LRI). The new command 'highlight-confusing-reorderings' finds and
|
||||
highlights segments of buffer text whose reordering for display is
|
||||
suspicious and could be malicious.
|
||||
|
||||
** Emacs server and client changes
|
||||
** Emacs Server and Client
|
||||
|
||||
+++
|
||||
*** New command-line option '-r'/'--reuse-frame' for emacsclient.
|
||||
@ -1215,9 +1215,9 @@ available options can be restored by enabling this option.
|
||||
*** New user option 'rcirc-bridge-bot-alist'.
|
||||
If you are in a channel where a bot is responsible for bridging
|
||||
between networks, you can use this variable to make these messages
|
||||
appear more native. For example you might set the option to:
|
||||
appear more native. For example, you might set the option to:
|
||||
|
||||
(setq rcirc-bridge-bot-alist '(("bridge" . "{\\(.+?\\)}[[:space:]]+")))
|
||||
(setopt rcirc-bridge-bot-alist '(("bridge" . "{\\(.+?\\)}[[:space:]]+")))
|
||||
|
||||
for messages like
|
||||
|
||||
@ -1256,6 +1256,7 @@ will wait forever for redisplay to finish. (We believe you won't need
|
||||
this feature, given the ability to display buffers with very long
|
||||
lines.)
|
||||
|
||||
|
||||
* Editing Changes in Emacs 29.1
|
||||
|
||||
+++
|
||||
@ -1313,12 +1314,12 @@ dragged.
|
||||
---
|
||||
** New user option 'yank-menu-max-items'.
|
||||
Customize this option to limit the number of entries in the menu
|
||||
"Edit->Paste from Kill Menu". The default is 60.
|
||||
"Edit → Paste from Kill Menu". The default is 60.
|
||||
|
||||
+++
|
||||
** Performing a pinch gesture on a touchpad now increases the text scale.
|
||||
|
||||
** show-paren-mode
|
||||
** Show Paren Mode
|
||||
|
||||
+++
|
||||
*** New user option 'show-paren-context-when-offscreen'.
|
||||
@ -1358,15 +1359,16 @@ you don't want to enable input fontification by default.
|
||||
|
||||
---
|
||||
*** New user options for alternate wheel events.
|
||||
The options 'mouse-wheel-down-alternate-event',
|
||||
'mouse-wheel-up-alternate-event', 'mouse-wheel-left-alternate-event',
|
||||
and 'mouse-wheel-right-alternate-event' have been added to better
|
||||
support systems where two kinds of wheel events can be received.
|
||||
The user options 'mouse-wheel-down-alternate-event' and
|
||||
'mouse-wheel-up-alternate-event' as well as the variables
|
||||
'mouse-wheel-left-alternate-event' and
|
||||
'mouse-wheel-right-alternate-event' have been added to better support
|
||||
systems where two kinds of wheel events can be received.
|
||||
|
||||
** Internationalization changes
|
||||
** Internationalization
|
||||
|
||||
---
|
||||
*** The <Delete> function key now allows deleting the entire composed sequence.
|
||||
*** The '<Delete>' function key now allows deleting the entire composed sequence.
|
||||
For the details, see the item about the 'delete-forward-char' command
|
||||
above.
|
||||
|
||||
@ -1471,7 +1473,7 @@ change the input method's translation rules, customize the user option
|
||||
'tamil-translation-rules'.
|
||||
|
||||
---
|
||||
*** New tamil99 input method for the Tamil language.
|
||||
*** New 'tamil99' input method for the Tamil language.
|
||||
This supports the keyboard layout specifically designed for the Tamil
|
||||
language.
|
||||
|
||||
@ -1505,7 +1507,7 @@ If non-nil and there's only one matching option, auto-select that.
|
||||
If non-nil, this user option describes what entries not to add to the
|
||||
database stored on disk.
|
||||
|
||||
** Auth-Source
|
||||
** Auth Source
|
||||
|
||||
+++
|
||||
*** New user option 'auth-source-pass-extra-query-keywords'.
|
||||
@ -1537,7 +1539,7 @@ The corresponding key 'Y' is now bound by default in Dired.
|
||||
|
||||
+++
|
||||
*** 'dired-do-relsymlink-regexp' moved from dired-x to dired.
|
||||
The corresponding key '% Y' is now bound by default in Dired.
|
||||
The corresponding key sequence '% Y' is now bound by default in Dired.
|
||||
|
||||
---
|
||||
*** '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
|
||||
instead of having it on a separate line. To get the previous behavior
|
||||
back, say:
|
||||
|
||||
(setq dired-free-space 'separate)
|
||||
(setopt dired-free-space 'separate)
|
||||
|
||||
---
|
||||
*** New user option 'dired-make-directory-clickable'.
|
||||
@ -1676,7 +1678,7 @@ this invocation as its default.
|
||||
This is bound to 'H' and toggles whether to hide or show the widget
|
||||
contents.
|
||||
|
||||
** Diff mode
|
||||
** Diff Mode
|
||||
|
||||
---
|
||||
*** New user option 'diff-whitespace-style'.
|
||||
@ -1826,7 +1828,7 @@ only jump if the location of the first error is known), and
|
||||
|
||||
+++
|
||||
*** New user option 'compilation-max-output-line-length'.
|
||||
Lines longer than the value of this variable will have their ends
|
||||
Lines longer than the value of this option will have their ends
|
||||
hidden, with a button to reveal the hidden text. This speeds up
|
||||
operations like grepping on files that have few newlines. The default
|
||||
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'
|
||||
|
||||
---
|
||||
** savehist.el can now truncate variables that are too long.
|
||||
An element of 'savehist-additional-variables' can now be of the form
|
||||
'(VARIABLE . MAX-ELTS)', which means to truncate the VARIABLE's value to
|
||||
at most MAX-ELTS elements (if the value is a list) before saving the
|
||||
value.
|
||||
An element of user option 'savehist-additional-variables' can now be
|
||||
of the form '(VARIABLE . MAX-ELTS)', which means to truncate the
|
||||
VARIABLE's value to at most MAX-ELTS elements (if the value is a list)
|
||||
before saving the value.
|
||||
|
||||
** Minibuffer and Completions
|
||||
|
||||
@ -1978,7 +1980,7 @@ command accepts the Unicode name of an Emoji (for example, "smiling
|
||||
face" or "heart with arrow"), like 'C-x 8 e e', with minibuffer
|
||||
completion, and adds the Emoji into the search string.
|
||||
|
||||
** Glyphless characters
|
||||
** Glyphless Characters
|
||||
|
||||
+++
|
||||
*** New minor mode 'glyphless-display-mode'.
|
||||
@ -1995,7 +1997,7 @@ and GUI terminals.
|
||||
*** "Replacement character" feature for undisplayable characters on TTYs.
|
||||
The 'acronym' method of displaying glyphless characters on text-mode
|
||||
frames treats single-character acronyms specially: they are displayed
|
||||
without the surrounding [..] "box", thus in effect treating such
|
||||
without the surrounding '[..]' "box", thus in effect treating such
|
||||
"acronyms" as replacement characters.
|
||||
|
||||
** Registers
|
||||
@ -2007,7 +2009,7 @@ For instance, to enable jumping to the "*Messages*" buffer with
|
||||
|
||||
(set-register ?m '(buffer . "*Messages*"))
|
||||
|
||||
** Pixel-fill
|
||||
** Pixel Fill
|
||||
|
||||
+++
|
||||
*** 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.
|
||||
** Info
|
||||
|
||||
+++
|
||||
*** 'M-x info-apropos' now takes a prefix argument to search for regexps.
|
||||
*** Command 'info-apropos' now takes a prefix argument to search for regexps.
|
||||
|
||||
---
|
||||
*** New command 'Info-goto-node-web' and key binding 'G'.
|
||||
This will take you to the gnu.org web server's version of the current
|
||||
This will take you to the "gnu.org" web server's version of the current
|
||||
info node. This command only works for the Emacs and Emacs Lisp manuals.
|
||||
|
||||
** Shortdoc
|
||||
@ -2164,9 +2166,9 @@ main Emacs initialization file ("~/.emacs" or "~/.emacs.d/init.el").
|
||||
|
||||
+++
|
||||
*** 'eudc-expansion-overwrites-query' to 'eudc-expansion-save-query-as-kill'.
|
||||
'eudc-expansion-overwrites-query' is renamed to
|
||||
The user option 'eudc-expansion-overwrites-query' is renamed to
|
||||
'eudc-expansion-save-query-as-kill' to reflect the actual behavior of
|
||||
the user option.
|
||||
the user option. The former is kept as alias.
|
||||
|
||||
+++
|
||||
*** New command 'eudc-expand-try-all'.
|
||||
@ -2180,7 +2182,7 @@ for a name that happens to match a contact in one's BBDB.
|
||||
*** New behavior and default for user option 'eudc-inline-expansion-format'.
|
||||
EUDC inline expansion result formatting defaulted to
|
||||
|
||||
'("%s %s <%s>" firstname name email)
|
||||
("%s %s <%s>" firstname name email)
|
||||
|
||||
Since email address specifications need to comply with RFC 5322 in
|
||||
order to be useful in messages, there was a risk to produce syntax
|
||||
@ -2227,8 +2229,9 @@ are supported only.
|
||||
The 'eww-auto-rename-buffer' user option can be configured to rename
|
||||
rendered web pages by using their title, URL, or a user-defined
|
||||
function which returns a string. For the first two cases, the length
|
||||
of the resulting name is controlled by 'eww-buffer-name-length'. By
|
||||
default, no automatic renaming is performed.
|
||||
of the resulting name is controlled by the user option
|
||||
'eww-buffer-name-length'. By default, no automatic renaming is
|
||||
performed.
|
||||
|
||||
+++
|
||||
*** New user option 'shr-allowed-images'.
|
||||
@ -2247,7 +2250,7 @@ doesn't work on other systems. Also see etc/PROBLEMS.
|
||||
These are used to alter an URL before using it. By default it removes
|
||||
the common "utm_" trackers from URLs.
|
||||
|
||||
** Find-Dired
|
||||
** Find Dired
|
||||
|
||||
---
|
||||
*** New command 'find-dired-with-command'.
|
||||
@ -2264,14 +2267,14 @@ Message, referred to as 'gnus-summary-tool-bar-retro',
|
||||
'gnus-group-tool-bar-retro' and 'message-tool-bar-retro', and
|
||||
'gnus-summary-tool-bar-gnome', 'gnus-group-tool-bar-gnome' and
|
||||
'message-tool-bar-gnome'. The "retro" tool bars have been removed (as
|
||||
well as the icons used), and the "Gnome" tool bars are now the only
|
||||
well as the icons used), and the "gnome" tool bars are now the only
|
||||
pre-defined toolbars.
|
||||
|
||||
---
|
||||
*** 'gnus-summary-up-thread' and 'gnus-summary-down-thread' bindings removed.
|
||||
The 'gnus-summary-down-thread' binding to "M-C-d" was shadowed by
|
||||
The 'gnus-summary-down-thread' binding to 'M-C-d' was shadowed by
|
||||
'gnus-summary-read-document', and these commands are also available on
|
||||
"T-u" and "T-d" respectively.
|
||||
'T u' and 'T d' respectively.
|
||||
|
||||
---
|
||||
*** 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
|
||||
for the command they are bound to. This does not affect listings of
|
||||
key bindings and functions (such as 'C-h b').
|
||||
|
||||
** Info-look
|
||||
** Info Look
|
||||
|
||||
---
|
||||
*** 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
|
||||
':doc-spec' element when the user asks for info on that particular
|
||||
mode (instead of at load time).
|
||||
|
||||
** Ansi-color
|
||||
** Ansi Color
|
||||
|
||||
---
|
||||
*** Support for ANSI 256-color and 24-bit colors.
|
||||
256-color and 24-bit color codes are now handled by ANSI color
|
||||
filters and displayed with the specified color.
|
||||
|
||||
** Term-mode
|
||||
** Term Mode
|
||||
|
||||
---
|
||||
*** New user option 'term-bind-function-keys'.
|
||||
@ -2434,7 +2437,7 @@ matches.
|
||||
---
|
||||
*** New function 'xref-show-xrefs'.
|
||||
|
||||
** File notifications
|
||||
** File Notifications
|
||||
|
||||
+++
|
||||
*** 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.
|
||||
*** Users can now add special image conversion functions.
|
||||
This is done via 'image-converter-add-handler'.
|
||||
|
||||
** Image-Dired
|
||||
** Image Dired
|
||||
|
||||
+++
|
||||
*** '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
|
||||
to use it; it is not enabled by default.
|
||||
|
||||
---
|
||||
*** Reduce dependency on external "exiftool" command.
|
||||
The 'image-dired-copy-with-exif-file-name' no longer requires an
|
||||
external "exiftool" command to be available. The user options
|
||||
*** Reduce dependency on external "exiftool" program.
|
||||
The 'image-dired-copy-with-exif-file-name' command no longer requires
|
||||
an external "exiftool" program to be available. The user options
|
||||
'image-dired-cmd-read-exif-data-program' and
|
||||
'image-dired-cmd-read-exif-data-options' are now obsolete.
|
||||
|
||||
@ -2712,7 +2715,7 @@ fringe (or nil to disable showing this marker).
|
||||
This is a convenience function to extract the field data from
|
||||
'exif-parse-file' and 'exif-parse-buffer'.
|
||||
|
||||
** Xwidgets
|
||||
** Xwidget
|
||||
|
||||
---
|
||||
*** New user option 'xwidget-webkit-buffer-name-format'.
|
||||
@ -2755,7 +2758,7 @@ and friends.
|
||||
|
||||
+++
|
||||
*** New connection methods "docker", "podman" and "kubernetes".
|
||||
They allow accessing environments provided by Docker and similar
|
||||
They allow accessing containers provided by Docker and similar
|
||||
programs.
|
||||
|
||||
---
|
||||
@ -2853,7 +2856,7 @@ will cause the whole command to be passed to the operating system
|
||||
shell. This is particularly useful to bypass Eshell's own pipelining
|
||||
support for pipelines which will move a lot of data. See section
|
||||
"Running Shell Pipelines Natively" in the Eshell manual, node
|
||||
"(eshell) Input/Output".
|
||||
"(eshell) Pipelines".
|
||||
|
||||
+++
|
||||
*** 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
|
||||
commands" in the "(eshell) Built-ins" node of the Eshell manual.
|
||||
|
||||
---
|
||||
*** Eshell globs ending with '/' now match only directories.
|
||||
Additionally, globs ending with '**/' or '***/' no longer raise an
|
||||
*** Eshell globs ending with "/" now match only directories.
|
||||
Additionally, globs ending with "**/" or "***/" no longer raise an
|
||||
error, and now expand to all directories recursively (following
|
||||
symlinks in the latter case).
|
||||
|
||||
@ -3052,7 +3055,7 @@ The old name is still available as an obsolete function alias.
|
||||
*** The url-irc library now understands "ircs://" links.
|
||||
|
||||
---
|
||||
*** New command 'world-clock-copy-time-as-kill' for 'M-x world-clock'.
|
||||
*** New command 'world-clock-copy-time-as-kill' for 'world-clock-mode'.
|
||||
It copies the current line into the kill ring.
|
||||
|
||||
---
|
||||
@ -3061,17 +3064,17 @@ The new face 'abbrev-table-name' is used to display the abbrev table
|
||||
name.
|
||||
|
||||
---
|
||||
*** New key binding 'O' in 'M-x list-buffers'.
|
||||
*** New key binding 'O' in "*Buffer List*".
|
||||
This key is now bound to 'Buffer-menu-view-other-window', which will
|
||||
view this line's buffer in View mode in another window.
|
||||
|
||||
** Scheme mode
|
||||
** Scheme Mode
|
||||
|
||||
---
|
||||
*** Auto-detection of Scheme library files.
|
||||
Emacs now automatically enables the Scheme mode when opening R6RS
|
||||
Scheme Library Source ('.sls') files and R7RS Scheme Library
|
||||
Definition ('.sld') files.
|
||||
Scheme Library Source (".sls") files and R7RS Scheme Library
|
||||
Definition (".sld") files.
|
||||
|
||||
---
|
||||
*** Imenu members for R6RS and R7RS library members.
|
||||
@ -3086,10 +3089,10 @@ Imenu now lists the members directly nested in R6RS Scheme libraries
|
||||
Emacs now comes with the Eglot package, which enhances various Emacs
|
||||
features, such as completion, documentation, error detection, etc.,
|
||||
based on data provided by language servers using the Language Server
|
||||
Protocol (LSP).
|
||||
Protocol (LSP). See the new Info manual "(eglot) Top" for more.
|
||||
|
||||
+++
|
||||
*** use-package: Declarative package configuration.
|
||||
** use-package: Declarative package configuration.
|
||||
use-package is now shipped with Emacs. It provides the 'use-package'
|
||||
macro, which allows you to isolate package configuration in your init
|
||||
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
|
||||
the parser grammar library is not available. To prevent the warnings,
|
||||
either build Emacs with tree-sitter and install the grammar libraries,
|
||||
or customize 'auto-mode-alist' to specify some other major mode (or
|
||||
even Fundamental mode) for those kinds of files.
|
||||
even 'fundamental-mode') for those kinds of files.
|
||||
|
||||
Each major mode based on tree-sitter needs a language grammar library,
|
||||
usually named "libtree-sitter-LANG.so" ("libtree-sitter-LANG.dll" on
|
||||
@ -3251,9 +3254,8 @@ extension is ".cmake".
|
||||
|
||||
+++
|
||||
*** New major mode 'toml-ts-mode'.
|
||||
A major mode based on the tree-sitter library for editing files
|
||||
written in TOML, a format for writing configuration files. It is
|
||||
auto-enabled for files with the ".toml" extension.
|
||||
An optional major mode based on the tree-sitter library for editing
|
||||
files written in TOML, a format for writing configuration files.
|
||||
|
||||
+++
|
||||
*** New major mode 'go-ts-mode'.
|
||||
@ -3332,13 +3334,13 @@ auto-scaling applied. (This only makes a difference on HiDPI
|
||||
displays.)
|
||||
|
||||
+++
|
||||
** Changes in how "raw" in-memory xbm images are specified.
|
||||
** Changes in how "raw" in-memory XBM images are specified.
|
||||
Some years back Emacs gained the ability to scale images, and you
|
||||
could then specify ':width' and ':height' when using 'create-image' on all
|
||||
image types -- except xbm images, because this format already used the
|
||||
image types -- except XBM images, because this format already used the
|
||||
':width' and ':height' arguments to specify the width/height of the "raw"
|
||||
in-memory format. This meant that if you used these specifications
|
||||
on, for instance, xbm files, Emacs would refuse to display them. This
|
||||
on, for instance, XBM files, Emacs would refuse to display them. This
|
||||
has been changed, and ':width'/':height' now works as with all other image
|
||||
formats, and the way to specify the width/height of the "raw"
|
||||
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
|
||||
information about autoloads, built-in packages and package prefixes)
|
||||
used to be generated by functions in autoloads.el. These are now
|
||||
generated by loaddefs-gen.el instead. This leads to functionally
|
||||
equivalent "loaddef.el" files, but they do not use exactly the same
|
||||
equivalent "loaddefs.el" files, but they do not use exactly the same
|
||||
syntax, so using 'M-x update-file-autoloads' no longer works. (This
|
||||
didn't work well in most files in the past, either, but it will now
|
||||
signal an error in any file.)
|
||||
@ -3494,7 +3496,7 @@ This change is now applied in 'dired-insert-directory'.
|
||||
|
||||
---
|
||||
** 'compilation-last-buffer' is (finally) declared obsolete.
|
||||
It's been obsolete since Emacs-22.1, actually.
|
||||
It has been obsolete since Emacs 22.1, actually.
|
||||
|
||||
---
|
||||
** Calling 'lsh' now elicits a byte-compiler warning.
|
||||
@ -3524,9 +3526,9 @@ but switching to 'ash' is generally much preferable.
|
||||
'command-history-map', 'compilation-parse-errors-function',
|
||||
'completion-annotate-function', 'condition-case-no-debug',
|
||||
'count-lines-region', 'crisp-mode-modeline-string',
|
||||
'custom-print-functions', 'custom-print-functions',
|
||||
'cvs-string-prefix-p', 'data-debug-map', 'deferred-action-function',
|
||||
'deferred-action-list', 'dired-pop-to-buffer', 'dired-shrink-to-fit',
|
||||
'custom-print-functions', 'cvs-string-prefix-p', 'data-debug-map',
|
||||
'deferred-action-function', 'deferred-action-list',
|
||||
'dired-pop-to-buffer', 'dired-shrink-to-fit',
|
||||
'dired-sort-set-modeline', 'dired-x-submit-report',
|
||||
'display-buffer-function',
|
||||
'ediff-choose-window-setup-function-automatically',
|
||||
@ -3548,11 +3550,10 @@ but switching to 'ash' is generally much preferable.
|
||||
'inhibit-first-line-modes-suffixes', 'input-method-inactivate-hook',
|
||||
'intdos', 'javascript-generic-mode', 'javascript-generic-mode-hook',
|
||||
'latex-string-prefix-p', 'macro-declaration-function' (function),
|
||||
'macro-declaration-function' (variable), 'mail-complete-function',
|
||||
'mail-completion-at-point-function',
|
||||
'mail-mailer-swallows-blank-line', 'mail-sent-via', 'make-register',
|
||||
'makefile-complete', 'menu-bar-kill-ring-save',
|
||||
'meta-complete-symbol', 'meta-mode-map',
|
||||
'macro-declaration-function' (variable), 'mail-complete',
|
||||
'mail-complete-function', 'mail-mailer-swallows-blank-line',
|
||||
'mail-sent-via', 'make-register', 'makefile-complete',
|
||||
'menu-bar-kill-ring-save', 'meta-complete-symbol', 'meta-mode-map',
|
||||
'mh-kill-folder-suppress-prompt-hooks',
|
||||
'minibuffer-completing-symbol',
|
||||
'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'
|
||||
when executing commands interactively.
|
||||
|
||||
+++
|
||||
** The FORM arg of 'time-convert' is mandatory.
|
||||
** The FORM argument of 'time-convert' is mandatory.
|
||||
'time-convert' can still be called without it, as before, but the
|
||||
compiler now emits a warning about this deprecated usage.
|
||||
|
||||
@ -3740,7 +3741,7 @@ TIMEOUT is the idle time after which to deactivate the transient map.
|
||||
The default timeout value can be defined by the new variable
|
||||
'set-transient-map-timeout'.
|
||||
|
||||
** Connection-local variables
|
||||
** Connection Local Variables
|
||||
|
||||
+++
|
||||
*** Some connection-local variables are now user options.
|
||||
@ -3769,7 +3770,7 @@ Reference manual for more information.
|
||||
|
||||
+++
|
||||
** 'plist-get', 'plist-put' and 'plist-member' are no longer limited to 'eq'.
|
||||
These function now take an optional comparison predicate argument.
|
||||
These function now take an optional comparison PREDICATE argument.
|
||||
|
||||
+++
|
||||
** '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'
|
||||
will now report the maximum valid codepoint defined by the Unicode
|
||||
Standard.
|
||||
|
||||
** seq
|
||||
** Seq
|
||||
|
||||
+++
|
||||
*** New function 'seq-split'.
|
||||
@ -3867,8 +3868,8 @@ It is called whenever the configuration of different monitors on a
|
||||
display changes.
|
||||
|
||||
+++
|
||||
** 'prin1' and 'prin1-to-string' now take an optional OVERRIDES parameter.
|
||||
This parameter can be used to override values of print-related settings.
|
||||
** 'prin1' and 'prin1-to-string' now take an optional OVERRIDES argument.
|
||||
This argument can be used to override values of print-related settings.
|
||||
|
||||
+++
|
||||
** New minor mode 'header-line-indent-mode'.
|
||||
@ -3877,9 +3878,9 @@ be kept aligned with the buffer contents when the user switches
|
||||
'display-line-numbers-mode' on or off.
|
||||
|
||||
+++
|
||||
** New minor mode 'lost-selection-mode'.
|
||||
This minor mode makes Emacs deactivate the mark in all buffers when
|
||||
the primary selection is obtained by another program.
|
||||
** New global minor mode 'lost-selection-mode'.
|
||||
This global minor mode makes Emacs deactivate the mark in all buffers
|
||||
when the primary selection is obtained by another program.
|
||||
|
||||
---
|
||||
** 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.
|
||||
** New predicate 'char-uppercase-p'.
|
||||
This returns non-nil if its argument its an uppercase character.
|
||||
|
||||
** Byte compilation
|
||||
** Byte Compilation
|
||||
|
||||
---
|
||||
*** 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
|
||||
|
||||
---
|
||||
*** Byte compilation will now warn about some malformed 'defcustom' types.
|
||||
It's very common to write 'defcustom' types on the form:
|
||||
It is very common to write 'defcustom' types on the form:
|
||||
|
||||
:type '(choice (const :tag "foo" 'bar))
|
||||
|
||||
@ -3991,7 +3992,7 @@ batch-based Emacs scripts.
|
||||
This works like 'buttonize', but for a region instead of a string.
|
||||
|
||||
+++
|
||||
** 'macroexp-let2*' can omit TEST arg and use single-var bindings.
|
||||
** 'macroexp-let2*' can omit TEST argument and use single-var bindings.
|
||||
|
||||
+++
|
||||
** 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
|
||||
used to determine the type of an input device.
|
||||
|
||||
+++
|
||||
** 'track-mouse' can have a new value 'drag-source'.
|
||||
** Variable 'track-mouse' can have a new value 'drag-source'.
|
||||
This means the same as 'dropping', but modifies the mouse position
|
||||
list in reported motion events if there is no frame underneath the
|
||||
mouse pointer.
|
||||
@ -4052,7 +4053,7 @@ frequently than once in a second.
|
||||
|
||||
---
|
||||
** New function 'bidi-string-strip-control-characters'.
|
||||
This utility function is meant for displaying strings when it's
|
||||
This utility function is meant for displaying strings when it is
|
||||
essential that there's no bidirectional context. It removes all the
|
||||
bidirectional formatting control characters (such as RLM, LRO, PDF,
|
||||
etc.) from its argument string. The characters it removes are listed
|
||||
@ -4110,21 +4111,21 @@ them towards or away from each other.
|
||||
|
||||
+++
|
||||
** New hook 'x-pre-popup-menu-hook'.
|
||||
This hook is run before 'x-popup-menu' is about to display a
|
||||
This hook, run before 'x-popup-menu', is about to display a
|
||||
deck-of-cards menu on screen.
|
||||
|
||||
---
|
||||
** New hook 'post-select-region-hook'.
|
||||
This hook is run immediately after 'select-active-regions' causes the
|
||||
region to be set as the primary selection.
|
||||
This hook is run immediately after 'select-active-regions'. It causes
|
||||
the region to be set as the primary selection.
|
||||
|
||||
+++
|
||||
** New function 'buffer-match-p'.
|
||||
Check if a buffer satisfies some condition. Some examples for
|
||||
conditions can be regular expressions that match a buffer name, a
|
||||
cons-cell like '(major-mode . shell-mode)' that matches any buffer
|
||||
where 'major-mode' is 'shell-mode' or a combined with a condition like
|
||||
'(and "\\`\\*.+\\*\\'" (major-mode . special-mode))'.
|
||||
where 'major-mode' is 'shell-mode' or a combination with a condition
|
||||
like '(and "\\`\\*.+\\*\\'" (major-mode . special-mode))'.
|
||||
|
||||
+++
|
||||
** New function 'match-buffers'.
|
||||
@ -4132,19 +4133,19 @@ It uses 'buffer-match-p' to gather a list of buffers that match a
|
||||
condition.
|
||||
|
||||
---
|
||||
** New optional arguments 'text-face' and 'default-face' for 'tooltip-show'.
|
||||
** New optional arguments TEXT-FACE and DEFAULT-FACE for 'tooltip-show'.
|
||||
They allow changing the faces used for the tooltip text and frame
|
||||
colors of the resulting tooltip frame from the default 'tooltip' face.
|
||||
|
||||
** Text security and suspiciousness
|
||||
** Text Security and Suspiciousness
|
||||
|
||||
+++
|
||||
*** New library textsec.el.
|
||||
This library contains a number of checks for whether a string is
|
||||
"suspicious". This usually means that the string contains characters
|
||||
that have glyphs that can be confused with other, more commonly used
|
||||
glyphs, or contain bidirectional (or other) formatting characters that
|
||||
may be used to confuse a user.
|
||||
glyphs, or contains bidirectional (or other) formatting characters
|
||||
that may be used to confuse a user.
|
||||
|
||||
+++
|
||||
*** New user option 'textsec-check'.
|
||||
@ -4162,7 +4163,7 @@ This is the main function Emacs applications should be using to check
|
||||
whether a string is suspicious. It heeds the 'textsec-check' user
|
||||
option.
|
||||
|
||||
** Keymaps and key definitions
|
||||
** Keymaps and Key Definitions
|
||||
|
||||
+++
|
||||
*** 'where-is-internal' can now filter events marked as non key events.
|
||||
@ -4198,7 +4199,7 @@ de-emphasized in the documentation.
|
||||
*** Use 'keymap-set-after' instead of 'define-key-after'.
|
||||
|
||||
+++
|
||||
*** Use 'keymap-lookup' instead of 'lookup-keymap' and 'key-binding'.
|
||||
*** Use 'keymap-lookup' instead of 'lookup-key' and 'key-binding'.
|
||||
|
||||
+++
|
||||
*** Use 'keymap-local-lookup' instead of 'local-key-binding'.
|
||||
@ -4286,9 +4287,9 @@ instance) when covering huge amounts of data (that has no meaningful
|
||||
searchable data, like image data) with a 'display' text property.
|
||||
|
||||
+++
|
||||
** 'insert-image' now takes an INHIBIT-ISEARCH optional parameter.
|
||||
** 'insert-image' now takes an INHIBIT-ISEARCH optional argument.
|
||||
It marks the image with the 'inhibit-isearch' text property, which
|
||||
inhibits 'isearch' matching the STRING parameter.
|
||||
inhibits 'isearch' matching the STRING argument.
|
||||
|
||||
---
|
||||
** New variable 'replace-regexp-function'.
|
||||
@ -4356,7 +4357,7 @@ character width/height.
|
||||
This means the vscroll will not be reset when set on a window that is
|
||||
"frozen" due to a mini-window being resized.
|
||||
|
||||
** XDG support
|
||||
** XDG Support
|
||||
|
||||
---
|
||||
*** New function 'xdg-state-home'.
|
||||
@ -4402,7 +4403,7 @@ This holds the value of the previous call to 'set-locale-environment'.
|
||||
This macro can be used to change the locale temporarily while
|
||||
executing code.
|
||||
|
||||
** table.el
|
||||
** Table
|
||||
|
||||
---
|
||||
*** New user option 'table-latex-environment'.
|
||||
@ -4428,8 +4429,8 @@ local variables and removes overlays and text properties.
|
||||
|
||||
+++
|
||||
** 'kill-all-local-variables' can now kill all local variables.
|
||||
If given the new optional KILL-PERMANENT argument, also kill permanent
|
||||
local variables.
|
||||
If given the new optional KILL-PERMANENT argument, it also kills
|
||||
permanent local variables.
|
||||
|
||||
+++
|
||||
** Third 'mapconcat' argument SEPARATOR is now optional.
|
||||
@ -4447,7 +4448,7 @@ This macro allows defining keymap variables more conveniently.
|
||||
Use ':repeat t' to have all bindings be repeatable or for more
|
||||
advanced usage:
|
||||
|
||||
':repeat (:enter (commands ...) :exit (commands ...))'
|
||||
:repeat (:enter (commands ...) :exit (commands ...))
|
||||
|
||||
---
|
||||
** '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
|
||||
'[menu-bar foo-bar]'. This further improves backwards-compatibility
|
||||
when converting menus to use 'easy-menu-define'.
|
||||
|
||||
** xwidgets
|
||||
** Xwidget
|
||||
|
||||
+++
|
||||
*** The function 'make-xwidget' now accepts an optional RELATED argument.
|
||||
@ -4540,7 +4541,7 @@ commits to the load.
|
||||
|
||||
+++
|
||||
*** New event type 'xwidget-display-event'.
|
||||
These events are sent whenever an xwidget requests that Emacs display
|
||||
These events are sent whenever an xwidget requests that Emacs displays
|
||||
another xwidget. The only arguments to this event are the xwidget
|
||||
that should be displayed, and the xwidget that asked to display it.
|
||||
|
||||
@ -4565,10 +4566,10 @@ temporary transition aid for Emacs 27, has served its purpose.
|
||||
'(encode-time (list SECOND MINUTE HOUR DAY MONTH YEAR nil -1 nil))'.
|
||||
|
||||
+++
|
||||
** 'date-to-time' now accepts arguments that lacks month, day, or time.
|
||||
** 'date-to-time' now accepts arguments that lack month, day, or time.
|
||||
The function now assumes the earliest possible values if its argument
|
||||
lacks month, day, or time. For example, (date-to-time "2021-12-04")
|
||||
now assumes a time of 00:00 instead of signaling an error.
|
||||
now assumes a time of "00:00" instead of signaling an error.
|
||||
|
||||
+++
|
||||
** 'format-seconds' now allows suppressing zero-value trailing elements.
|
||||
@ -4577,7 +4578,7 @@ elements that appear after "%x".
|
||||
|
||||
+++
|
||||
** New events for taking advantage of touchscreen devices.
|
||||
The events 'touchscreen-begin, 'touchscreen-update', and
|
||||
The events 'touchscreen-begin', 'touchscreen-update', and
|
||||
'touchscreen-end' have been added to take better advantage of
|
||||
touch-capable display panels.
|
||||
|
||||
@ -4611,7 +4612,7 @@ Use 'indian-tml-itrans-digits-v5-hash' if you want digits
|
||||
translation.
|
||||
|
||||
+++
|
||||
** 'shell-quote-argument' has a new optional parameter POSIX.
|
||||
** 'shell-quote-argument' has a new optional argument POSIX.
|
||||
This is useful when quoting shell arguments for a remote shell
|
||||
invocation. Such shells are POSIX conformant by default.
|
||||
|
||||
@ -4728,7 +4729,7 @@ has built-in support for displaying BMP images.
|
||||
---
|
||||
*** GUI Yes/No dialogs now include a "Cancel" button.
|
||||
The "Cancel" button is in addition to "Yes" and "No", and is intended
|
||||
to allow users to quit the dialog, as an equivalent of C-g when Emacs
|
||||
to allow users to quit the dialog, as an equivalent of 'C-g' when Emacs
|
||||
asks a yes/no question via the echo area. This is controlled by the
|
||||
new variable 'w32-yes-no-dialog-show-cancel', by default t. Set it to
|
||||
nil to get back the old behavior of showing a modal dialog with only
|
||||
|
@ -44,7 +44,9 @@ those hits returned.")
|
||||
|
||||
(defvar semantic-symref-filepattern-alist
|
||||
'((c-mode "*.[ch]")
|
||||
(c-ts-mode "*.[ch]")
|
||||
(c++-mode "*.[chCH]" "*.[ch]pp" "*.cc" "*.hh")
|
||||
(c++-ts-mode "*.[chCH]" "*.[ch]pp" "*.cc" "*.hh")
|
||||
(html-mode "*.html" "*.shtml" "*.php")
|
||||
(mhtml-mode "*.html" "*.shtml" "*.php") ; FIXME: remove
|
||||
; duplication of
|
||||
@ -53,7 +55,10 @@ those hits returned.")
|
||||
; major mode definition?
|
||||
(ruby-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml"
|
||||
"Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile")
|
||||
(ruby-ts-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml"
|
||||
"Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile")
|
||||
(python-mode "*.py" "*.pyi" "*.pyw")
|
||||
(python-ts-mode "*.py" "*.pyi" "*.pyw")
|
||||
(perl-mode "*.pl" "*.PL")
|
||||
(cperl-mode "*.pl" "*.PL")
|
||||
(lisp-interaction-mode "*.el" "*.ede" ".emacs" "_emacs")
|
||||
|
@ -52,9 +52,10 @@
|
||||
;; following levels:
|
||||
;; 1: comment method-definition
|
||||
;; 2: keyword regexp string type
|
||||
;; 3: builtin constant delimiter escape-sequence
|
||||
;; 3: builtin-variable builtin-constant constant
|
||||
;; delimiter escape-sequence
|
||||
;; global instance
|
||||
;; interpolation literal symbol variable
|
||||
;; interpolation literal symbol assignment
|
||||
;; 4: bracket error function operator punctuation
|
||||
|
||||
;; Thus if treesit-font-lock-level is set to level 3 which is its
|
||||
@ -87,11 +88,6 @@
|
||||
:prefix "ruby-ts-"
|
||||
:group 'languages)
|
||||
|
||||
(defcustom ruby-ts-highlight-predefined-constants t
|
||||
"When non-nil, the pre-defined constants are highlighted.
|
||||
They will be highlighted the same way as the pre-defined variables."
|
||||
:type 'boolean)
|
||||
|
||||
(defvar ruby-ts--operators
|
||||
'("+" "-" "*" "/" "%" "**"
|
||||
"==" "!=" ">" "<" ">=" "<=" "<=>" "==="
|
||||
@ -113,8 +109,7 @@ They will be highlighted the same way as the pre-defined variables."
|
||||
"RUBY_PATCHLEVEL" "RUBY_PLATFORM" "RUBY_RELEASE_DATE"
|
||||
"RUBY_REVISION" "RUBY_VERSION" "STDERR" "STDIN" "STDOUT"
|
||||
"TOPLEVEL_BINDING"))
|
||||
"Ruby predefined global constants.
|
||||
These are currently unused")
|
||||
"Ruby predefined global constants.")
|
||||
|
||||
(defvar ruby-ts--predefined-variables
|
||||
(rx (or "$!" "$@" "$~" "$&" "$‘" "$‘" "$+" "$=" "$/" "$\\" "$," "$;"
|
||||
@ -122,7 +117,7 @@ These are currently unused")
|
||||
"$LOADED_FEATURES" "$DEBUG" "$FILENAME" "$stderr" "$stdin"
|
||||
"$stdout" "$VERBOSE" "$-a" "$-i" "$-l" "$-p"
|
||||
(seq "$" (+ digit))))
|
||||
"Ruby global variables (but not global constants.")
|
||||
"Ruby predefined global variables.")
|
||||
|
||||
(defconst ruby-ts--class-or-module-regex
|
||||
(rx string-start
|
||||
@ -201,22 +196,24 @@ values of OVERRIDE"
|
||||
'((comment) @ruby-ts--comment-font-lock)
|
||||
|
||||
:language language
|
||||
:feature 'builtin
|
||||
`(((global_variable) @var (:match ,ruby-ts--predefined-variables @var)) @font-lock-builtin-face
|
||||
,@(when ruby-ts-highlight-predefined-constants
|
||||
`(((constant) @var (:match ,ruby-ts--predefined-constants @var)) @font-lock-builtin-face)))
|
||||
:feature 'builtin-variable
|
||||
`(((global_variable) @var (:match ,ruby-ts--predefined-variables @var)) @font-lock-builtin-face)
|
||||
|
||||
:language language
|
||||
:feature 'builtin-constant
|
||||
`(((constant) @var (:match ,ruby-ts--predefined-constants @var)) @font-lock-builtin-face)
|
||||
|
||||
:language language
|
||||
:feature 'keyword
|
||||
`([,@ruby-ts--keywords] @font-lock-keyword-face)
|
||||
`([,@ruby-ts--keywords] @font-lock-keyword-face
|
||||
(self) @font-lock-keyword-face
|
||||
(super) @font-lock-keyword-face)
|
||||
|
||||
:language language
|
||||
:feature 'constant
|
||||
'((true) @font-lock-doc-markup-face
|
||||
(false) @font-lock-doc-markup-face
|
||||
(nil) @font-lock-doc-markup-face
|
||||
(self) @font-lock-doc-markup-face
|
||||
(super) @font-lock-doc-markup-face)
|
||||
(nil) @font-lock-doc-markup-face)
|
||||
|
||||
:language language
|
||||
:feature 'symbol
|
||||
@ -293,6 +290,21 @@ values of OVERRIDE"
|
||||
(method
|
||||
name: (setter) @font-lock-function-name-face))
|
||||
|
||||
:language language
|
||||
:feature 'parameter-definition
|
||||
'((method_parameters
|
||||
(identifier) @font-lock-variable-name-face)
|
||||
(block_parameters
|
||||
(identifier) @font-lock-variable-name-face)
|
||||
(optional_parameter
|
||||
name: (identifier) @font-lock-variable-name-face)
|
||||
(splat_parameter
|
||||
name: (identifier) @font-lock-variable-name-face)
|
||||
(hash_splat_parameter
|
||||
name: (identifier) @font-lock-variable-name-face)
|
||||
(block_parameter
|
||||
name: (identifier) @font-lock-variable-name-face))
|
||||
|
||||
;; Yuan recommends also putting method definitions into the
|
||||
;; 'function' category (thus keeping it in both). I've opted to
|
||||
;; just use separate categories for them -- dgutov.
|
||||
@ -301,6 +313,15 @@ values of OVERRIDE"
|
||||
'((call
|
||||
method: (identifier) @font-lock-function-name-face))
|
||||
|
||||
:language language
|
||||
:feature 'assignment
|
||||
'((assignment
|
||||
left: (identifier) @font-lock-variable-name-face)
|
||||
(assignment
|
||||
left: (left_assignment_list (identifier) @font-lock-variable-name-face))
|
||||
(operator_assignment
|
||||
left: (identifier) @font-lock-variable-name-face))
|
||||
|
||||
:language language
|
||||
:feature 'error
|
||||
'((ERROR) @font-lock-warning-face)
|
||||
@ -930,12 +951,12 @@ leading double colon is not added."
|
||||
(setq-local treesit-font-lock-settings (ruby-ts--font-lock-settings 'ruby))
|
||||
;; Level 3 is the default.
|
||||
(setq-local treesit-font-lock-feature-list
|
||||
'(( comment method-definition )
|
||||
'(( comment method-definition parameter-definition)
|
||||
( keyword regexp string type)
|
||||
( builtin constant
|
||||
delimiter escape-sequence global
|
||||
instance
|
||||
interpolation literal symbol variable)
|
||||
( builtin-variable builtin-constant constant
|
||||
delimiter escape-sequence
|
||||
global instance
|
||||
interpolation literal symbol assignment)
|
||||
( bracket error function operator punctuation)))
|
||||
|
||||
(treesit-major-mode-setup))
|
||||
|
@ -117,7 +117,6 @@ Return nil if there is no name or if NODE is not a defun node."
|
||||
(or (treesit-node-text (treesit-node-child node 1) t)
|
||||
"Root table"))))
|
||||
|
||||
;;;###autoload
|
||||
(add-to-list 'auto-mode-alist '("\\.toml\\'" . toml-ts-mode))
|
||||
|
||||
;;;###autoload
|
||||
|
@ -302,9 +302,15 @@ properties."
|
||||
(defun treesit-parent-until (node pred &optional include-node)
|
||||
"Return the closest parent of NODE that satisfies PRED.
|
||||
|
||||
Return nil if none was found. PRED should be a function that
|
||||
takes one argument, the parent node, and return non-nil/nil for
|
||||
match/no match.
|
||||
This function successively examines the parent of NODE, then
|
||||
the parent of the parent, etc., until it finds the first
|
||||
ancestor node which satisfies the predicate PRED; then it
|
||||
returns that ancestor node. It returns nil if no ancestor
|
||||
node was found that satisfies PRED.
|
||||
|
||||
PRED should be a function that takes one argument, the node to
|
||||
examine, and returns a boolean value indicating whether that
|
||||
node is a match.
|
||||
|
||||
If INCLUDE-NODE is non-nil, return NODE if it satisfies PRED."
|
||||
(let ((node (if include-node node
|
||||
@ -315,8 +321,16 @@ If INCLUDE-NODE is non-nil, return NODE if it satisfies PRED."
|
||||
|
||||
(defun treesit-parent-while (node pred)
|
||||
"Return the furthest parent of NODE that satisfies PRED.
|
||||
Return nil if none was found. PRED should be a function that
|
||||
takes one argument, the parent node."
|
||||
|
||||
This function successively examines the parent of NODE, then
|
||||
the parent of the parent, etc., until it finds an ancestor node
|
||||
which no longer satisfies the predicate PRED; it returns the last
|
||||
examined ancestor that satisfies PRED. It returns nil if no
|
||||
ancestor node was found that satisfies PRED.
|
||||
|
||||
PRED should be a function that takes one argument, the node to
|
||||
examine, and returns a boolean value indicating whether that
|
||||
node is a match."
|
||||
(let ((last nil))
|
||||
(while (and node (funcall pred node))
|
||||
(setq last node
|
||||
|
@ -1072,7 +1072,7 @@ usage: (gnutls-error-string ERROR) */)
|
||||
|
||||
DEFUN ("gnutls-deinit", Fgnutls_deinit, Sgnutls_deinit, 1, 1, 0,
|
||||
doc: /* Deallocate GnuTLS resources associated with process PROC.
|
||||
See also `gnutls-init'. */)
|
||||
See also `gnutls-boot'. */)
|
||||
(Lisp_Object proc)
|
||||
{
|
||||
return emacs_gnutls_deinit (proc);
|
||||
|
15
src/xdisp.c
15
src/xdisp.c
@ -23322,8 +23322,9 @@ extend_face_to_end_of_line (struct it *it)
|
||||
it->avoid_cursor_p = true;
|
||||
it->object = Qnil;
|
||||
|
||||
const int stretch_ascent = (((it->ascent + it->descent)
|
||||
* FONT_BASE (font)) / FONT_HEIGHT (font));
|
||||
const int stretch_height = it->ascent + it->descent;
|
||||
const int stretch_ascent =
|
||||
(stretch_height * FONT_BASE (font)) / FONT_HEIGHT (font);
|
||||
|
||||
if (indicator_column >= 0
|
||||
&& indicator_column > it->current_x
|
||||
@ -23343,8 +23344,7 @@ extend_face_to_end_of_line (struct it *it)
|
||||
if (stretch_width > 0)
|
||||
{
|
||||
append_stretch_glyph (it, Qnil, stretch_width,
|
||||
it->ascent + it->descent,
|
||||
stretch_ascent);
|
||||
stretch_height, stretch_ascent);
|
||||
}
|
||||
|
||||
/* Generate the glyph indicator only if
|
||||
@ -23352,6 +23352,8 @@ extend_face_to_end_of_line (struct it *it)
|
||||
if (it->current_x < indicator_column)
|
||||
{
|
||||
const int save_face_id = it->face_id;
|
||||
const int save_ascent = it->ascent;
|
||||
const int save_descent = it->descent;
|
||||
it->char_to_display
|
||||
= XFIXNAT (Vdisplay_fill_column_indicator_character);
|
||||
it->face_id
|
||||
@ -23359,6 +23361,8 @@ extend_face_to_end_of_line (struct it *it)
|
||||
0, extend_face_id);
|
||||
PRODUCE_GLYPHS (it);
|
||||
it->face_id = save_face_id;
|
||||
it->ascent = save_ascent;
|
||||
it->descent = save_descent;
|
||||
}
|
||||
}
|
||||
|
||||
@ -23372,8 +23376,7 @@ extend_face_to_end_of_line (struct it *it)
|
||||
{
|
||||
clear_position (it);
|
||||
append_stretch_glyph (it, Qnil, stretch_width,
|
||||
it->ascent + it->descent,
|
||||
stretch_ascent);
|
||||
stretch_height, stretch_ascent);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user