]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 weeks ago; Fix a recent change to EWW
Jim Porter [Tue, 22 Oct 2024 15:36:23 +0000 (08:36 -0700)]
; Fix a recent change to EWW

* lisp/net/eww.el (eww--guess-content-type): Save excursion.

(cherry picked from commit f58652a41978974855be0993d42ace225b64efed)

3 weeks ago; Skip commit a9cf51d5f01cb7067c547af2905ab391979b18f4
Eshel Yaron [Tue, 22 Oct 2024 19:03:15 +0000 (21:03 +0200)]
; Skip commit a9cf51d5f01cb7067c547af2905ab391979b18f4

3 weeks ago; Improve documentation of 'eww-guess-content-type-functions'
Eli Zaretskii [Tue, 22 Oct 2024 06:38:09 +0000 (09:38 +0300)]
; Improve documentation of 'eww-guess-content-type-functions'

* lisp/net/eww.el (eww-guess-content-type-functions): Doc fix.

* etc/NEWS: Announce 'eww-guess-content-type-functions'.

Bug#73133

(cherry picked from commit 9fdc03e8f9868bb9253a0df9bf0c1b718e8576a8)

3 weeks agoAdd customization to let EWW guess content-type if needed
Sebastián Monía [Wed, 9 Oct 2024 03:26:42 +0000 (23:26 -0400)]
Add customization to let EWW guess content-type if needed

* lisp/net/eww.el (eww-guess-content-type-functions): New user option.
(eww--guess-content-type, eww--html-if-doctype): New functions.
(eww-render): Call 'eww--guess-content-type' (bug#73133).

(cherry picked from commit 9074a9f496b04ab58588b71f51d7830782fc7a29)

3 weeks ago* lisp/files.el (require-with-check): Provide more info in the error message
Stefan Monnier [Tue, 22 Oct 2024 00:21:10 +0000 (20:21 -0400)]
* lisp/files.el (require-with-check): Provide more info in the error message

Rather than only show the "new" file to be loaded, show also the
name of the currently loaded file, to clarify the conflict.

(cherry picked from commit 8a2fbddf17b4beb31d19161769066a4c1bd8bab0)

3 weeks agoFix a race condition when running Eshell startup scripts
Jim Porter [Mon, 21 Oct 2024 21:21:50 +0000 (14:21 -0700)]
Fix a race condition when running Eshell startup scripts

Previously, these scripts could run before all the Eshell modules had
fully-initialized.

* lisp/eshell/esh-mode.el (eshell-after-initialize-hook): New hook...
(eshell-mode): ... run it.

* lisp/eshell/em-script.el (eshell-run-startup-scripts): New function...
(eshell-script-initialize): ... add it to
'eshell-after-initialize-hook'.

* etc/NEWS: Announce 'eshell-after-initialize-hook'.

(cherry picked from commit 605f26cf70ab3d7c5ea635c19cd2a280812a4ddc)

3 weeks agoLet 'tex-view' show PDFs made without a DVI (bug#73854)
Stephen Berman [Mon, 21 Oct 2024 10:50:53 +0000 (12:50 +0200)]
Let 'tex-view' show PDFs made without a DVI (bug#73854)

* lisp/textmodes/tex-mode.el (tex-print-file): Update doc string
to mention 'tex-compile'.
(tex-compile-commands): Add entries for 'evince' and 'mupdf'.
(tex-compile): Set 'tex-print-file'.

(cherry picked from commit 1f8fbae8df764e9d24f1b824de7369d82e36abae)

3 weeks ago; Reapply a fix for recent change in eww.el
Eli Zaretskii [Mon, 21 Oct 2024 05:25:06 +0000 (08:25 +0300)]
; Reapply a fix for recent change in eww.el

* lisp/net/eww.el (eww--list-buffers-display-table)
(eww-buffers-mode): Fix coding conventions.

(cherry picked from commit e289f7dbb4f04776e8327e7865a9082078c084a9)

3 weeks agoRevert "; Fix last change."
Eli Zaretskii [Mon, 21 Oct 2024 05:22:56 +0000 (08:22 +0300)]
Revert "; Fix last change."

This reverts commit 75fa0cc1ae2b53fe169fdcfef52bee6719eb38a7.
The large part of it was committed by accident.

(cherry picked from commit 88a6a17adb7eff84e05d93ea357ae3eff9a84c48)

3 weeks ago; Make utility functions for getting the Eshell non-special regexps
Jim Porter [Sun, 20 Oct 2024 23:58:44 +0000 (16:58 -0700)]
; Make utility functions for getting the Eshell non-special regexps

* lisp/eshell/esh-arg.el (eshell-inside-quote-regexp)
(eshell-outside-quote-regexp): Rename to...
(eshell--non-special-inside-quote-regexp)
(eshell--non-special-outside-quote-regexp): ... these, and add
defsubsts.
(eshell-arg-initialize): Don't initialize regexp variables.
(eshell-parse-non-special): ... use them.

* lisp/eshell/em-glob.el (eshell-glob-chars-regexp): Use 'rx-to-string'.

(cherry picked from commit b573aaab76b55ec276b9190570b3ca3ae72cb416)

3 weeks agoMake all the entries in 'eshell-parse-argument-hook' named functions
Jim Porter [Fri, 18 Oct 2024 03:02:28 +0000 (20:02 -0700)]
Make all the entries in 'eshell-parse-argument-hook' named functions

* lisp/eshell/esh-arg.el (eshell-parse-number, eshell-parse-non-special)
(eshell-parse-whitespace, eshell-parse-comment): New functions...
(eshell-parse-argument-hook): ... use them.

(cherry picked from commit 212cf3125611b123707feac6f7ffd55a230bc568)

3 weeks ago; Undo WIP accidentally included in recent commit
Sean Whitton [Mon, 21 Oct 2024 01:44:20 +0000 (09:44 +0800)]
; Undo WIP accidentally included in recent commit

(cherry picked from commit 14624ff0fb7aec095a8846c3de5b089c93aa85da)

3 weeks ago; * lisp/eshell/esh-var.el (eshell-glob-function): Remove unused defvar.
Jim Porter [Sun, 20 Oct 2024 22:34:15 +0000 (15:34 -0700)]
; * lisp/eshell/esh-var.el (eshell-glob-function): Remove unused defvar.

(cherry picked from commit fc6854cbd4733ef4247f5d9fd99d88d7b79c4dc4)

3 weeks agoBe more careful about applying spliced arguments
Jim Porter [Sun, 20 Oct 2024 22:02:18 +0000 (15:02 -0700)]
Be more careful about applying spliced arguments

Previously, this could 'nonc' to a list that shouldn't be modified.

* lisp/eshell/esh-cmd.el (eshell-rewrite-named-command): Use 'append'
instead of 'nconc'.

* test/lisp/eshell/esh-var-tests.el (esh-var-test/interp-var-splice):
(esh-var-test/quoted-interp-var-splice): New tests.

(cherry picked from commit 183c5efc0fe80074a40ebebb684d787baf578ffe)

3 weeks ago; Fix last change.
Eli Zaretskii [Sun, 20 Oct 2024 18:02:07 +0000 (21:02 +0300)]
; Fix last change.

* lisp/net/eww.el (eww--list-buffers-display-table)
(eww-buffers-mode): Fix coding conventions.

(cherry picked from commit 75fa0cc1ae2b53fe169fdcfef52bee6719eb38a7)

3 weeks agoUse vtable in eww-list-buffers and add function eww-buffer-list
Sebastián Monía [Mon, 14 Oct 2024 01:00:03 +0000 (21:00 -0400)]
Use vtable in eww-list-buffers and add function eww-buffer-list

* lisp/net/eww.el (eww-buffer-list): New function.
(eww-list-buffers): Move logic to...
(eww--list-buffers-display-table, eww--list-buffers-get-data):
... these, and use 'vtable'.
(eww-buffer-select, eww-buffer-show, eww-buffer-kill)
(eww-buffers-mode-map): Use 'vtable-current-object'.
(eww-buffers-mode): Set 'revert-buffer-function'

(cherry picked from commit d3975cc925a856c872016df734563ce0709f3efc)

3 weeks ago; Skip commit 53e84f8cfa85bb53c92936a3be73ab1445a89459
Eshel Yaron [Tue, 22 Oct 2024 19:01:35 +0000 (21:01 +0200)]
; Skip commit 53e84f8cfa85bb53c92936a3be73ab1445a89459

3 weeks ago; Skip commit 2114a955c23c213168f012f5e480edae46561fd2
Eshel Yaron [Tue, 22 Oct 2024 19:01:32 +0000 (21:01 +0200)]
; Skip commit 2114a955c23c213168f012f5e480edae46561fd2

3 weeks ago; * lisp/vc/log-view.el (log-view-modify-change-comment): Add FIXME.
Sean Whitton [Sun, 20 Oct 2024 08:40:41 +0000 (16:40 +0800)]
; * lisp/vc/log-view.el (log-view-modify-change-comment): Add FIXME.

(cherry picked from commit 6c928e490d3347cc309eda51cefbc46fba955650)

3 weeks agoMinor changes of last commit
Michael Albinus [Sun, 20 Oct 2024 08:38:00 +0000 (10:38 +0200)]
Minor changes of last commit

* lisp/autorevert.el (auto-revert--last-time): Init with 0 (Epoch).
(auto-revert-notify-handler): Simplify.

(cherry picked from commit 0bdaab7655787d717d69581e30346233e293c6f2)

3 weeks agoEnhance the auto-revert to avoid revert a buffer in short time
Lin Sun [Sun, 20 Oct 2024 08:05:19 +0000 (10:05 +0200)]
Enhance the auto-revert to avoid revert a buffer in short time

* lisp/autorevert.el (auto-revert--last-time): New defvar.
(auto-revert-handler, auto-revert-notify-handler): Use it.
* test/lisp/autorevert-tests.el (with-auto-revert-test): Set
`auto-revert--lockout-interval' correctly.

(cherry picked from commit 545c54aea1ecccf84eaebbe3a3cb7b5fbc5716f8)

3 weeks ago; Avoid byte-compiler warning in mpc.el
Eli Zaretskii [Sun, 20 Oct 2024 05:03:08 +0000 (08:03 +0300)]
; Avoid byte-compiler warning in mpc.el

* lisp/mpc.el (mpc-cmd-crossfade): Move after definition of
'mpc-crossfade-time', because the function uses it.

(cherry picked from commit 80627a31c67b383393c53bd87dd21b7f0de3844e)

3 weeks agoFix 'min-width' calculation in 'visual-wrap-prefix-mode'
Jim Porter [Sat, 19 Oct 2024 23:12:43 +0000 (16:12 -0700)]
Fix 'min-width' calculation in 'visual-wrap-prefix-mode'

* lisp/visual-wrap.el (visual-wrap--content-prefix): Remove 'min-width'
before computing the pixel width to avoid miscalculation (bug#73882).

(cherry picked from commit 81a5beb8af020e4c92a77d61c8aa5e637e2dc945)

3 weeks agoAdd ability to crossfade between songs in 'mpc'
john muhl [Sun, 29 Sep 2024 00:11:03 +0000 (19:11 -0500)]
Add ability to crossfade between songs in 'mpc'

* lisp/mpc.el (mpc-cmd-crossfade):
(mpc-toggle-crossfade): New function.
(mpc-crossfade-time): New option.
(mpc-mode-menu): Add menu item to toggle crossfade.  (Bug#73891)

(cherry picked from commit 08f3bc1b8e6a3583c8ccda02a7cf1b59c8d3f514)

3 weeks ago; * lisp/vc/log-view.el (log-view-modify-change-comment): Add FIXME.
Sean Whitton [Sun, 20 Oct 2024 01:20:07 +0000 (09:20 +0800)]
; * lisp/vc/log-view.el (log-view-modify-change-comment): Add FIXME.

(cherry picked from commit de0800c511740de7ad4dcb7dda0a0083a094d749)

3 weeks agoLazily convert numeric strings to Lisp numbers in Eshell
Jim Porter [Sat, 19 Oct 2024 18:52:42 +0000 (11:52 -0700)]
Lazily convert numeric strings to Lisp numbers in Eshell

This should reduce the number of issues with Eshell converting strings
to numbers too aggressively and losing information (e.g. "001" -> 1)
while still allowing almost all of the beneficial uses, like summing a
list of numeric strings with '+'.

* lisp/eshell/esh-util.el (eshell--do-mark-numeric-string): New
function.
(eshell-convert-to-number): Make obsolete in favor of...
(eshell-mark-numeric-string): ... this.  Update callers.

* lisp/eshell/esh-arg.el (eshell--numberlike-p): New function...
(eshell-concat-1): ... use it.

* test/lisp/eshell/esh-util-tests.el:  Reimplement type conversion tests
to use 'eshell-convertible-to-number-p' instead.

* test/lisp/eshell/esh-var-tests.el
(esh-var-test/interp-var-splice-concat, esh-var-test/interp-concat-cmd)
(esh-var-test/interp-convert-var-split-indices)
(esh-var-test/interp-convert-quoted-var-split-indices)
(esh-var-test/interp-convert-cmd-multiline)
(esh-var-test/interp-convert-cmd-split-indices): Adjust tests to check
the new behavior.

* doc/misc/eshell.texi (Type Conversion): New section.
(Expansion): Clarify concatenation behavior.

(cherry picked from commit 43d5b7a04c4b1a8a7d57f25824df2e8720d2c567)

3 weeks ago; Skip commit 902029b1410ef9128380f9a307721ea6ab008529
Eshel Yaron [Tue, 22 Oct 2024 19:00:02 +0000 (21:00 +0200)]
; Skip commit 902029b1410ef9128380f9a307721ea6ab008529

3 weeks agoNew FAQ about Ctrl keys on xterm
Eli Zaretskii [Sat, 19 Oct 2024 09:14:06 +0000 (12:14 +0300)]
New FAQ about Ctrl keys on xterm

* doc/misc/efaq.texi
(Some Ctrl-modified keys do not work on xterm): New section
(bug#73813).

(cherry picked from commit a61bf74225737a7c87b95d604b6e8c2ce9686296)

3 weeks agoAutoload 'message-narrow-to-headers-or-head' in mml.el
Eli Zaretskii [Sat, 19 Oct 2024 08:57:09 +0000 (11:57 +0300)]
Autoload 'message-narrow-to-headers-or-head' in mml.el

* lisp/gnus/mml.el (message-narrow-to-headers-or-head): Autoload
it.  (Bug#73815)

(cherry picked from commit f353fcc8506f510401982ec148b94120422f28cd)

3 weeks ago; Skip commit c1791a2749468a120bbb8b1023b041f2370fc679
Eshel Yaron [Tue, 22 Oct 2024 18:59:51 +0000 (20:59 +0200)]
; Skip commit c1791a2749468a120bbb8b1023b041f2370fc679

3 weeks agoFix etags tagging by multiline regexps
Eli Zaretskii [Sat, 19 Oct 2024 08:18:45 +0000 (11:18 +0300)]
Fix etags tagging by multiline regexps

* lib-src/etags.c (regex_tag_multiline): Fix off-by-one error in
determining the end of the tag matched by a multiline regexp.
(Bug#73771)

* test/manual/etags/ETAGS.good_4:
* test/manual/etags/ETAGS.good_5:
* test/manual/etags/ETAGS.good_6: Adjust test results to the above
change.

(cherry picked from commit d0be0965ca344caab7879b2ac2373a68025c9ba2)

3 weeks agoHide default-directory absolute file name in dired-hide-details-mode
Álvaro Ramírez [Wed, 2 Oct 2024 10:36:57 +0000 (11:36 +0100)]
Hide default-directory absolute file name in dired-hide-details-mode

* lisp/dired.el (dired-hide-details-hide-absolute-location):
New user option.
(dired-insert-directory, dired-build-subdir-alist): Use it to
hide absolute file name of the directory.
(dired-hide-details-mode): Update doc string.
* test/lisp/dired-tests.el
(dired-test-hide-absolute-location-enabled)
(dired-test-hide-absolute-location-disabled): New tests

* etc/NEWS: Announce the new feature.

Bug#72272

(cherry picked from commit 7cbca90569472af5643905fca5b7ab2dea67f876)

3 weeks agoRewrite Speedbar expansion for all descendants (bug#73533)
Morgan Willcock [Sat, 5 Oct 2024 17:33:51 +0000 (18:33 +0100)]
Rewrite Speedbar expansion for all descendants (bug#73533)

Rewrite 'speedbar-expand-line-descendants' to avoid getting into
an infinite loop by reaching max-lisp-eval-depth.  The new
method avoids querying and displaying information for every
movement, instead using a single message to indicate that
expansion is in progress, and so is significantly faster.  The
narrowing per item introduced by the fix for bug#35014 is
removed because it prevented expanded descendant items when the
top-level item was already expanded.
* lisp/speedbar.el (speedbar--get-line-indent-level): New
function to return the indentation level of the current line.
(speedbar-expand-line-descendants): Use simpler line motion and
no recursion.  Output messages indicating when expansion is in
progress and when it is completed.  Fix expansion of descendants
where the top-level item was already expanded.

(cherry picked from commit bcc4e64fa7aab9f44e3a7bcdf651a32ec52866c2)

3 weeks agoAdd Speedbar tests (bug#73533)
Morgan Willcock [Tue, 8 Oct 2024 16:34:20 +0000 (17:34 +0100)]
Add Speedbar tests (bug#73533)

Add Speedbar tests which test the operation of
'speedbar-expand-line-descendants'.
* test/lisp/speedbar-tests.el (speedbar-tests-container)
(eieio-speedbar-object-children, speedbar-tests-item)
(speedbar-tests--make-object, speedbar-tests--setup-strings)
(speedbar-tests--object-hierarchy, speedbar-tests--base-items)
(speedbar-tests--clean-up, speedbar-tests--initialize)
(speedbar-tests--object-name-expanded)
(speedbar-tests--object-name-function)
(speedbar-tests--objects-as-strings)
(speedbar-tests--state-test)
(speedbar-tests--expand-descendants-single)
(speedbar-tests--expand-descendants-nested)
(speedbar-tests--expand-descendants-nested-wide)
(speedbar-tests--expand-descendants-of-first)
(speedbar-tests--expand-descendants-of-first-expanded)
(speedbar-tests--expand-descendants-of-last)
(speedbar-tests--expand-descendants-of-last-expanded)
(speedbar-tests--expand-descendants-of-middle)
(speedbar-tests--expand-descendants-of-middle-expanded):
New tests, test 'speedbar-expand-line-descendants'.

(cherry picked from commit 9dcc32f10cbae9497d6b33fcc739b75c1d5e411c)

3 weeks agoFix skeleton-related errors in sgml-mode.el
Eli Zaretskii [Sat, 19 Oct 2024 06:40:53 +0000 (09:40 +0300)]
Fix skeleton-related errors in sgml-mode.el

* lisp/textmodes/sgml-mode.el (sgml-mode-facemenu-add-face-function)
(sgml-attributes): Require 'skeleton before using its symbols.
(Bug#53710)

(cherry picked from commit b730c4acfcff20047a5c574fbf36c5ef1271b902)

3 weeks agoDon't autoload erc-modules
F. Jason Park [Tue, 15 Oct 2024 02:32:16 +0000 (19:32 -0700)]
Don't autoload erc-modules

* doc/misc/erc.texi (Modules): Recommend using `describe-variable'
instead of `customize-option' because the latter needs the symbol to be
loaded.
* lisp/erc/erc.el (erc-modules): Remove autoload cookie because it
caused customizations for this option to load the main library.  This
reverts the thrust of bb894845 "Teach customize-option about
erc-modules", which was added in ERC 5.6 and Emacs 30.  The motivation
for the original offending change was to allow new users to run M-x
customize-option RET erc-modules RET immediately after startup instead
of M-x customize-group RET, followed by an I-search.  (Bug#73812)

(cherry picked from commit 1854f2751e3f73e1e5f12f6de993b6357de1766b)

3 weeks agoMove experimental module querypoll to erc-notify
F. Jason Park [Mon, 14 Oct 2024 05:45:05 +0000 (22:45 -0700)]
Move experimental module querypoll to erc-notify

* etc/ERC-NEWS: Announce migration of misplaced `querypoll' module from
erc-goodies.el to erc-notify.el.
* lisp/erc/erc-goodies.el: Move all definitions associated with
experimental module `querypoll' to erc-notify.
* lisp/erc/erc-notify.el (erc--querypoll-ring)
(erc--querypoll-timer, erc-querypoll-exclude-regexp)
(erc-querypoll-mode, erc-querypoll-enable, erc-querypoll-disable)
(erc--queries-current-p, erc-querypoll-period-params)
(erc--querypoll-compute-period, erc--querypoll-target-in-chan-p)
(erc--querypoll-get-length, erc--querypoll-get-next)
(erc--querypoll-subscribe, erc--querypoll-on-352)
(erc--querypoll-send): Move here from erc-goodies.
* test/lisp/erc/erc-goodies-tests.el (erc--querypoll-compute-period)
(erc--querypoll-target-in-chan-p, erc--querypoll-get-length)
(erc--querypoll-get-next): Move to new file erc-notify-tests.el.
* test/lisp/erc/erc-notify-tests.el: New file.  The `querypoll' module
was first introduced as part of bug#70928 in ERC 5.6.

(cherry picked from commit be3318baddbcb3ff607c784a14c1f21a70e392de)

3 weeks agoFix trailing args bug in erc-d-i--parse-message
F. Jason Park [Sat, 12 Oct 2024 21:33:25 +0000 (14:33 -0700)]
Fix trailing args bug in erc-d-i--parse-message

* test/lisp/erc/resources/erc-d/erc-d-i.el: Require `subr-x'.
(erc-d-i--parse-message): Populate `contents' slot when lone trailing
arg lacks a preceding colon.
* test/lisp/erc/resources/erc-d/erc-d-tests.el (erc-d-i--parse-message):
Fix expected result.
(erc-d-i--parse-message/privmsg): New test.

(cherry picked from commit a5b2de8b54c3a2d7dcb84f7697e18b2257959dfc)

3 weeks ago; Undo erroneous change in ERC's sample configuration
F. Jason Park [Sat, 12 Oct 2024 01:12:16 +0000 (18:12 -0700)]
; Undo erroneous change in ERC's sample configuration

* doc/misc/erc.texi (Sample Configuration): Remove `erc-modules' from
the `:custom' section of the `use-package' declaration for feature `erc'
because its presence there depends on `:defer' being non-nil, and this
configuration is supposed to be `:defer' agnostic.  This reverts part of
3f1ce47f "; Add face customization to ERC's sample config".
* etc/ERC-NEWS: Mention `erc-modules' no longer being autoloaded.
* lisp/erc/erc-match.el (erc-text-matched-hooks): Explain expected
format of non-NUH matches.
* test/lisp/erc/erc-match-tests.el (test/lisp/erc/erc-match-tests.el):
Inhibit messages when running non-interactively.

(cherry picked from commit b00f400d1d3f954e460ea979f07f38f6bb31630e)

3 weeks agoFix the regression in dired-backup-diff's diff-goto-source behavior
Dmitry Gutov [Sat, 19 Oct 2024 01:25:52 +0000 (02:25 +0100)]
Fix the regression in dired-backup-diff's diff-goto-source behavior

* lisp/vc/diff-mode.el (diff-find-source-location): Undo part of
the previous change, so that 'reverse' does not affect whether the
"other file" is used (bug#62731).
(diff-apply-hunk): Make that choice here.

(cherry picked from commit 1374f20491bbf0c37760cdb84f6020f80fe4eadd)

3 weeks agoFix naming of buffers for tags ending in Y in 'mpc'
john muhl [Tue, 8 Oct 2024 17:24:27 +0000 (12:24 -0500)]
Fix naming of buffers for tags ending in Y in 'mpc'

* lisp/mpc.el (mpc-tagbrowser-buf): Use 'mpc-tagbrowser-tag-name'
to ensure buffers corresponding to tags that end in Y are
correctly pluralized; e.g. the tag "Directory" should create a
buffer named "*MPC Directories*" not "*MPC Directorys".

(cherry picked from commit 60e58be091bf075a03ac431444aa9c9b5832bb19)

3 weeks ago; Skip commit a815becb63b48c472ee0b405c00db6a188ad6ddc
Eshel Yaron [Tue, 22 Oct 2024 18:54:38 +0000 (20:54 +0200)]
; Skip commit a815becb63b48c472ee0b405c00db6a188ad6ddc

3 weeks ago(symbol-file): Fix `C-h v pcase` where `cl-struct` lacks file info
Stefan Monnier [Fri, 18 Oct 2024 18:51:13 +0000 (14:51 -0400)]
(symbol-file): Fix `C-h v pcase` where `cl-struct` lacks file info

* lisp/subr.el (symbol-file): Return an actual (and absolute) file name
for the autoload case, as is done for other cases.

(cherry picked from commit 0886ef01a8d7144771b5834c3ef6c3d44666ea76)

3 weeks ago(help-fns-short-filename): Fix bug#73766
Stefan Monnier [Fri, 18 Oct 2024 18:48:28 +0000 (14:48 -0400)]
(help-fns-short-filename): Fix bug#73766

* lisp/help-fns.el (help-fns--radix-trees): New var.
(help-fns--filename, help-fns--radix-tree): New functions.
(help-fns-short-filename): Use them.

(cherry picked from commit e807d62cdd12b8086d360114c10085f0c0cf4116)

3 weeks ago* admin/notes/git-workflow: Use emacs-30 in examples.
Michael Albinus [Fri, 18 Oct 2024 16:33:48 +0000 (18:33 +0200)]
* admin/notes/git-workflow: Use emacs-30 in examples.

(cherry picked from commit c437d7110b388a97ff6b67b2bc3138d05fbe3576)

3 weeks ago; Skip commit 7dbbd58d6c9cafde2136b83ff149aa608203e207
Eshel Yaron [Tue, 22 Oct 2024 18:53:40 +0000 (20:53 +0200)]
; Skip commit 7dbbd58d6c9cafde2136b83ff149aa608203e207

3 weeks ago; Fix last documentation change
Eli Zaretskii [Fri, 18 Oct 2024 12:46:17 +0000 (15:46 +0300)]
; Fix last documentation change

* doc/misc/efaq.texi (Colors on a TTY):
* doc/lispref/frames.texi (Font and Color Parameters):
* doc/emacs/cmdargs.texi (Colors X): More accurate documentation
of TTY color modes and 'tty-color-mode' frame parameter.
(Bug#73813)

(cherry picked from commit 19049efd30f5476baa4b69c4b79af15674c2650b)

3 weeks agoExplain tty-color-mode frame parameter more.
Robert Pluim [Fri, 18 Oct 2024 09:22:52 +0000 (11:22 +0200)]
Explain tty-color-mode frame parameter more.

* doc/emacs/cmdargs.texi (Colors X): Explain that tty color
support is dynamic.
* doc/lispref/frames.texi (Font and Color Parameters): Explain
that 'tty-color-mode' can be changed on the fly.
* doc/misc/efaq.texi (Colors on a TTY): Explain how to disable
'tty-color-mode', either at startup or dynamically.

(cherry picked from commit 2c640e63a8a6ea9f2fbbb55ff44d7a8a0ec0f4b4)

3 weeks agoReplace my recent change to vc-start-logentry
Sean Whitton [Fri, 18 Oct 2024 09:08:53 +0000 (17:08 +0800)]
Replace my recent change to vc-start-logentry

* lisp/vc/vc-dispatcher.el (vc-start-logentry): Restore previous
logic for determining the parent buffer from before my recent
change to this function.  If the attempt to determine the parent
buffer fails, signal an error immediately.
(vc-dispatcher-browsing): Consider derived modes of
log-view-mode, too, as indicating that we are in a directory
browser.

(cherry picked from commit 5c59ab56e67d1880bdec98a4319d6b4be45acf9b)

3 weeks agoMake djvused emit UTF-8 encoded text
Visuwesh [Thu, 17 Oct 2024 04:10:34 +0000 (09:40 +0530)]
Make djvused emit UTF-8 encoded text

* lisp/doc-view.el (doc-view--djvu-outline): Pass -u to djvused
to make it emit UTF-8 encoded text rather than using octal
escapes for non-ASCII string.  (bug#73846)

(cherry picked from commit 5f22c090b1ae87b516b132b36a5908a5e18c2d11)

3 weeks ago; Fix documentation of recent changes in mpc.el
Eli Zaretskii [Fri, 18 Oct 2024 05:52:02 +0000 (08:52 +0300)]
; Fix documentation of recent changes in mpc.el

* etc/NEWS: Fix entry for 'mpc-notifications'.

* lisp/mpc.el (mpc-status-callbacks, mpc-format)
(mpc-cover-image-find, mpc-cover-image-p, mpc-notifications)
(mpc-notifications-title, mpc-notifications-body): Doc fixes.

(cherry picked from commit 09e586b38352e1661ef96a47b89d835f0ff30bd2)

3 weeks ago; Skip commit d6ea735af8ed5e74f1cbc6d3e8285c6c7700239e
Eshel Yaron [Tue, 22 Oct 2024 18:51:20 +0000 (20:51 +0200)]
; Skip commit d6ea735af8ed5e74f1cbc6d3e8285c6c7700239e

3 weeks ago; Mark interactive Eshell output as such after inserting into the buffer
Jim Porter [Thu, 17 Oct 2024 21:30:31 +0000 (14:30 -0700)]
; Mark interactive Eshell output as such after inserting into the buffer

This avoids adding the "output" text properties to strings that may live
past the call to 'eshell-interactive-filter'.

* lisp/eshell/esh-mode.el (eshell-interactive-output-filter): New
function...
(eshell-interactive-print): ... call it.
(eshell-interactive-filter): Update docstring.

* lisp/eshell/esh-proc.el (eshell-interactive-process-filter)
(eshell-sentinel): Call 'eshell-interactive-output-filter'.

(cherry picked from commit 83e3ed651dca46214855552aa062cfbde019b04a)

3 weeks ago; * src/doc.c (Ftext_quoting_style): Make doc string agree with code.
Mattias Engdegård [Thu, 17 Oct 2024 12:06:20 +0000 (14:06 +0200)]
; * src/doc.c (Ftext_quoting_style): Make doc string agree with code.

(cherry picked from commit e5d600006e2b283923044d2c139b29dd69f5ac30)

3 weeks ago(track-changes--after): Fix problem found in bug#73041
Stefan Monnier [Thu, 17 Oct 2024 15:39:19 +0000 (11:39 -0400)]
(track-changes--after): Fix problem found in bug#73041

When calling `track-changes--before` (e.g. because of a missing
b-f-c or for some other reason), it sets `track-changes--before-end`
to the right value so we shouldn't increment it right after.
Also, we should update `track-changes--buffer-size` before
calling `track-changes--before` so it doesn't risk signaling
a spurious inconsistency.

* lisp/emacs-lisp/track-changes.el (track-changes--after):
Update `track-changes--buffer-size` earlier, and don't increment
`track-changes--before-end` when we call `track-changes--before`.

(cherry picked from commit 90c6880a922029ba6e57adb2afe00a6fa57ef7fe)

3 weeks ago; Skip commit d3c94102266fa1fe167f699a92b9064c02b63d4f
Eshel Yaron [Tue, 22 Oct 2024 18:50:47 +0000 (20:50 +0200)]
; Skip commit d3c94102266fa1fe167f699a92b9064c02b63d4f

3 weeks ago; (select-safe-coding-system-interactively): Say "safely encode".
Eli Zaretskii [Wed, 16 Oct 2024 06:04:02 +0000 (09:04 +0300)]
; (select-safe-coding-system-interactively): Say "safely encode".

(cherry picked from commit 78e6328fafddd4f39ed06d6ac4cecfb2f88d2fa4)

3 weeks ago; Skip commit c5eba443ae72b94024574d56a0dfdf11f339c1aa
Eshel Yaron [Tue, 22 Oct 2024 18:50:25 +0000 (20:50 +0200)]
; Skip commit c5eba443ae72b94024574d56a0dfdf11f339c1aa

3 weeks ago; * doc/lispref/display.texi (Face Attributes): Fix typo (bug#73824).
Eli Zaretskii [Wed, 16 Oct 2024 04:59:59 +0000 (07:59 +0300)]
; * doc/lispref/display.texi (Face Attributes): Fix typo (bug#73824).

(cherry picked from commit 569186c36e3bce06e69c8c037553789ee21d722b)

3 weeks ago* lisp/progmodes/c-ts-mode.el (treesit-node-eq): Declare to silence warning.
Andrea Corallo [Tue, 15 Oct 2024 19:27:47 +0000 (21:27 +0200)]
* lisp/progmodes/c-ts-mode.el (treesit-node-eq): Declare to silence warning.

(cherry picked from commit d5723fc4f03924cabc504ab6f0a537efc8cd9479)

3 weeks ago* admin/notes/emba: Docker builds do not run in a worktree.
Michael Albinus [Tue, 15 Oct 2024 15:36:56 +0000 (17:36 +0200)]
* admin/notes/emba: Docker builds do not run in a worktree.

(cherry picked from commit 0085e48f917b4ddd0c698ecea1b30684b904b666)

3 weeks ago* lisp/calc/calc-ext.el (math-approx-sqrt-e): Doc fix (bug#73817).
Ulrich Müller [Tue, 15 Oct 2024 12:06:49 +0000 (14:06 +0200)]
* lisp/calc/calc-ext.el (math-approx-sqrt-e): Doc fix (bug#73817).

(cherry picked from commit 3d30905b0223f07cba74297ba032d71b8fe2632c)

3 weeks ago: Revert a mistaken change
Eli Zaretskii [Tue, 15 Oct 2024 12:39:11 +0000 (15:39 +0300)]
: Revert a mistaken change

* lisp/net/dictionary.el (dictionary-word-definition-face): Revert
a mistakenly installed change.

(cherry picked from commit 94d0e9c4018cf948bd1ebabb118c02699c77c037)

3 weeks ago; * doc/emacs/search.texi (Word Search): Spelling fixes.
Robert Pluim [Tue, 15 Oct 2024 08:16:22 +0000 (10:16 +0200)]
; * doc/emacs/search.texi (Word Search): Spelling fixes.

(cherry picked from commit 4d90a1d820916985e5e135254926f5554ddd3e46)

3 weeks agoFix c-ts-mode--anchor-prev-sibling (bug#73661)
Yuan Fu [Tue, 15 Oct 2024 02:31:12 +0000 (19:31 -0700)]
Fix c-ts-mode--anchor-prev-sibling (bug#73661)

* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--anchor-prev-sibling):  Fix parentheses and use a
slightly more efficient function.
* test/lisp/progmodes/c-ts-mode-resources/indent.erts: Replace
the tab in the test code with spaces.

(cherry picked from commit c154047c46ae833a114e84d72e62269d12c3249d)

3 weeks agoFix formatting of long keyboard macros by 'list-keyboard-macros'.
Earl Hyatt [Sun, 13 Oct 2024 17:44:18 +0000 (13:44 -0400)]
Fix formatting of long keyboard macros by 'list-keyboard-macros'.

* lisp/kmacro.el (kmacro-menu--refresh): Include the second
argument of 'format-kbd-macro' so that the formatted keyboard
macro is on a single line.  (Bug#73797)

(cherry picked from commit b87fda63dd4a29c3c28e235904405f2d6709239e)

3 weeks ago; * src/fileio.c (Ffile_newer_than_file_p): Fix wording (bug#73709).
Eli Zaretskii [Sun, 13 Oct 2024 15:29:34 +0000 (18:29 +0300)]
; * src/fileio.c (Ffile_newer_than_file_p): Fix wording (bug#73709).

(cherry picked from commit ae75ea62324598654b32ed28bf644ec2bc4c04b2)

3 weeks ago; Skip commit de54d922b5c239a474adb41c84ea316b266f1838
Eshel Yaron [Tue, 22 Oct 2024 18:49:12 +0000 (20:49 +0200)]
; Skip commit de54d922b5c239a474adb41c84ea316b266f1838

3 weeks ago; Update lisp/ldefs-boot.el
Eshel Yaron [Tue, 22 Oct 2024 18:47:33 +0000 (20:47 +0200)]
; Update lisp/ldefs-boot.el

3 weeks ago(dired-yank): New command
Eshel Yaron [Tue, 22 Oct 2024 17:59:00 +0000 (19:59 +0200)]
(dired-yank): New command

3 weeks agogud.el: Generate less unreachable code
Eshel Yaron [Sat, 19 Oct 2024 19:09:30 +0000 (21:09 +0200)]
gud.el: Generate less unreachable code

3 weeks agoDon't emit obsolete function warning for recursive calls
Eshel Yaron [Sat, 19 Oct 2024 18:33:45 +0000 (20:33 +0200)]
Don't emit obsolete function warning for recursive calls

3 weeks agoFix a few more warnings
Eshel Yaron [Sat, 19 Oct 2024 14:51:25 +0000 (16:51 +0200)]
Fix a few more warnings

3 weeks agoSync java-ts-mode.el
Eshel Yaron [Sat, 19 Oct 2024 14:51:10 +0000 (16:51 +0200)]
Sync java-ts-mode.el

3 weeks agoAdd ':group' to a couple of faces
Eshel Yaron [Sat, 19 Oct 2024 14:33:43 +0000 (16:33 +0200)]
Add ':group' to a couple of faces

3 weeks agoFix some unreachable code
Eshel Yaron [Sat, 19 Oct 2024 14:33:25 +0000 (16:33 +0200)]
Fix some unreachable code

3 weeks agoKill *Completions* buffer on M-: minibuffer exit
Eshel Yaron [Sat, 19 Oct 2024 14:32:39 +0000 (16:32 +0200)]
Kill *Completions* buffer on M-: minibuffer exit

3 weeks agohl-line.el: Simplify
Eshel Yaron [Sat, 19 Oct 2024 12:20:52 +0000 (14:20 +0200)]
hl-line.el: Simplify

3 weeks ago(define-minor-mode): Add keywords ':on' and ':off'
Eshel Yaron [Sat, 19 Oct 2024 12:20:23 +0000 (14:20 +0200)]
(define-minor-mode): Add keywords ':on' and ':off'

3 weeks ago; Remove unused lexical variable
Eshel Yaron [Sat, 19 Oct 2024 12:17:18 +0000 (14:17 +0200)]
; Remove unused lexical variable

3 weeks agoflymake.el: Cosmetics
Eshel Yaron [Sat, 19 Oct 2024 07:50:41 +0000 (09:50 +0200)]
flymake.el: Cosmetics

3 weeks ago(read-passwd): Simplify
Eshel Yaron [Fri, 18 Oct 2024 14:33:19 +0000 (16:33 +0200)]
(read-passwd): Simplify

4 weeks ago* lisp/emacs-lisp/track-changes.el (track-changes--backtrace): Fix prefix
Stefan Monnier [Thu, 17 Oct 2024 16:54:04 +0000 (12:54 -0400)]
* lisp/emacs-lisp/track-changes.el (track-changes--backtrace):  Fix prefix

(cherry picked from commit f994154d0895b3bbd4a763e379a90328b5e3d87d)

4 weeks agompc.el: Misc tweaks.
Stefan Monnier [Thu, 17 Oct 2024 16:38:18 +0000 (12:38 -0400)]
mpc.el: Misc tweaks.

* lisp/mpc.el: Require `cl-lib` at run-time.
Don't require `subr-x` any more.
(mpc-status-callbacks): Improve docstring.
(mpc-cover-image-find): Avoid `and-let*`.
(mpc-cover-image-p): Use `member-ignore-case` to recover the
behavior before last patch.
(mpc-cover-image-find, mpc-cover-image-p): Move to later in the
file to avoid compiler warning.
(mpc-format, mpc-notifications-title, mpc-notifications-body):
Tweak docstring.
(mpc--notifications-format): Create only one temp buffer and use
the faster `cl-some` since we know the arg is a list.
(mpc-notifications-notify): Prefer `when-let*` since all the other
`*-let` we use are also of the `let*`family.

(cherry picked from commit 4690f2f44d38d64d8ebfea98c085844a5723df0f)

4 weeks agoAdd notifications support to 'mpc' (Bug#73538)
john muhl [Mon, 16 Sep 2024 00:52:25 +0000 (19:52 -0500)]
Add notifications support to 'mpc' (Bug#73538)

* lisp/mpc.el (mpc-notifications, mpc-notifications-title)
(mpc-notifications-body): New option.
(mpc--notifications-id): New variable.
(mpc-notifications-notify, mpc-cover-image-find)
(mpc-cover-image-p, mpc--notifications-format): New function.
(mpc-format): Use 'mpc-cover-find' and expand docstring to
include details about the FORMAT-SPEC.
(mpc-status-callbacks): Add file callback for
notifications.

(cherry picked from commit 49084bad7990a614bdd3ea7a24ebab0fc89627e3)

4 weeks ago; * lisp/vc/vc.el: Drop some old notes
Sean Whitton [Thu, 17 Oct 2024 13:14:45 +0000 (21:14 +0800)]
; * lisp/vc/vc.el: Drop some old notes

Firstly, we are unlikely to do any unifying, because both amend
capabilities have been around for a long time now and we don't
want to break people's usage.  Secondly, there is now a plan for
dealing with dangerous git operations described in bug#64055.

(cherry picked from commit 38071e39892fe0270f91746bd5f55c056cb00921)

4 weeks agolog-view-modify-change-comment: Prepend Summary header
Sean Whitton [Thu, 17 Oct 2024 13:06:58 +0000 (21:06 +0800)]
log-view-modify-change-comment: Prepend Summary header

* lisp/vc/log-view.el (log-edit): Require.
(log-view-modify-change-comment): When log-edit-hook would
insert an empty Summary header, prepend one to the old comment.

(cherry picked from commit 8d7d9dd42a6c2bf1f941108148d9df91bce857fa)

4 weeks agoNew get-change-comment VC backend action
Sean Whitton [Thu, 17 Oct 2024 13:04:38 +0000 (21:04 +0800)]
New get-change-comment VC backend action

This gets us closer to using log-view-modify-change-comment with modern
VCS.  What remains is implementing the modify-change-comment backend
action for those VCS.

* lisp/vc/vc.el: New get-change-comment backend action.
(vc-modify-change-comment): Pass the backend to vc-start-logentry.
* lisp/vc/log-view.el (log-view-extract-comment): Use new
get-change-comment action.
* lisp/vc/vc-git.el (vc-git-get-change-comment): Factor out of
vc-git-log-edit-toggle-amend.

(cherry picked from commit 01c8f31a54df511913ad88cb6138a01390faafbe)

4 weeks agovc-start-logentry: Use current buffer as parent buffer more often
Sean Whitton [Thu, 17 Oct 2024 12:57:07 +0000 (20:57 +0800)]
vc-start-logentry: Use current buffer as parent buffer more often

* lisp/vc/vc-dispatcher.el (vc-start-logentry): When determining
the parent buffer, if get-file-buffer returns nil, use the
current buffer.  Also, if the first file is a directory, don't
try to call get-file-buffer, just use the current buffer.

(cherry picked from commit 475a33adb9134990fa05be8a6308216f12ed4ef7)

4 weeks agoImprove coverage of scripts by the default fontset
Eli Zaretskii [Thu, 17 Oct 2024 13:21:49 +0000 (16:21 +0300)]
Improve coverage of scripts by the default fontset

* lisp/international/fontset.el (setup-default-fontset): Add
missing "simple" scripts.

(cherry picked from commit 4c0d69cbff14e25fa7489804102ac416cb3590b0)

4 weeks agoMore consistently propertize Log Edit headers as fields
Sean Whitton [Thu, 17 Oct 2024 12:11:53 +0000 (20:11 +0800)]
More consistently propertize Log Edit headers as fields

* lisp/vc/log-edit.el (log-edit--make-header-line): Factor out
of log-edit-insert-message-template.
(log-edit-set-header): Call log-edit--make-header-line so that
the Log Edit header is propertized as a field.

(cherry picked from commit ee265922a0df68893f4d2b23a9190f524b745b6a)

4 weeks agoAdd support for chaining conditionals in Eshell
Jim Porter [Sat, 5 Oct 2024 05:26:01 +0000 (22:26 -0700)]
Add support for chaining conditionals in Eshell

* lisp/eshell/esh-cmd.el (eshell-structure-basic-command): Check for the
presence of the conditional.  Allow any number of BODY forms.
(eshell-rewrite-if-command): Add support for 'else' keyword and chained
conditionals.

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/if-else-statement):
Test 'else' keyword.
(esh-cmd-test/if-else-statement-chain): New test.

* doc/misc/eshell.texi (Control Flow): Document this change.

* etc/NEWS: Announce this change.

(cherry picked from commit fada04cfc788a486265c9da6636611986b48ae49)

4 weeks agoImprove correctness of Eshell sub-forms
Jim Porter [Sat, 5 Oct 2024 04:45:04 +0000 (21:45 -0700)]
Improve correctness of Eshell sub-forms

This makes sure that we treat Eshell sub-forms (whether Lisp or command
forms) as values when appropriate, or as regular invocations.  This
requires a bit more explicit work, but helps to resolve some of the
surprising differences between Lisp and command forms in complex Eshell
statements.

* lisp/eshell/esh-cmd.el (eshell-subcommand-arg-values): Make obsolete.
(eshell-parse-lisp-argument): Don't add 'eshell-command-to-value' here.
(eshell-rewrite-sexp-command): Don't check for 'eshell-command-to-value
here'; instead check for 'eshell-lisp-command'.
(eshell-structure-basic-command): Check for 'eshell-lisp-command'.
(eshell-term-as-value): New function...
(eshell-rewrite-named-command, eshell-rewrite-for-command): ... call it.

* lisp/eshell/esh-arg.el (eshell-parse-special-reference):
* lisp/eshell/esh-io.el (eshell-strip-redirections):
* lisp/eshell/esh-var.el (eshell-prepare-indices): Call
'eshell-term-as-value'.

* test/lisp/eshell/esh-arg-tests.el
(esh-arg-test/special-reference/command-form):
* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/for-loop-lisp-body)
(esh-cmd-test/while-loop-lisp-body)
(esh-cmd-test/if-else-statement-lisp-body): New tests.

* test/lisp/eshell/esh-var-tests.el
(esh-var-test/interp-var-indices-subcommand): Add another command to
test.

* doc/misc/eshell.texi (Control Flow): Update documentation.

(cherry picked from commit 40ffacb34b194aa82273539ab7a5be2f485a706f)

4 weeks agoSimplify creation of Eshell command forms
Jim Porter [Wed, 18 Sep 2024 05:05:50 +0000 (22:05 -0700)]
Simplify creation of Eshell command forms

Previously, Eshell over-aggressively converted subcommands, which forced
control flow commands to undo that change.

* lisp/eshell/esh-cmd.el (eshell-pre-rewrite-command-hook): Remove
'eshell-subcommand-arg-values' call from here...
(eshell-rewrite-named-command): ... and put it here.
(eshell-invokify-arg): Make obsolete.
(eshell-structure-basic-command): Handle subcommand test forms.
(eshell-rewrite-for-command, eshell-rewrite-while-command)
(eshell-rewrite-if-command): Don't call 'eshell-invokify-arg'; it's not
necessary.

(cherry picked from commit af029cdb3a69ba67ae88c9e93b7564778c61a3c6)

4 weeks agoNew helper function project-read-project
Dmitry Gutov [Wed, 16 Oct 2024 22:57:40 +0000 (01:57 +0300)]
New helper function project-read-project

* lisp/progmodes/project.el (project-read-project): New helper.

(cherry picked from commit 561ab9829dd000a8078c6c66f7e8c29056adf31c)

4 weeks agoAdd suffixes individually and use minor mode directly
Michael R. Mauger [Wed, 16 Oct 2024 21:59:58 +0000 (17:59 -0400)]
Add suffixes individually and use minor mode directly

  * lisp/jka-cmpr-hook.el (jka-compr-install): Add jka-compr
  suffixes individually with add-to-list rather than append.
  * (with-auto-compression-mode): Use auto-compression-mode minor mode.

(cherry picked from commit aaa734ac6e80e3375bcf32cad9c2b484c1217b57)

4 weeks agoUse debian:bookworm for tests on emba
Michael Albinus [Wed, 16 Oct 2024 15:26:44 +0000 (17:26 +0200)]
Use debian:bookworm for tests on emba

* test/infra/Dockerfile.emba (emacs-base): Derive from debian:bookworm.
(emacs-eglot, emacs-tree-sitter): Derive from emacs-base.
(emacs-native-comp): Install libgccjit-12-dev.

(cherry picked from commit 6213ca44d43688e14641034ebdd8fab4b360d224)

4 weeks agoCC Mode: Fix dodgy lisp `let' form.
Alan Mackenzie [Wed, 16 Oct 2024 13:17:26 +0000 (13:17 +0000)]
CC Mode: Fix dodgy lisp `let' form.

* lisp/progmodes/cc-engine.el (c-forward-sws): Move a `setq'
form from out of a let binding.  This form could have been
affected by the byte compiler bug bug#67116 before this was
fixed.

(cherry picked from commit 5340fdaade1f8fe7af08293619cca89ae0796fcf)

4 weeks agoCC Mode: Rationalize and optimize cache invalidation (2).
Alan Mackenzie [Tue, 15 Oct 2024 21:08:41 +0000 (21:08 +0000)]
CC Mode: Rationalize and optimize cache invalidation (2).

Replace separate syntax-table text property changes and cache
invalidation with macros which do both together.  Correct a bug
in the invocation of XEmacs's map-extents.

* lisp/progmodes/cc-defs.el (c-put-syntax-table-trim-caches)
(c-clear-syntax-table-trim-caches)
(c-clear-syntax-table-properties-trim-caches)
(c-clear-syntax-table-with-value-trim-caches)
(c-clear-syntax-table-with-value-on-char-trim-caches)
(c-put-syntax-table-properties-on-char-trim-caches): New
macros.
(c-clear-char-properties, c-clear-char-property-with-value)
(c-clear-char-property-with-value-on-char): Correct the
invocation of XEmacs's map-extents by returning nil from the
mapping function to prevent premature exit from map-extents.
(c-clear-char-property-with-value-function)
(c-clear-char-property-with-value)
(c-clear-char-property-with-value-on-char-function)
(c-clear-char-property-with-value-on-char)
(c-put-char-properties-on-char): Enhance to return the position
of the first changed char property (or nil).

* lisp/progmodes/cc-awk.el
(c-awk-set-string-regexp-syntax-table-properties)
(c-awk-set-syntax-table-properties)
* lisp/progmodes/cc-engine.el
(c-depropertize-ml-string-delims)
(c-after-change-unmark-ml-strings, c-propertize-ml-string-id)
(c-propertize-ml-string-opener, c-depropertize-ml-string)
(c-depropertize-ml-strings-in-region)
* lisp/progmodes/cc-mode.el (c-depropertize-CPP)
(c-neutralize-CPP-line, c-put-syn-tab, c-clear-syn-tab)
(c-parse-quotes-before-change, c-parse-quotes-after-change)
(c-before-change-fix-comment-escapes)
(c-after-change-fix-comment-escapes): Use the new macros from
cc-defs.el.

* lisp/progmodes/cc-mode.el
(c-trim-cache-first-punctuation-prop): Remove.
(c-depropertize-CPP): Remove calls to the above function.

(cherry picked from commit fdac10b216f7b47e2eea129d2a96807a0c2055f3)

4 weeks ago* lisp/emacs-lisp/comp-cstr.el (comp-cstr-type-p): Add assertion.
Andrea Corallo [Tue, 15 Oct 2024 19:02:59 +0000 (21:02 +0200)]
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-type-p): Add assertion.

(cherry picked from commit 1686d48417315f809403aeb29559788ef4b755a6)