]> git.eshelyaron.com Git - emacs.git/log
emacs.git
10 days ago; * .mailmap: Add Felicián Németh.
Stefan Kangas [Sun, 9 Feb 2025 15:26:48 +0000 (16:26 +0100)]
; * .mailmap: Add Felicián Németh.

(cherry picked from commit f599860b50ecd288144987ff9de40ca3b40a417b)

10 days ago; * etc/PROBLEMS: Fix last change (bug#74220).
Eli Zaretskii [Sun, 9 Feb 2025 07:17:31 +0000 (09:17 +0200)]
; * etc/PROBLEMS: Fix last change (bug#74220).

(cherry picked from commit 798ce492d51d16204a28820eb0c8d61fdc8a49e7)

10 days ago; * etc/PROBLEMS: Document problem with GPM mouse display (bug#74220).
Jared Finder [Sun, 9 Feb 2025 03:08:05 +0000 (19:08 -0800)]
; * etc/PROBLEMS: Document problem with GPM mouse display (bug#74220).

(cherry picked from commit d78a4c0f4cb534dd5b1dc8cfe91f34b6d2c996d3)

10 days ago; (scope--analyze-define-widget): Fix typo.
Eshel Yaron [Wed, 12 Feb 2025 10:22:14 +0000 (11:22 +0100)]
; (scope--analyze-define-widget): Fix typo.

10 days agominibuffer.el: Fix completions header-line mouse clicks
Eshel Yaron [Wed, 12 Feb 2025 08:43:09 +0000 (09:43 +0100)]
minibuffer.el: Fix completions header-line mouse clicks

See bug#75219

10 days agoscope.el, elisp-mode.el: Support thing-at-point "things"
Eshel Yaron [Wed, 12 Feb 2025 08:42:16 +0000 (09:42 +0100)]
scope.el, elisp-mode.el: Support thing-at-point "things"

10 days agoscope.el: Recognize face arg of pulse-momentary-highlight-region
Eshel Yaron [Wed, 12 Feb 2025 08:41:39 +0000 (09:41 +0100)]
scope.el: Recognize face arg of pulse-momentary-highlight-region

11 days agoansi-osc-directory-tracker respects remote files
shipmints [Mon, 10 Feb 2025 11:55:54 +0000 (12:55 +0100)]
ansi-osc-directory-tracker respects remote files

* etc/NEWS: ansi-osc-directory-tracker supports remote directories.

* lisp/ansi-osc.el (ansi-osc-directory-tracker):
If 'default-directory' is a remote-file form, retain that form
when 'default-directory' changes are detected.

(cherry picked from commit 424fc4a56cb33af05a1d59c75c9159df7086b3c6)

11 days ago* doc/misc/ert.texi (Helper Functions): Improve index. Fix markups.
Michael Albinus [Mon, 10 Feb 2025 10:30:32 +0000 (11:30 +0100)]
* doc/misc/ert.texi (Helper Functions): Improve index.  Fix markups.

(cherry picked from commit b92cfadc6af3abf773f666bedc571bb85402b001)

11 days agoImplement tab line dragging with mouse (Bug#76084)
Martin Rudalics [Mon, 10 Feb 2025 09:58:05 +0000 (10:58 +0100)]
Implement tab line dragging with mouse (Bug#76084)

* lisp/mouse.el (mouse-drag-line): Allow tab line dragging if
there's a window above.  Consider tab line height when
calculating 'position'.  Add 'tab-line' binding to transient
map.
(mouse-drag-tab-line): Have it drag the tab line only (and not
the entire frame) when the tab line is between two windows.

(cherry picked from commit efa9b97b454d2bf56d50fb4ef37e8378bb2e4b2a)

11 days agoFix handling of visibility on tty frames (Bug#76031)
Martin Rudalics [Mon, 10 Feb 2025 09:36:38 +0000 (10:36 +0100)]
Fix handling of visibility on tty frames (Bug#76031)

* src/frame.h (FRAME_REDISPLAY_P): Remove.  Use the new function
frame_redisplay_p instead.  Extern frame_redisplay_p.
* src/frame.c (frame_redisplay_p): New function to replace
FRAME_REDISPLAY_P macro.
(make_terminal_frame): Don't tinker with frame visibility and
don't make the new frame the terminal's top frame.
(do_switch_frame): Make sure frame switched to and any of its
ancestors are visible.  Don't reset the visibility of other
frames.
(other_frames): Do not assume tty frames are by default visible.
(Fmake_frame_invisible): When making the selected tty frame
invisible, explicitly select the next visible frame.
* src/dispnew.c (Fredraw_display): Use frame_redisplay_p instead
of FRAME_REDISPLAY_P.
* src/xdisp.c (clear_garbaged_frames, echo_area_display)
(prepare_menu_bars, redisplay_internal, display_and_set_cursor)
(gui_clear_cursor): Use frame_redisplay_p instead of
FRAME_REDISPLAY_P.
* src/keyboard.c (tty_read_avail_input): When storing an event
and the selected frame is a child frame whose root is its
terminal's top frame, set the frame_or_window slot to the child
frame since otherwise the next switch frame event will select
the top frame instead.

(cherry picked from commit 4d1ceac9f9332f74ac2ab300eb2a629ea742b1dc)

11 days ago* lisp/treesit.el: Fix treesit-outline.
Juri Linkov [Mon, 10 Feb 2025 07:19:46 +0000 (09:19 +0200)]
* lisp/treesit.el: Fix treesit-outline.

(treesit-outline--at-point): New internal function.
(treesit-outline-search, treesit-outline-level):
Use 'treesit-outline--at-point'.

(cherry picked from commit 302274b18625b04d1f52fe4c1e52dbcd2cd5124b)

11 days agoFix compilation on Haiku Nightly hrev58622
Po Lu [Mon, 10 Feb 2025 04:04:27 +0000 (12:04 +0800)]
Fix compilation on Haiku Nightly hrev58622

* configure.ac (BOBJECTLIST_OWNERSHIP_IS_TEMPLATE_PARAMETER):
Define if BObjectList ownership over its contents is specified
as a template parameter.

* src/haiku_support.cc (class EmacsFontSelectionDialog)
[BOBJECTLIST_OWNERSHIP_IS_TEMPLATE_PARAMETER]: Adjust
accordingly.

(cherry picked from commit 6e8bb757841d76e2df9757404dfafc5cb7777cb8)

11 days agoDon't use deprecated unload-hook variables in Gnus
Stefan Kangas [Sun, 9 Feb 2025 23:40:23 +0000 (00:40 +0100)]
Don't use deprecated unload-hook variables in Gnus

* lisp/gnus/gnus-registry.el (gnus-registry-unload-hook):
* lisp/gnus/spam-stat.el (spam-stat-unload-hook):
* lisp/gnus/spam.el (spam-unload-hook): Rename functions from this...

* lisp/gnus/gnus-registry.el (gnus-registry-unload-function):
* lisp/gnus/spam-stat.el (spam-stat-unload-function):
* lisp/gnus/spam.el (spam-unload-function): ...to this.  Don't set the
corresponding variables, always return nil, update callers, and leave
old name as obsolete function aliases.
Ref: https://lists.gnu.org/r/emacs-devel/2025-02/msg00294.html

(cherry picked from commit ceef9025944fd3d51122f913ed9a74a259db55f7)

11 days agoFix fontification of ATTRIBUTE_NO_SANITIZE_ADDRESS functions
Stefan Kangas [Sun, 9 Feb 2025 23:03:12 +0000 (00:03 +0100)]
Fix fontification of ATTRIBUTE_NO_SANITIZE_ADDRESS functions

* .dir-locals.el (c-mode) <c-noise-macro-names>:
Add "ATTRIBUTE_NO_SANITIZE_ADDRESS", to fontify functions with this
attribute correctly.

(cherry picked from commit 1c16d81bac05f0feb9e2fabfd435f92e9ac951ee)

11 days ago; Add missing section marker to ert.el
Stefan Kangas [Sun, 9 Feb 2025 21:17:45 +0000 (22:17 +0100)]
; Add missing section marker to ert.el

(cherry picked from commit 893f6652da3127bb894c822f338179aa6c0cb1cc)

11 days agoUse unload-function instead of unload-hook in ert
Stefan Kangas [Sun, 9 Feb 2025 21:16:09 +0000 (22:16 +0100)]
Use unload-function instead of unload-hook in ert

* lisp/emacs-lisp/ert.el
(ert-unload-function): Rename from 'ert--unload-function'.
(ert--unload-function): Make into obsolete function alias for the above.

(cherry picked from commit 859608c05152ef7efdc55b3fcd3997d7801125f8)

11 days agoImprove treesit settings for {json,html,toml,yaml}-ts-mode (bug#73404)
Juri Linkov [Sun, 9 Feb 2025 17:54:02 +0000 (19:54 +0200)]
Improve treesit settings for {json,html,toml,yaml}-ts-mode (bug#73404)

* lisp/progmodes/json-ts-mode.el (json-ts-mode): Add 'list' thing
to 'treesit-thing-settings'.
(json-ts-mode): Disable outlines.

* lisp/textmodes/html-ts-mode.el (html-ts-mode--defun-name):
Get a grandchild 'tag_name' from 'element' that was already
defined by 'treesit-defun-type-regexp'.
(html-ts-mode--outline-predicate): New function.
(html-ts-mode): Add "comment" to the 'list' thing
in 'treesit-thing-settings'.  Use "tag_name" and "attribute"
in 'sentence' to conform to sentence navigating arguments
in other ts-modes.  Remove unnecessary heading
from 'treesit-simple-imenu-settings' and use "element"
supported by 'html-ts-mode--defun-name'.
Set 'treesit-outline-predicate' to 'html-ts-mode--outline-predicate'.

* lisp/textmodes/toml-ts-mode.el (toml-ts-mode):
Add 'treesit-thing-settings'.

* lisp/textmodes/yaml-ts-mode.el (yaml-ts-mode--defun-name)
(yaml-ts-mode--outline-predicate): New functions.
(yaml-ts-mode): Set 'treesit-defun-type-regexp',
'treesit-defun-name-function', 'treesit-defun-tactic'.
Add 'sentence' to 'treesit-thing-settings'.
Set 'treesit-simple-imenu-settings' and 'treesit-outline-predicate'.
Use 'kill-local-variable' for 'forward-sexp-function'
and 'show-paren-data-function' instead of resetting their value.

* lisp/treesit.el (treesit-outline-search): Check for the thing
before the end of the line to support such case when the thing
fits on the current line and ends before the end of the line
such as e.g. '<h1>...</h1>' in html-ts-mode.
(treesit-hs-find-next-block, treesit-hs-inside-comment-p):
Use anchors for "\\`comment\\'" (bug#75609).

(cherry picked from commit e9d17e41971c887675d52e1dcee21978d4247130)

11 days ago; Silence byte-compiler
Stefan Kangas [Sun, 9 Feb 2025 15:16:01 +0000 (16:16 +0100)]
; Silence byte-compiler

* lisp/net/eww.el (eww-bookmark-kill):
* test/lisp/savehist-tests.el: Silence byte-compiler.

(cherry picked from commit 7e60ceeccbca1b9f67297ad7e9f11fd498b28d4d)

11 days ago; Simplify last commit
Stefan Kangas [Sun, 9 Feb 2025 14:56:35 +0000 (15:56 +0100)]
; Simplify last commit

* lisp/mail/footnote.el (footnote-mode): Simplify last change.

(cherry picked from commit 5c07fc7557ad9dd353f18a270042d9e844c85bef)

11 days agoscope.el: Fix defalias handling
Eshel Yaron [Mon, 10 Feb 2025 20:54:25 +0000 (21:54 +0100)]
scope.el: Fix defalias handling

11 days agoAdd mouse face to semantic face instead of replacing
Eshel Yaron [Mon, 10 Feb 2025 20:01:40 +0000 (21:01 +0100)]
Add mouse face to semantic face instead of replacing

11 days ago* lisp/help-fns.el (help-fns--insert-menu-bindings): Bug fix.
Eshel Yaron [Mon, 10 Feb 2025 19:01:33 +0000 (20:01 +0100)]
* lisp/help-fns.el (help-fns--insert-menu-bindings): Bug fix.

11 days agoelisp-mode.el: Show symbol documentation via 'help-echo'
Eshel Yaron [Mon, 10 Feb 2025 19:01:04 +0000 (20:01 +0100)]
elisp-mode.el: Show symbol documentation via 'help-echo'

11 days agoscope.el: Recognize 'mouse-face' text property
Eshel Yaron [Mon, 10 Feb 2025 18:58:02 +0000 (19:58 +0100)]
scope.el: Recognize 'mouse-face' text property

11 days agoFix next/previous-line-completion
Eshel Yaron [Mon, 10 Feb 2025 18:57:40 +0000 (19:57 +0100)]
Fix next/previous-line-completion

13 days agoImprove filling with footnote-mode
Stefan Kangas [Sun, 9 Feb 2025 14:34:41 +0000 (15:34 +0100)]
Improve filling with footnote-mode

* lisp/mail/footnote.el (footnote-mode): Add regexp for footnotes
to sentence-end-base to improve filling.

(cherry picked from commit 64905eba2707f89c3befe99b36d14e24eeb9f8c0)

13 days agoscope.el, elisp-mode.el: Recognize EIEIO slot names.
Eshel Yaron [Sun, 9 Feb 2025 14:39:09 +0000 (15:39 +0100)]
scope.el, elisp-mode.el: Recognize EIEIO slot names.

13 days ago; Update lisp/ldefs-boot.el
Eshel Yaron [Sun, 9 Feb 2025 09:00:29 +0000 (10:00 +0100)]
; Update lisp/ldefs-boot.el

13 days ago* lisp/vc/diff-mode.el (diff-mode): Disable view-mode keybindings.
Juri Linkov [Sun, 9 Feb 2025 07:40:44 +0000 (09:40 +0200)]
* lisp/vc/diff-mode.el (diff-mode): Disable view-mode keybindings.

Put the property 'mode-class' with the value 'special' on the symbol
'diff-mode'.  This fixes the case when 'view-read-only' is non-nil
by disabling activation of 'view-mode' that overrides single keys
from 'diff-mode-shared-map' (bug#75993).

(cherry picked from commit 35fa7126903a0ac6a28901d194f0753acf60928d)

13 days ago; Skip commit 821ec7851216f7c8012a8b2c7a538abc8a43a1bb
Eshel Yaron [Sun, 9 Feb 2025 08:47:55 +0000 (09:47 +0100)]
; Skip commit 821ec7851216f7c8012a8b2c7a538abc8a43a1bb

13 days agoFix program execution on Android 15 QPR2 Beta
Po Lu [Sun, 9 Feb 2025 04:06:52 +0000 (12:06 +0800)]
Fix program execution on Android 15 QPR2 Beta

* exec/trace.c (process_vm_readv, process_vm_writev): New
function pointers.  Attempt to load them on recent Android
systems when `exec' was not linked with a sufficiently
up-to-date libc.
(read_memory, user_copy): Always use process_vm_readv and
process_vm_writev if available.
(handle_openat): Write trailing NULL byte of filename to user
buffer.
(exec_init): Attempt to dlsym process_vm_readv and
process_vm_writev.

(cherry picked from commit 563efd6838c1b62c8962385911b5fd5c5637ab96)

13 days agoUse vtable in eww-list-bookmarks
Sebastián Monía [Sun, 1 Dec 2024 05:29:08 +0000 (00:29 -0500)]
Use vtable in eww-list-bookmarks

* lisp/net/eww.el (eww-list-bookmarks): Move logic to...
(eww--bookmark-prepare, eww--bookmark-format-data) ... these, and use
'vtable'.
(eww-bookmark-kill, eww-bookmark-yank, eww-bookmark-browse)
(eww-next-bookmark, eww-previous-bookmark, eww-buffers-mode-map): Use
'vtable-current-object'.

(cherry picked from commit 1294c5ed5fb9251c16c0b48293953e2a6ce06e96)

13 days ago;* doc/misc/dired-x.texi: Remove unnecessary paren (Bug#76148)
Philip Kaludercic [Sat, 8 Feb 2025 21:39:47 +0000 (22:39 +0100)]
;* doc/misc/dired-x.texi: Remove unnecessary paren  (Bug#76148)

(cherry picked from commit eb365182440f236e6b5fe2a9192a0c3675e0e306)

13 days agoRefresh package list without blocking
Philip Kaludercic [Fri, 31 Jan 2025 07:55:02 +0000 (08:55 +0100)]
Refresh package list without blocking

* lisp/emacs-lisp/package.el (package-refresh-contents): Run
asynchronously when invoked interactively.
* etc/NEWS: Mention the change.

(cherry picked from commit 4cc8709ac2ceb0888ed1868292400049b98fe642)

13 days agoDon't try to unregister tracker ID twice
Andreas Schwab [Sat, 8 Feb 2025 18:32:06 +0000 (19:32 +0100)]
Don't try to unregister tracker ID twice

* lisp/vc/diff-mode.el (diff-minor-mode): Clear
diff--track-changes after unregistering.

(cherry picked from commit a0e1115caa49be098efb2be4d721a7ba218fc30f)

13 days ago* doc/misc/ert.texi (Helper Functions): New node.
Michael Albinus [Sat, 8 Feb 2025 16:36:16 +0000 (17:36 +0100)]
* doc/misc/ert.texi (Helper Functions): New node.

(cherry picked from commit bdf77074bf3ce4d532d6accb44faf4ec0769f7ea)

13 days agoEglot: auto-expand first level in type and call hierarchies
João Távora [Sat, 8 Feb 2025 13:42:08 +0000 (13:42 +0000)]
Eglot: auto-expand first level in type and call hierarchies

* lisp/progmodes/eglot.el (eglot--hierarchy-2): Use widget-apply-action.

(cherry picked from commit 37c07f383b053a40b31439076bec0b170c1281de)

13 days agoEglot: do not activate unsupported menu items
Felicián Németh [Sat, 8 Feb 2025 10:53:31 +0000 (11:53 +0100)]
Eglot: do not activate unsupported menu items

* lisp/progmodes/eglot.el (eglot-menu): Do not activate items that
the server does not support.

(cherry picked from commit 3fde13a5019bafbd2b1059e061a4b0869123564f)

13 days ago; Skip commit 36c91fdacc4995672e88e147c34b19d9244da033
Eshel Yaron [Sun, 9 Feb 2025 08:46:21 +0000 (09:46 +0100)]
; Skip commit 36c91fdacc4995672e88e147c34b19d9244da033

13 days ago; * admin/authors.el (authors-aliases): Add aliases.
Eli Zaretskii [Sat, 8 Feb 2025 12:06:00 +0000 (14:06 +0200)]
; * admin/authors.el (authors-aliases): Add aliases.

(cherry picked from commit ed9dd4705c7299c12c18d566bd8db4183b1c57f3)

13 days ago; Skip commit ad157a86ea9486fcd54522a198108258be28e151
Eshel Yaron [Sun, 9 Feb 2025 08:46:13 +0000 (09:46 +0100)]
; Skip commit ad157a86ea9486fcd54522a198108258be28e151

13 days agoEliminate savehist duplicated symbols
shipmints [Fri, 7 Feb 2025 19:25:50 +0000 (14:25 -0500)]
Eliminate savehist duplicated symbols

* lisp/savehist.el (savehist-save): Do not save symbols
duplicated between 'savehist-minibuffer-history-variables'
and 'savehist-additional-variables'.  (Bug#76123)
* test/lisp/savehist-tests.el: New file.

(cherry picked from commit 3123562866130d4ab45c5af7b80aaf0815060ce5)

13 days ago; Avoid passive tense in Emacs manual
Eli Zaretskii [Sat, 8 Feb 2025 11:47:11 +0000 (13:47 +0200)]
; Avoid passive tense in Emacs manual

* doc/lispref/variables.texi (Defining Variables): Avoid passive
tense (bug#76135).

(cherry picked from commit 223ee56aae7cf052419cf026bce4d7ea29671286)

13 days agoCleanup tool-bar-mode documentation
Jared Finder [Thu, 6 Feb 2025 22:32:00 +0000 (14:32 -0800)]
Cleanup tool-bar-mode documentation

* doc/emacs/frames.texi (Tool Bars): Downcase concept index
text.
* lisp/cus-start.el (standard): Copy custom :tag strings
from window-tool-bar-style's, which are more descriptive.
(Bug#75844)

(cherry picked from commit b023d43ee7908d805a6776f18d1a94b213a021e3)

13 days agoUpdate window-tool-bar
Jared Finder [Sun, 2 Feb 2025 18:11:20 +0000 (10:11 -0800)]
Update window-tool-bar

Add support for the remaining tool bar item specs, new user
option `window-tool-bar-style', and add support for older
Emacs versions.

* doc/emacs/windows.texi (Window Tool Bar): Add documentation
for new user option `window-tool-bar-style'.
* lisp/window-tool-bar.el
(customize-package-emacs-version-alist): Add package-version to
Emacs version mapping.
(window-tool-bar-string): Do not show spacers after hidden
buttons.
(window-tool-bar--keymap-entry-to-string): Call new function
`window-tool-bar--style'.  Add handling for :visible, :filter,
:button, :vert-only, and :help item specs.  Show key bindings.
(window-tool-bar--last-command-triggers-refresh-p): Use "cannot"
in comment.
(window-tool-bar--allow-images): Delete this, it is replaced by
new user option `window-tool-bar-style'.
(window-tool-bar--use-images): Delete this, it is replaced by
new function `window-tool-bar--style'.
(window-tool-bar--turn-on): Move earlier in file, no changes.
(window-tool-bar-style): New user option supporting all values
`tool-bar-style' supports as well as inheriting from
tool-bar-style.
(window-tool-bar--style): New function to calculate active tool
bar style based on `window-tool-bar-style', `tool-bar-style',
and frame capabilities.
(global-window-tool-bar-mode, window-tool-bar-button)
(window-tool-bar-button-hover, window-tool-bar-button-disabled):
Retroactively add package-version.
(window-tool-bar-button-checked)
(window-tool-bar-button-checked-hover): New faces for :button
item spec.
(window-tool-bar--get-keymap): Call new function
`window-tool-bar--style'.  (Bug#75844)

(cherry picked from commit 72bbbff7e8128fe14c0b69c7282667788758b8b4)

13 days agolisp/progmodes/csharp-mode.el: Improve string-interpolation
Jostein Kjønigsen [Sat, 1 Feb 2025 21:16:36 +0000 (22:16 +0100)]
lisp/progmodes/csharp-mode.el: Improve string-interpolation

Correctly fontify expressions inside string-interpolations.
(Bug#75580)

(cherry picked from commit 535eec814484c437443051e0b6d2d654eef9b7e0)

13 days ago* lisp/mouse.el (mouse-skip-word): Avoid errors at EOB. (Bug#75965)
Eli Zaretskii [Sat, 8 Feb 2025 10:41:36 +0000 (12:41 +0200)]
* lisp/mouse.el (mouse-skip-word): Avoid errors at EOB.  (Bug#75965)

(cherry picked from commit 512187feb046aea6de6d26e45271481a324a928c)

13 days agoAdd 'nnregistry-request-group' function for 'gnus-refer-article'
Björn Bidar [Tue, 21 Jan 2025 23:28:22 +0000 (01:28 +0200)]
Add 'nnregistry-request-group' function for 'gnus-refer-article'

nnregistry doesn't handle any servers or groups; however we have to
define the dummy function so Gnus-registry works as refer article
method, as the `gnus-check-group-server' function requires it.
The latter function is called when referring to articles to check the
source group first before actually requesting any articles.
* lisp/gnus/nnregistry.el (nnregistry-request-group): New deffoo.
(Bug#22414)

(cherry picked from commit 628e3cb22d196c31fc2452c3eab4a62af4bf66b2)

13 days agoPrioritize split along the longest edge by default.
Nicolas Despres [Sat, 21 Dec 2024 11:45:12 +0000 (12:45 +0100)]
Prioritize split along the longest edge by default.

Currently, `split-window-sensibly' prefers to try to split
vertically first, disregarding the actual shape of the frame
or the user preferences.  This is a good default when Emacs
is taller than wider.  However, when Emacs is in full-screen
(landscape screen layout), trying to split vertically may not
be what the user expected, since there is plenty of space
available on the right.

Typical scenario: Emacs is in landscape layout, one buffer is
open in a window covering the entire frame.  Another buffer is
opened in a second window (C-x 4 f). Both splits are feasible
but users may prefer the horizontal one.

This patch preserves the behavior of the `split-height-threshold'
and `split-width-threshold' variables.  Splitting continues not
to be permitted if the edge length is below the threshold.

* lisp/window.el (split-window-sensibly): First tried split
direction follows user preferences.

* etc/NEWS: Add an entry for new variable
`split-window-preferred-direction'.
* doc/emacs/windows.texi: Document new variable.

(cherry picked from commit 77ff0df588b6691db38be810210225e84d15eca3)

13 days ago; Make ERC test fixture more robust
F. Jason Park [Sat, 8 Feb 2025 02:54:22 +0000 (18:54 -0800)]
; Make ERC test fixture more robust

* test/lisp/erc/erc-tests.el (erc-tests--assert-printed-in-subprocess):
Scan for sentinel before reading.
(erc--find-mode, erc--essential-hook-ordering): Use contrived :result
protocol expected by `erc-tests--assert-printed-in-subprocess'.
* test/lisp/erc/resources/erc-tests-common.el
(erc-tests-common-create-subprocess): Divert stderr to messages buffer.

(cherry picked from commit 028913c446b8f06288f2e17be91aef701dc58ba4)

13 days agoMore clearly define local module behavior in ERC
F. Jason Park [Tue, 4 Feb 2025 14:11:50 +0000 (06:11 -0800)]
More clearly define local module behavior in ERC

* doc/misc/erc.texi (Modules): Label all local modules as being such.
Move `querypoll' to the auxiliary section.  Rework entire "Local
Modules" portion.
* lisp/erc/erc-goodies.el (erc-keep-place-indicator-mode)
(erc-command-indicator-mode): Mention what buffer types they operate in.
* lisp/erc/erc-nicks.el (erc-nicks-mode): Mention the mode is enabled in
all buffers.
* lisp/erc/erc-notify.el (erc-querypoll-mode): Mention which buffers it
operates in.
* lisp/erc/erc-sasl.el (erc-sasl-mode): Disable completely in target
buffers so its mode variable is nil.
* lisp/erc/erc-services.el (erc-services-regain-mode): Disable in target
buffers.
* lisp/erc/erc.el (erc-open): When activating local modules, skip those
that have just been enabled by a fellow module.  Do this even though
their setup code is meant to be idempotent.
* test/lisp/erc/erc-scenarios-base-local-modules.el
(erc-scenarios-base-local-modules--toggle-helpers): Revise to assert
current behavior.  (Bug#57955)

(cherry picked from commit e9408918f4e7fe00eb4e25e1e5428fb26c4ad847)

13 days agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Fri, 7 Feb 2025 21:02:02 +0000 (13:02 -0800)]
Update from Gnulib by running admin/merge-gnulib

(cherry picked from commit 0e4883f18eecea59e537e2368a0f5674888a1af7)

13 days agoRemove leading '*' from docstrings in cc-vars.el
Stefan Kangas [Thu, 23 Jan 2025 22:49:52 +0000 (23:49 +0100)]
Remove leading '*' from docstrings in cc-vars.el

* lisp/progmodes/cc-vars.el (c-make-font-lock-extra-types-blurb):
Remove leading '*' from generated docstrings.  (Bug#75793)

(cherry picked from commit 93206cbcea31add3da76cc1025b2f148312fe6f1)

13 days agoFix gnus-score-find-score-files-function :type
Mauro Aranda [Fri, 7 Feb 2025 10:31:34 +0000 (07:31 -0300)]
Fix gnus-score-find-score-files-function :type

* lisp/gnus/gnus-score.el (gnus-score-find-score-files-function): Delete
extra quotes.  (Bug#76118)

(cherry picked from commit be4cf26c16794021ae790f1eb82fccea6efaa354)

13 days agoEglot: fix bug in eglot--lookup-mode
João Távora [Fri, 7 Feb 2025 20:33:41 +0000 (20:33 +0000)]
Eglot: fix bug in eglot--lookup-mode

When lookup in eglot-server-programs fails, fall back to a
half-decent (((foo-mode . "foo")) . nil) return value.  This
enables interactive M-x eglot for modes not yet registered in
e-s-p.

* lisp/progmodes/eglot.el (eglot--lookup-mode): Fallback when
lookup fails.

(cherry picked from commit 7169a5d5636ddede2fe70a31de098031f20f70b1)

13 days agoMark IRIX support in GUD as obsolete
Stefan Kangas [Fri, 7 Feb 2025 20:22:38 +0000 (21:22 +0100)]
Mark IRIX support in GUD as obsolete

* lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p)
(gud-irixdbx-marker-filter): Mark as obsolete.  We stopped supporting
IRIX in Emacs 26.1 (commit 6bc8689c0428).
* lisp/progmodes/gud.el (dbx): Suppress obsoletion warnings.

(cherry picked from commit 0c0f5f5df24947f0658c274f9fa62829ef5401dd)

13 days agotime-stamp: Better handling of some edge cases
Stephen Gildea [Fri, 7 Feb 2025 17:17:26 +0000 (09:17 -0800)]
time-stamp: Better handling of some edge cases

* lisp/time-stamp.el (time-stamp-count): Require confirmation if large.
(time-stamp-once): Correctly handle a start regexp matching 0 chars.
* test/lisp/time-stamp-tests.el (time-stamp-custom-start): New test.

(cherry picked from commit 280b25e0096bb97fb473a8da9b4635fb2d6e5385)

13 days ago; * src/keyboard.c (syms_of_keyboard): Fix previous change.
Robert Pluim [Fri, 7 Feb 2025 14:48:47 +0000 (15:48 +0100)]
; * src/keyboard.c (syms_of_keyboard): Fix previous change.

(cherry picked from commit a62b58648ac54feb8fb81aefdb0461cb11bf6a81)

13 days agoSuppress unneded events in special-event-map
Michael Albinus [Fri, 7 Feb 2025 14:14:47 +0000 (15:14 +0100)]
Suppress unneded events in special-event-map

* src/keyboard.c (keys_of_keyboard): Don't add ns-put-working-text
and ns-unput-working-text to Vspecial_event_map unless on NS port.

(cherry picked from commit 0065c9dbb8fb7d2b802e8f9a327f33049afec4ad)

13 days agoUse insert-special-event in Tramp
Michael Albinus [Fri, 7 Feb 2025 13:41:58 +0000 (14:41 +0100)]
Use insert-special-event in Tramp

* lisp/net/tramp-gvfs.el (tramp-gvfs-monitor-process-filter):
* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter)
(tramp-sh-inotifywait-process-filter): Use `insert-special-event'
if possible.

(cherry picked from commit 8be3be7330953dd015df28369c1f071178248bb4)

13 days agoEglot: add support for call and type hierarchies
João Távora [Fri, 7 Feb 2025 11:08:29 +0000 (11:08 +0000)]
Eglot: add support for call and type hierarchies

* lisp/progmodes/eglot.el (eglot--lsp-interface-alist): Add new
interfaces.
(eglot-client-capabilities): Advertise support for callHierarchy
and typeHierarchy.
(eglot-ignored-server-capabilities): Add new providers.
(eglot--goto): New helper.
(eglot-menu): Add new menu items.
(eglot-handle-request window/showDocument): Use eglot--goto.
(button, tree-widget): Require them.
(eglot--hierarchy-item): New button type.
(eglot--hierarchy-interactive, eglot--hierarchy-children)
(eglot--hierarchy-label, eglot--hierarchy-1, eglot--hierarchy-2):
New internal functions.
(eglot--define-hierarchy-command): New macro.
(eglot-show-type-hierarchy, eglot-show-call-hierarchy)
(eglot-hierarchy-center-on-node): New commands.
(eglot--hierarchy-roots, eglot--hierarchy-specs): New local variables.
(eglot-hierarchy-label-map): New keymap.
(eglot-hierarchy-mode): New major mode.

* doc/misc/eglot.texi (Eglot Commands, Eglot Features): Describe
new feature.

* etc/EGLOT-NEWS (Changes in upcoming Eglot): Mention new feature.

(cherry picked from commit 1ef9de69b3c3d8254ab58bf455137a4439dce516)

13 days ago; * src/keyboard.c (Finsert_special_event): Don't use "//".
Eli Zaretskii [Fri, 7 Feb 2025 11:37:56 +0000 (13:37 +0200)]
; * src/keyboard.c (Finsert_special_event): Don't use "//".

(cherry picked from commit f806b9cba6568433e36878ed005673a5788c004f)

13 days agoNew function insert-special-event and special event sleep-event
Michael Albinus [Fri, 7 Feb 2025 11:04:05 +0000 (12:04 +0100)]
New function insert-special-event and special event sleep-event

* doc/lispref/commands.texi (Misc Events): Add sleep-event.
(Special Events): New function insert-special-event.

* etc/NEWS: New function insert-special-event.  New event 'sleep-event'.
Fix typos.

* src/keyboard.c (Finsert_special_event): New defun.
(syms_of_keyboard): Declare Qsleep_event.  Define subroutine
Sinsert_special_event.  Add sleep-event to Vspecial_event_map.
(Bug#63620)
(kbd_buffer_get_event, make_lispy_event)
(init_while_no_input_ignore_events, is_ignored_event):
* src/termhooks.h (event_kind): Add SLEEP_EVENT.

(cherry picked from commit d41178368eb73873f34c15b58062a7447802c914)

13 days ago; Fix files-tests
Gerd Möllmann [Fri, 7 Feb 2025 10:27:06 +0000 (11:27 +0100)]
; Fix files-tests

* test/lisp/files-tests.el (files-tests--with-buffer-offer-save):
Override symbol function of read-key instead of read-event.

(cherry picked from commit 92aecdfd9fda59f3ea66c5709f0bc7af882a0c0d)

13 days ago* lisp/progmodes/sh-script.el (bash-ts-mode): Improve treesit settings.
Juri Linkov [Fri, 7 Feb 2025 07:47:41 +0000 (09:47 +0200)]
* lisp/progmodes/sh-script.el (bash-ts-mode): Improve treesit settings.

Add 'list' and 'sentence' things to treesit-thing-settings,
and move mistakenly added 'sentence' to 'text' (bug#73404).
Set 'treesit-defun-name-function' and 'treesit-simple-imenu-settings'.
Reset 'outline-regexp'.

(cherry picked from commit f6e6585f5751852dbdc972fef8fc5a3ccc6e4573)

13 days agoPrevent crash when requesting storage permissions on Android
Po Lu [Fri, 7 Feb 2025 03:11:51 +0000 (11:11 +0800)]
Prevent crash when requesting storage permissions on Android

* java/org/gnu/emacs/EmacsService.java (requestStorageAccess30):
Handle ActivityNotFoundException.

(cherry picked from commit 1751739152149608d28853782ce53b0b9a749bb2)

13 days ago; Use an uninterned symbol in the inhibit-auto-revert expansion.
Tassilo Horn [Thu, 6 Feb 2025 19:07:09 +0000 (20:07 +0100)]
; Use an uninterned symbol in the inhibit-auto-revert expansion.

(cherry picked from commit be316dc1c74fc547fe83c0426fdec3ffd4e5fb1f)

13 days ago; Rename internal variable in inhibit-auto-revert
Michael Albinus [Thu, 6 Feb 2025 15:56:07 +0000 (16:56 +0100)]
; Rename internal variable in inhibit-auto-revert

* lisp/autorevert.el (inhibit-auto-revert): Call internal variable
`iar-buf' in order not to mismatch with variables outside the macro.

(cherry picked from commit 811d575336942b1cd1e1c6fb50620babdf9cc82c)

13 days agoImprove documentation of 'file-name-concat'
Eli Zaretskii [Thu, 6 Feb 2025 08:42:04 +0000 (10:42 +0200)]
Improve documentation of 'file-name-concat'

* doc/lispref/files.texi (Directory Names):
* src/fileio.c (Ffile_name_concat): Advise not to use
'file-name-concat' unless necessary.  (Bug#76023)

(cherry picked from commit 143f1096daa686841f1409bd63835167bb7e8aca)

13 days agoUse read-key in amp-y-or-n-p (bug#75886)
Gerd Möllmann [Thu, 6 Feb 2025 04:31:38 +0000 (05:31 +0100)]
Use read-key in amp-y-or-n-p (bug#75886)

* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Use read-key
so that C-g in recognized when defined in input-decode-map.

(cherry picked from commit ea04dd8ca93d609c0ee475c4acf58a56dfc0f1f3)

13 days agoAdd scheme-mode indentation for SRFI 64, R7RS guard
Antero Mejr [Sun, 19 Jan 2025 03:35:39 +0000 (22:35 -0500)]
Add scheme-mode indentation for SRFI 64, R7RS guard

* lisp/progmodes/scheme.el: Add properties for SRFI 64 and R7RS guard
identifiers.  (Bug#75999)

(cherry picked from commit d10acd16c90afe9fc8534fcd174397b7c403eda9)

13 days ago(font-ccl-encoder-alist): Delete variable, unused
Stefan Monnier [Thu, 6 Feb 2025 00:43:45 +0000 (19:43 -0500)]
(font-ccl-encoder-alist): Delete variable, unused

* src/ccl.c (syms_of_ccl): Remove `font-ccl-encoder-alist`.
* lisp/language/ethiopic.el (ccl-encode-ethio-font): Delete CCL program.
(font-ccl-encoder-alist): Don't modify it.

(cherry picked from commit 4be087f1e12afb2ea4de1a5686d14a28a9a20940)

13 days ago* lisp/dired-x.el (dired-omit-expunge): Escape '%' (bug#75877).
Eli Zaretskii [Wed, 5 Feb 2025 13:48:49 +0000 (15:48 +0200)]
* lisp/dired-x.el (dired-omit-expunge): Escape '%' (bug#75877).

(cherry picked from commit bfc8540da4521d460b72fdbc20edb3a0488c23c2)

13 days agoPrepare markers for insertions inside of a widget
Mauro Aranda [Fri, 17 Jan 2025 20:12:08 +0000 (17:12 -0300)]
Prepare markers for insertions inside of a widget

Recreating child widgets without recreating the parent widget
may lead to situations where the parent widget doesn't cover its
children or buttons entirely anymore.  This bug manifests as a
faulty fontification of children or buttons, for example.
(Bug#69941)

* lisp/wid-edit.el (widget--prepare-markers-for-inside-insertion)
(widget--prepare-markers-for-outside-insertion): New functions.
(widget-default-create): Use them.

* test/lisp/wid-edit-tests.el (widget-test-insertion-at-parent-markers)
(widget-test-insertion-at-parent-markers-2): New tests.

(cherry picked from commit 85113fcda97970bc2468f409278e27d6570fc76f)

13 days agoRevert "Improve bidi_get_time runtime checking"
Eli Zaretskii [Wed, 5 Feb 2025 12:44:01 +0000 (14:44 +0200)]
Revert "Improve bidi_get_time runtime checking"

This reverts commit 782ec71053d8535511522f27f28c11682ca0f40b.
It makes the code less readable and less future-proof, so a
net loss.  (Bug#75964)

(cherry picked from commit a1f2f5995d69db646f58a7203ab6208556f0df4b)

13 days ago* lisp/autorevert.el (defvar): Fix debug declaration.
Michael Albinus [Wed, 5 Feb 2025 08:41:49 +0000 (09:41 +0100)]
* lisp/autorevert.el (defvar): Fix debug declaration.

(cherry picked from commit a476295620a692657f7febd4630cf67f128c4c65)

13 days agoCorrectly handled the local parser for jsdoc (bug#75456)
Vincenzo Pupillo [Mon, 3 Feb 2025 21:14:44 +0000 (22:14 +0100)]
Correctly handled the local parser for jsdoc (bug#75456)

As a result of recent patches to treesitter, local parsers must
now be recognized by 'treesit-language-at-point' and have their
own indentation rules.

* lisp/progmodes/js.el
(js--treesit-indent-rules): New rule for jsdoc.
(js--treesit-language-at-point): New function.
(js-ts-mode): Use the new function.

(cherry picked from commit 4396f6414c2fb82cb8cee68420b658e376bb4e01)

13 days agoMake treesit-node-at more readable
Yuan Fu [Wed, 5 Feb 2025 07:35:37 +0000 (23:35 -0800)]
Make treesit-node-at more readable

* lisp/treesit.el (treesit-node-at): Make the logic for finding
the parser (and the root node) more explicit and
straightforward.  Don't use treesit-buffer-root-node; instead,
find the parser and use treesit-parser-root-node directly.

(cherry picked from commit 12a3145b3b9480e5e5993dac28df52a36cc7b95d)

13 days agoRemove no-longer-needed delete_frame UNINIT
Paul Eggert [Wed, 5 Feb 2025 00:56:56 +0000 (16:56 -0800)]
Remove no-longer-needed delete_frame UNINIT

* src/frame.c (delete_frame): Remove a local with UNINIT that is
no longer needed now that GCC bug#85563 is fixed, as we don’t
need to worry about porting --enable-gcc-warnings to older GCC.
This change reverts this part of my commit
“Port --enable-gcc-warnings to GCC 8”
8c3215e7a47e3caaa005bf573765ed63e0739b89
dated Sat Apr 28 16:49:24 2018 -0700.

(cherry picked from commit 4aab2f45b3dc39f4ebe4e09fd4e3b56b757843aa)

13 days agoMake it configurable to highlight Python 2 builtins
kobarity [Tue, 4 Feb 2025 15:02:05 +0000 (00:02 +0900)]
Make it configurable to highlight Python 2 builtins

By default, Python 2-only builtins are not highlighted.

* lisp/progmodes/python.el (python-2-support): New defcustom.
(python-font-lock-builtin-types)
(python-font-lock-builtins-python3)
(python-font-lock-builtins-python2)
(python-font-lock-builtins)
(python-font-lock-special-attributes)
(python-font-lock-builtin-exceptions-python3)
(python-font-lock-builtin-exceptions-python2)
(python-font-lock-builtin-exceptions): New variables.
(python-font-lock-keywords-level-2)
(python-font-lock-keywords-maximum-decoration)
(python--treesit-builtin-types)
(python--treesit-builtins)
(python--treesit-special-attributes)
(python--treesit-exceptions): Use new variables.

Co-authored-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Co-authored-by: Stefan Kangas <stefankangas@gmail.com>
(cherry picked from commit 999d054dc1e265f1a39c10035a3a3f7f75de8445)

13 days ago; Skip commit 7d85f678f33029cc874da2aaa89cf95a45403146
Eshel Yaron [Sun, 9 Feb 2025 08:35:39 +0000 (09:35 +0100)]
; Skip commit 7d85f678f33029cc874da2aaa89cf95a45403146

13 days agoImprove bidi_get_time runtime checking
Paul Eggert [Tue, 4 Feb 2025 19:43:58 +0000 (11:43 -0800)]
Improve bidi_get_time runtime checking

* src/bidi.c (bidi_get_type): Improve runtime checking, by also
aborting if the bidi_type_table entry is not a bidi_type_t value.

(cherry picked from commit 782ec71053d8535511522f27f28c11682ca0f40b)

13 days agoImprove calculation of indent prefixes when using text scaling
Jim Porter [Tue, 4 Feb 2025 17:25:17 +0000 (09:25 -0800)]
Improve calculation of indent prefixes when using text scaling

Previously, the display spec for the "average space" was wrong.  It used
a plain number for the width of the specified space, which means "N
times the normal character width for the buffer", but we want "N times
the normal character width for the *current face*" (bug#76008).

* lisp/visual-wrap.el (visual-wrap--content-prefix): Specify the width
of the "average space" in terms of the average width of the current
face.

* lisp/net/shr.el (shr-indent): As above, and call 'string-pixel-width'
without specifying the buffer, to match 'shr-string-pixel-width'.

(cherry picked from commit 6842415577405adafcba16f8cbff02f35b5583f9)

13 days agoEglot: protect against nil jit-lock-context-unfontify-pos
João Távora [Tue, 4 Feb 2025 14:43:48 +0000 (14:43 +0000)]
Eglot: protect against nil jit-lock-context-unfontify-pos

* lisp/progmodes/eglot.el (eglot-shutdown, eglot--update-hints): Rework.

Github-reference: https://github.com/joaotavora/eglot/pull/1370
(cherry picked from commit b685b21a33423018f3da7695919a4d1b1ef2c9cd)

13 days agoFix min-width display spec handling (bug#76014)
Gerd Möllmann [Tue, 4 Feb 2025 05:09:52 +0000 (06:09 +0100)]
Fix min-width display spec handling (bug#76014)

* src/xdisp.c (display_min_width): Take into account that the output may
already be longer than the specified min-width.

(cherry picked from commit f9a1f449d9cbe57f7312a5327d08e28e71c16882)

13 days ago; Skip commit 1e01ae335dda0ebcbca71c50c066a3072dd9d022
Eshel Yaron [Sun, 9 Feb 2025 08:34:45 +0000 (09:34 +0100)]
; Skip commit 1e01ae335dda0ebcbca71c50c066a3072dd9d022

13 days agormc.el: Use read-key instead of read-event like they do upstream
Eshel Yaron [Sun, 9 Feb 2025 08:34:14 +0000 (09:34 +0100)]
rmc.el: Use read-key instead of read-event like they do upstream

13 days ago* src/fileio.c (Fsubstitute_in_file_name): Doc fix (bug#76023).
Eli Zaretskii [Tue, 4 Feb 2025 14:06:36 +0000 (16:06 +0200)]
* src/fileio.c (Fsubstitute_in_file_name): Doc fix (bug#76023).

(cherry picked from commit 5c36b4126533764bb8b90413f274d766e1a6f0d6)

13 days ago; * test/src/editfns-tests.el (editfns-tests-styled-print): Fix last change.
Eli Zaretskii [Tue, 4 Feb 2025 14:01:47 +0000 (16:01 +0200)]
; * test/src/editfns-tests.el (editfns-tests-styled-print): Fix last change.

(cherry picked from commit 4212b2630f7a9d754810c8c9641e766534b44098)

13 days agoFix some checks in autorevert.el
Michael Albinus [Tue, 4 Feb 2025 13:32:46 +0000 (14:32 +0100)]
Fix some checks in autorevert.el

* lisp/autorevert.el (auto-revert-handler): Rework checks.
(auto-revert-handler): Don't run `vc-refresh-state' in
`auto-revert-tail-mode'.

(cherry picked from commit 2b1c25e62b3ff1718cfebda9d0e6b670c903b4cd)

13 days agoDon't use obsolete In-Reply-To format in messages (Bug#64454)
Andrew G Cohen [Wed, 5 Jul 2023 07:21:16 +0000 (15:21 +0800)]
Don't use obsolete In-Reply-To format in messages (Bug#64454)

When creating a new message, message-send-mail uses an obsolete format
for the In-Reply-To header that includes additional information about
the originating message.  This patch changes the default to use the
rfc5322 approved format, but allow the obsolete format through a
defcustom.

* lisp/gnus/message.el (message-make-in-reply-to): Return only the
message-id of the originating message (the default) unless the new
custom variable message-header-use-obsolete-in-reply-to is non-nil.
* doc/misc/message.texi: Document the new custom variable
message-header-use-obsolete-in-reply-to.
* etc/NEWS: Update NEWS.

(cherry picked from commit 2eb6171ec96eac0c78cf20b3003fcbcb1206c8c7)

13 days agoAdd inhibit-auto-revert macro
Michael Albinus [Tue, 4 Feb 2025 13:09:52 +0000 (14:09 +0100)]
Add inhibit-auto-revert macro

* doc/lispref/backups.texi (Reverting):
Add inhibit-auto-revert-buffers and inhibit-auto-revert.

* etc/NEWS: Add inhibit-auto-revert-buffers and inhibit-auto-revert.
Fix typos.

* lisp/autorevert.el (inhibit-auto-revert-buffers): New variable.
(inhibit-auto-revert): New macro.
(auto-revert-active-p, auto-revert-handler):
Check `inhibit-auto-revert-buffers'.

* lisp/dired.el (dired--inhibit-auto-revert): Remove.
(dired-buffer-stale-p): Don't set it.
(dired-map-over-marks, dired-internal-do-deletions):
Use `inhibit-auto-revert.

* test/lisp/autorevert-tests.el
(auto-revert-test08-auto-revert-inhibit-auto-revert)
(auto-revert-test08-auto-revert-inhibit-auto-revert-remote): New tests.

(cherry picked from commit 9597881592049509d62f91139316ac0eba2fb19d)

13 days ago; * test/src/editfns-tests.el (editfns-tests-styled-print): New test.
Eli Zaretskii [Tue, 4 Feb 2025 12:18:38 +0000 (14:18 +0200)]
; * test/src/editfns-tests.el (editfns-tests-styled-print): New test.

(cherry picked from commit 40e38a681dafb02f71d741338e9c3c5ff99c734e)

13 days agoEglot: avoid 'null' as params to 'shutdown' request (bug#66144)
João Távora [Tue, 4 Feb 2025 12:02:06 +0000 (12:02 +0000)]
Eglot: avoid 'null' as params to 'shutdown' request (bug#66144)

Doing so confuses some servers.  It used to be needed for the
gopls server, but according to
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66144#32
that has been fixed.

Thanks to Javier Olaechea <pirata@gmail.com>

* lisp/progmodes/eglot.el (eglot-shutdown): Use eglot--{}.

(cherry picked from commit 164da071e07cf162bfe166908dedc82da44ef634)

13 days ago; Update link to picons database
Stefan Kangas [Mon, 3 Feb 2025 22:51:15 +0000 (23:51 +0100)]
; Update link to picons database

* lisp/gnus/gnus-art.el (gnus-picon-databases): Fix broken link.

(cherry picked from commit 73a45ce7206a107695b2b4d9761e249edd7502e9)

13 days agoFix OpenBSD compilation (bug#76009)
Manuel Giraud [Mon, 3 Feb 2025 15:57:58 +0000 (16:57 +0100)]
Fix OpenBSD compilation (bug#76009)

* configure.ac: Remove a bogus LD_SWITCH_SYSTEM for OpenBSD.

(cherry picked from commit c4a67a405072601b9d7dd95dc94c0b402e1e0ae6)

13 days ago(save-place-abbreviate-file-names): Don't eagerly load alist (bug#75730)
Stefan Monnier [Mon, 3 Feb 2025 21:33:39 +0000 (16:33 -0500)]
(save-place-abbreviate-file-names): Don't eagerly load alist (bug#75730)

Change the way we handle `save-place-abbreviate-file-names` such that
this preference is applied lazily when we load the alist, rather than
eagerly when we define it (which forced the alist to be loaded before we
needed it).

* lisp/saveplace.el (save-place-load-alist-from-file): Use `unless`,
`when`, and `with-temp-buffer` to hopefully help readability.
Call `save-place--normalize-alist`.
(save-place--normalize-alist): New function extracted from the setter
of `save-place-abbreviate-file-names`.
(save-place-abbreviate-file-names): Use it.
(save-place-alist-to-file): Use `with-temp-buffer`.

(cherry picked from commit f3ac16b3cc5778041332bb46f819a51e8b697099)

13 days agoFix GC-related crashes in styled_format (bug#75754)
Pip Cet [Mon, 3 Feb 2025 20:40:34 +0000 (20:40 +0000)]
Fix GC-related crashes in styled_format (bug#75754)

This approach ensures we don't use an SSDATA pointer after GC, and
that no Lisp callback code can modify the format string while we're
working on it.

* src/editfns.c (styled_format): Operate on a copy of the format
string rather than the original.  Ensure final NUL byte is copied.

(cherry picked from commit 14ebe4d5dbd4e6637de227c8561aab22cf4b632c)

13 days ago* lisp/emacs-lisp/track-changes.el (track-changes-fetch): Fix bug#75906
Stefan Monnier [Mon, 3 Feb 2025 20:50:36 +0000 (15:50 -0500)]
* lisp/emacs-lisp/track-changes.el (track-changes-fetch): Fix bug#75906

(cherry picked from commit 1c3a8bc9b51cf89fc1eff181d39941d7f0c7b2e2)