]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 weeks agoFix the call to treesit-thing-defined-p
Yuan Fu [Tue, 29 Oct 2024 02:30:52 +0000 (19:30 -0700)]
Fix the call to treesit-thing-defined-p

* lisp/treesit.el (treesit-defun-at-point): Add the necessary
2nd argument.

(cherry picked from commit 1551c306f30cc139b321056c03206df4b71eae5c)

2 weeks agoproject--completing-read-strict: Move some common processing here
Dmitry Gutov [Tue, 29 Oct 2024 02:27:00 +0000 (04:27 +0200)]
project--completing-read-strict: Move some common processing here

* lisp/progmodes/project.el (project--completing-read-strict):
Add new optional argument, COMMON-PARENT-DIRECTORY.  Move the
absolute->relative processing of MB-DEFAULT and the contents of
HIST here.
(project--read-file-cpd-relative): From here.  So that
'project--read-file-absolute' can also benefit from those
conversions.
(project--read-file-absolute): Pass the new argument.
(project-read-file-name-function): Update value tags.

(cherry picked from commit c0cb369ab188ea7ae0d3271d19c0cecce7be0329)

2 weeks agoproject--read-file-cpd-relative: Move out the 'included-cpd' logic
Dmitry Gutov [Tue, 29 Oct 2024 01:48:03 +0000 (03:48 +0200)]
project--read-file-cpd-relative: Move out the 'included-cpd' logic

* lisp/progmodes/project.el (project-find-dir):
Use 'project-files-relative-names'.  Include "./" here rather than
(project--read-file-cpd-relative): ...doing it here.

(cherry picked from commit a6626a00dc4b459e57d700e5bb7524cd3e0a55f8)

2 weeks agoFix window selection after log-edit-show-diff
Sean Whitton [Tue, 29 Oct 2024 01:40:02 +0000 (09:40 +0800)]
Fix window selection after log-edit-show-diff

* lisp/vc/vc.el (vc-diff-patch-string): Use display-buffer, not
pop-to-buffer, for consistency with log-edit-diff-fileset.
(vc-modify-change-comment): Use save-selected-window around
vc-diff-internal to avoid leaving the *vc-diff* window selected,
for consistency with log-edit-diff-fileset.

(cherry picked from commit 40cf6f9009209b8c3363d057882611cd5d56f853)

2 weeks ago; Skip commit 41f347c1d1a03c38861d4b422211b6042d87ed06
Eshel Yaron [Tue, 29 Oct 2024 09:58:13 +0000 (10:58 +0100)]
; Skip commit 41f347c1d1a03c38861d4b422211b6042d87ed06

2 weeks ago; Skip commit 7681eacc399612625b38d9504407722bde23dc22
Eshel Yaron [Tue, 29 Oct 2024 09:57:50 +0000 (10:57 +0100)]
; Skip commit 7681eacc399612625b38d9504407722bde23dc22

2 weeks agoCall PF correctly from pcase--edebug-match-pat-args
Alan Mackenzie [Mon, 28 Oct 2024 16:35:27 +0000 (16:35 +0000)]
Call PF correctly from pcase--edebug-match-pat-args

Also correct a doc string and insert commentary.  This fixes
bug#74052.

* lisp/emacs-lisp/edebug.el
(edebug--match-&-spec-op <&interpose>): Correct and complete
the doc string, which now says MUST call exactly once, and
documents the return values of FUN, PF and
edebug--match-&-spec-op.  Also remove an unneeded `(...)
construct.

* lisp/emacs-lisp/pcase.el (pcase--edebug-match-pat-args): Call
PF also for the main cases handled.

(cherry picked from commit fb5915665522f747daa8dfa11e91dc406d18edb7)

2 weeks agoCC Mode: Add/remove defun buffer locally to post-command-hook
Alan Mackenzie [Mon, 28 Oct 2024 15:58:04 +0000 (15:58 +0000)]
CC Mode: Add/remove defun buffer locally to post-command-hook

Also remove no longer existing hook.

* lisp/progmodes/cc-mode (c-leave-cc-mode-mode): remove-hook
c-post-command buffer locally.  Delete removal of non-existent
c-post-gc-hook.
(c-basic-common-init): add-hook c-post-command buffer locally.

(cherry picked from commit c05a13ef0dc69497e275b627dbc8e2b25ece7711)

2 weeks agoFix C-c C-d and C-c C-w during log-view-modify-change-comment
Sean Whitton [Mon, 28 Oct 2024 13:46:06 +0000 (21:46 +0800)]
Fix C-c C-d and C-c C-w during log-view-modify-change-comment

* lisp/vc/vc-dispatcher.el (log-edit-diff-fileset)
(log-edit-diff-patch): Declare.
(vc-log-edit, vc-start-logentry): New optional argument
DIFF-FUNCTION to specify log-edit-diff-function in the generated
Log Edit buffer.
* lisp/vc/vc.el (vc-modify-change-comment): Pass the new
DIFF-FUNCTION argument to vc-start-logentry.

(cherry picked from commit fc3de939b9059dd4436134f08e7fa7149087c317)

2 weeks agoMore workarounds for GDB bug 32313
Eli Zaretskii [Mon, 28 Oct 2024 13:04:41 +0000 (09:04 -0400)]
More workarounds for GDB bug 32313

* src/eval.c (backtrace_args): Same treatment as
backtrace_function.

(cherry picked from commit b7b55dfc03c4d36ae77812c16d15142a6f6f27df)

2 weeks agoFix definitions of Eshell "xtra" functions
Jim Porter [Mon, 28 Oct 2024 04:13:56 +0000 (21:13 -0700)]
Fix definitions of Eshell "xtra" functions

* lisp/eshell/em-xtra.el (eshell-parse-command): Remove unnecessary
autoload.
(eshell/substitute): Pass the correct number of arguments to
'cl-substitute'.
(eshell/count, eshell/union, eshell/mismatch, eshell/intersection)
(eshell/set-difference, eshell/set-exclusive-or): Use named arguments
for the required arguments (bug#73738).

(cherry picked from commit ea685170063b59855322ceffdeaaab4acaf8e388)

2 weeks agoproject-try-vc: Fix the "sometimes wrong cache" issue
Dmitry Gutov [Mon, 28 Oct 2024 03:53:16 +0000 (05:53 +0200)]
project-try-vc: Fix the "sometimes wrong cache" issue

* lisp/progmodes/project.el (project-try-vc--search):
Extract from 'project-try-vc'.
(project-try-vc): Use it.
(project-try-vc--search): Call itself recursively directly, to
avoid creating invalid cache entry (bug#73801).

(cherry picked from commit 29b30eb49f8bd8bad4f9e24dd56f32d62bf70121)

2 weeks agoWork around GDB bug 32313 when debugging Emacs internals
Paul Eggert [Mon, 28 Oct 2024 00:21:23 +0000 (17:21 -0700)]
Work around GDB bug 32313 when debugging Emacs internals

Problem reported by Eli Zaretskii in:
https://lists.gnu.org/r/emacs-devel/2024-10/msg00653.html
* src/eval.c (backtrace_function_body): Rename from
backtrace_function, and make it static.
(GDB_FUNCPTR): New macro.
(backtrace_function): New function pointer, for GDB only.

(cherry picked from commit ebf3fb9a2295520ef8ce1756086fd9bbd3d04e9e)

2 weeks agoUpdate modus-themes to their version 4.6.0
Protesilaos Stavrou [Sun, 27 Oct 2024 16:04:31 +0000 (18:04 +0200)]
Update modus-themes to their version 4.6.0

* doc/misc/modus-themes.org
(Differences between loading and enabling)
(Option for which themes to toggle)
(Option for which themes to rotate, DIY Palette override presets)
(DIY Add padding to the mode line)
(DIY Remap face with local value): Fix typos.
(DIY Add support for solaire-mode): Fix some symbols.
(Full support for packages or face groups)
(Indirectly covered packages): Add newly supported packages.
(DIY Add support for combobulate):,
(DIY Add support for engrave-faces, DIY Add support for howm)
(DIY Add support for meow-mode): Document how to style those
packages.
(Acknowledgements): Update names of people who have in one way
or another contributed to the project.

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el:
* etc/themes/modus-themes.el: Make refinements to supported
faces, add support for more faces, and tweak palette entries.

Release notes: <https://protesilaos.com/codelog/2024-10-27-modus-themes-4.6.0/>.

(cherry picked from commit 9e40d3f2a1c2b5388a4eab72dbe506a21816f69b)

2 weeks agoFix doc string of 'wdired-use-dired-vertical-movement'
Eli Zaretskii [Sun, 27 Oct 2024 11:41:24 +0000 (13:41 +0200)]
Fix doc string of 'wdired-use-dired-vertical-movement'

* lisp/wdired.el (wdired-use-dired-vertical-movement): Remove the
incorrect reference to 'track-eol'.  (Bug#73917)

(cherry picked from commit c78b4d2b31d9b763aa506d8498f70b3e651bbbf5)

2 weeks agoUpdate the documentation of void functions
Eli Zaretskii [Sun, 27 Oct 2024 11:16:36 +0000 (13:16 +0200)]
Update the documentation of void functions

* doc/lispref/functions.texi (Function Cells):
* src/data.c (Ffboundp, Ffmakunbound, Fsymbol_function): Update
documentation to the changes of how void functions are represented
since Emacs 24.5.  (Bug#73886)

(cherry picked from commit b0aaee93fde245b972a0d69b60328550f53bc043)

2 weeks ago; * lisp/vc/log-edit.el (log-edit-diff-function): Grammar fix.
Sean Whitton [Sun, 27 Oct 2024 10:56:31 +0000 (18:56 +0800)]
; * lisp/vc/log-edit.el (log-edit-diff-function): Grammar fix.

(cherry picked from commit 299a1f240750595d7b0132aec5eb3a2b58c9d943)

2 weeks ago; Skip commit 4704dd39de0427466ca3585ab284b7302b0ef2d7
Eshel Yaron [Tue, 29 Oct 2024 09:55:14 +0000 (10:55 +0100)]
; Skip commit 4704dd39de0427466ca3585ab284b7302b0ef2d7

2 weeks agoAllow escape from 'read-key'
Eli Zaretskii [Sun, 27 Oct 2024 10:28:12 +0000 (12:28 +0200)]
Allow escape from 'read-key'

* lisp/emacs-lisp/backtrace.el (backtrace-mode-map): Add a binding
for 'abort-recursive-edit'.  (Bug#73584)

(cherry picked from commit 734d5e2f294e13ef762bd3bfd644551f7f94e9fa)

2 weeks agoAccept texi2any for version identification
Mats Lidell [Sun, 27 Oct 2024 08:11:16 +0000 (09:11 +0100)]
Accept texi2any for version identification

* lisp/info.el (Info-file-supports-index-cookies): Accept texi2any
for version identification.  (Bug#74042)

(cherry picked from commit 4af5b794015a64f67d878d43ac6cde1bb39b3bd9)

2 weeks ago; Fix typos
Stefan Kangas [Sun, 27 Oct 2024 06:49:32 +0000 (07:49 +0100)]
; Fix typos

(cherry picked from commit 67a27ff53bf0f8473cb6b58ad85298e066b8def4)

2 weeks ago; * src/w32dwrite.c (syms_of_w32dwrite): Init 'w32-inhibit-dwrite'.
Eli Zaretskii [Sun, 27 Oct 2024 06:43:00 +0000 (08:43 +0200)]
; * src/w32dwrite.c (syms_of_w32dwrite): Init 'w32-inhibit-dwrite'.

(cherry picked from commit aaefb67f54513e8375ec8356d09bf2e6f25b9116)

2 weeks ago; Fix problem with DirectWrite (MS-Windows)
Cecilio Pardo [Sat, 26 Oct 2024 15:51:22 +0000 (17:51 +0200)]
; Fix problem with DirectWrite (MS-Windows)

Negative lbearings were not handled.

* src/w32dwrite.c (w32_dwrite_draw): Modified to handle negative
lbearing.

(cherry picked from commit 702d5ec56684b87dbe7c46d35c6926a46a0697e9)

2 weeks agovc-git-resolve-conflicts: Extend unstage-maybe to similar operations
Sean Whitton [Sun, 27 Oct 2024 06:11:50 +0000 (14:11 +0800)]
vc-git-resolve-conflicts: Extend unstage-maybe to similar operations

* lisp/vc/vc-git.el (vc-git-resolve-when-done): When
vc-git-resolve-conflicts is unstage-maybe, don't clear the
staging area during a rebase, am, revert or cherry-pick.
(vc-git-resolve-conflicts): Update docstring in light of changes
to vc-git-resolve-when-done.
(vc-git--cmds-in-progress): Detect reverts and cherry-pick
operations in progress.

(cherry picked from commit d7d5b2ec9a747fac48bd50152e2023d33e78393c)

2 weeks ago; Skip commit bd2b064438601271549c137c53e301ae4ebabd55
Eshel Yaron [Tue, 29 Oct 2024 09:53:44 +0000 (10:53 +0100)]
; Skip commit bd2b064438601271549c137c53e301ae4ebabd55

2 weeks ago; Skip commit d354300993e6a48e2d3e72a7e89348cc06b326fb
Eshel Yaron [Tue, 29 Oct 2024 09:53:07 +0000 (10:53 +0100)]
; Skip commit d354300993e6a48e2d3e72a7e89348cc06b326fb

2 weeks agovc-git-log-edit-toggle-amend: Honor vc-allow-rewriting-published-history
Dmitry Gutov [Sun, 27 Oct 2024 00:46:57 +0000 (03:46 +0300)]
vc-git-log-edit-toggle-amend: Honor vc-allow-rewriting-published-history

* etc/NEWS: Update the entry for
vc-allow-rewriting-published-history.

* lisp/vc/vc-git.el (vc-git-log-edit-toggle-amend):
Add a check against published history (bug#64055).

(cherry picked from commit 2030b8c7f24a10024ab973149b10194fd50dd2bb)

2 weeks agoFix Eshell incompatibility with "[" command when eshell-pred is disabled
Jim Porter [Mon, 21 Oct 2024 04:37:55 +0000 (21:37 -0700)]
Fix Eshell incompatibility with "[" command when eshell-pred is disabled

* lisp/eshell/em-pred.el (eshell-pred-initialize): Ensure that
'eshell-parse-arg-modifier' is called before 'eshell-parse-glob-chars'.

* lisp/eshell/em-glob.el (eshell-glob-initialize): Use a number for hook
depth to be clearer.
(eshell-parse-glob-chars): Simplify; since eshell-pred's hook now runs
first, the extra code is no longer necessary.

* test/lisp/eshell/em-glob-tests.el
(em-glob-test/test-command-without-pred): New test.

(cherry picked from commit 523aade3ea11c188e30e3889f031d1848129cf82)

2 weeks ago; Ensure 'eshell-split-filename' doesn't expand the filename first
Jim Porter [Sat, 26 Oct 2024 21:22:38 +0000 (14:22 -0700)]
; Ensure 'eshell-split-filename' doesn't expand the filename first

* lisp/eshell/esh-util.el (eshell-split-filename): Never expand the
filename.

* lisp/eshell/em-glob.el (eshell-glob-p): A leading "~" isn't a globbing
character.

* test/lisp/eshell/esh-util-tests.el
(esh-util-test/split-filename/absolute)
(esh-util-test/split-filename/relative)
(esh-util-test/split-filename/user)
(esh-util-test/split-filename/remote-absolute)
(esh-util-test/split-filename/remote-relative)
(esh-util-test/split-filename/remote-user): New tests.

(cherry picked from commit d6fe32e531044b518ae5b6b39377378cbf13292d)

2 weeks agoFix bootstrap on MS-Windows
Eli Zaretskii [Sat, 26 Oct 2024 19:38:58 +0000 (22:38 +0300)]
Fix bootstrap on MS-Windows

* src/w32uniscribe.c (syms_of_w32uniscribe): Don't call
'syms_of_w32dwrite' here...
* src/emacs.c (main): ...call it here.  Reported by Andy Moreton
<andrewjmoreton@gmail.com>.

(cherry picked from commit 02510606f6d0e431e36634b8290e648b3a47af18)

2 weeks agoAdd delete-selection-local-mode.
Earl Hyatt [Sun, 13 Oct 2024 00:28:25 +0000 (20:28 -0400)]
Add delete-selection-local-mode.

* lisp/delsel.el (delete-selection-local-mode): Add local version of
'delete-selection-mode'.  The local mode sets the value of the variable
'delete-selection-mode' to maintain compatibility with packages and
features that consider the existing mode.

* doc/emacs/mark.texi (Using Region): Describe
'delete-selection-local-mode'.

* etc/NEWS: Describe 'delete-selection-local-mode'.

(cherry picked from commit e0b21b6c4de4d7f0b7ad9ae112755435f501835e)

2 weeks ago; Skip commit 3f94b979d8070c2f6ac1a09638424b8a69b5cbc5
Eshel Yaron [Tue, 29 Oct 2024 09:51:00 +0000 (10:51 +0100)]
; Skip commit 3f94b979d8070c2f6ac1a09638424b8a69b5cbc5

2 weeks ago* lisp/editorconfig.el (editorconfig--get-indentation): Fix bug#73991
Stefan Monnier [Sat, 26 Oct 2024 15:12:32 +0000 (11:12 -0400)]
* lisp/editorconfig.el (editorconfig--get-indentation): Fix bug#73991

(cherry picked from commit dd52839dd9d5f5af1f961e3ace2554931ec66510)

2 weeks ago; Skip commit ed1d691184df4b50da6b8e1a207e9ccd88aa9ffb
Eshel Yaron [Tue, 29 Oct 2024 09:50:12 +0000 (10:50 +0100)]
; Skip commit ed1d691184df4b50da6b8e1a207e9ccd88aa9ffb

2 weeks ago; Skip commit bbc8a5830af7681ef5aea08ae309707a0c989599
Eshel Yaron [Tue, 29 Oct 2024 09:50:00 +0000 (10:50 +0100)]
; Skip commit bbc8a5830af7681ef5aea08ae309707a0c989599

2 weeks ago; Skip commit e0f964c16df4951e3d1ad6d43371ce2a09ede28c
Eshel Yaron [Tue, 29 Oct 2024 09:49:51 +0000 (10:49 +0100)]
; Skip commit e0f964c16df4951e3d1ad6d43371ce2a09ede28c

2 weeks ago; Skip commit eb18f7288b3817378b98c1b81d723cf4a1b1e4f5
Eshel Yaron [Tue, 29 Oct 2024 09:49:48 +0000 (10:49 +0100)]
; Skip commit eb18f7288b3817378b98c1b81d723cf4a1b1e4f5

2 weeks agoSkip *.dylib files in 'loaddefs-generate'
Eli Zaretskii [Fri, 25 Oct 2024 10:34:53 +0000 (13:34 +0300)]
Skip *.dylib files in 'loaddefs-generate'

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Add .dylib
to extensions of files that are skipped.  (Bug#74001)

(cherry picked from commit 8e37b537160c1560048ac53529ef09de7561963c)

2 weeks agoHighlight namespace name in "use" clause.
Vincenzo Pupillo [Wed, 23 Oct 2024 18:45:48 +0000 (20:45 +0200)]
Highlight namespace name in "use" clause.

* lisp/progmodes/php-ts-mode.el (php-ts-mode--font-lock-settings):
New rule to highlight namespace name in "use" clause.  (Bug#73975)

(cherry picked from commit 0d8d5f10ffc62da35c4d317ed4363995e5e62f65)

2 weeks ago; * lisp/loadup.el: Improve file abstract
Sean Whitton [Thu, 24 Oct 2024 07:39:34 +0000 (15:39 +0800)]
; * lisp/loadup.el: Improve file abstract

(cherry picked from commit d3e98487d08eaed69db827ce489b69da1c7a084e)

2 weeks ago; * doc/lispref/control.texi (Conditionals): Fix markup.
Eli Zaretskii [Thu, 24 Oct 2024 05:42:29 +0000 (08:42 +0300)]
; * doc/lispref/control.texi (Conditionals): Fix markup.

(cherry picked from commit 1a91d37a21c43e4941f6c5913bcab507161e6be6)

2 weeks agoImprove Tramp VC cache
Eyal Soha [Sat, 26 Oct 2024 12:16:26 +0000 (14:16 +0200)]
Improve Tramp VC cache

* lisp/net/tramp-sh.el (tramp-vc-file-name-handler):
Add `file-directory-p', which is used in
`vc-find-root'.  (Bug#74026)

Copyright-paperwork-exempt: yes
(cherry picked from commit fb974171b44253aa0600074e9b293bdeabc8c032)

2 weeks ago* lisp/progmodes/cc-langs.el (c-cpp-matchers): Remove an unneeded let*.
Alan Mackenzie [Sat, 26 Oct 2024 11:01:15 +0000 (11:01 +0000)]
* lisp/progmodes/cc-langs.el (c-cpp-matchers): Remove an unneeded let*.

(cherry picked from commit c2fcb6ca5c4baea5eed39376be12c21e03a960c2)

2 weeks ago; * lisp/emacs-lisp/cond-star.el: Require cl-lib.
Eli Zaretskii [Sat, 26 Oct 2024 06:05:10 +0000 (09:05 +0300)]
; * lisp/emacs-lisp/cond-star.el: Require cl-lib.

(cherry picked from commit 2a6af880b0958d527a4d32005ef9acf3bc4ea030)

2 weeks ago; Reformat a couple of recently added long strings
Sean Whitton [Sat, 26 Oct 2024 03:15:25 +0000 (11:15 +0800)]
; Reformat a couple of recently added long strings

* lisp/vc/vc-git.el (vc-git--assert-allowed-rewrite)
(vc-git-modify-change-comment): Reformat long strings by
prefixing an escaped newline.

(cherry picked from commit 4b9daca842419f94226d40adc9f7844d18dfffa9)

2 weeks agocond*: Add support for Pcase patterns
Stefan Monnier [Sat, 26 Oct 2024 02:26:06 +0000 (22:26 -0400)]
cond*: Add support for Pcase patterns

* lisp/emacs-lisp/cond-star.el (cond*): Adjust docstring.
(match*): Prefer `_VAR` syntax.
(cond*-convert-condition): Add support for `pcase*`.
* doc/lispref/control.texi (cond* Macro): Document `pcase*`.
* test/lisp/emacs-lisp/cond-star-tests.el: New file.

(cherry picked from commit d44b94a63d2d407fca5d5ec41fcb92d7b765972e)

2 weeks ago; Fix coding style of Uniscribe files
Po Lu [Sat, 26 Oct 2024 00:39:24 +0000 (08:39 +0800)]
; Fix coding style of Uniscribe files

* src/w32dwrite.c (EMACS_DWRITE_UNUSED, IDWriteFontFaceVtbl)
(IDWriteFontFace, IDWriteRenderingParamsVtbl)
(IDWriteRenderingParams, IDWriteFontVtbl, IDWriteFont)
(IDWriteBitmapRenderTargetVtbl, IDWriteBitmapRenderTarget)
(IDWriteBitmapRenderTarget1, IDWriteGdiInteropVtbl)
(IDWriteGdiInterop, IDWriteFactoryVtbl, IDWriteFactory)
(IDWriteColorGlyphRunEnumeratorVtbl)
(IDWriteColorGlyphRunEnumerator, IDWriteFactory2Vtbl)
(IDWriteFactory2, get_font_face, text_extents_internal)
(w32_initialize_direct_write, w32_dwrite_draw)
(w32_use_direct_write):

* src/w32font.c (w32font_text_extents, w32font_draw):

* src/w32uniscribe.c (uniscribe_open): Correct coding style.

(cherry picked from commit 574e97575f4331f43fc079b3bfa6d74213bc2559)

2 weeks agoCC Mode: correct handling of properties on #include <...>
Alan Mackenzie [Fri, 25 Oct 2024 20:35:32 +0000 (20:35 +0000)]
CC Mode: correct handling of properties on #include <...>

In C, Pike, and IDL Modes, deleting and reinserting such a <
could create havoc with the category/syntax-table properties on
the < and >.  Also the contents of <...> should only get paren
properties when the #include is present and correct.

* lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace the
c-make-font-lock-search-function which put properties on the
<...> with a simple matcher.

* lisp/progmodes/cc-langs.el
(c-get-state-before-change-functions)
(c-before-font-lock-functions): Add respectively
c-before-change-include-<> and c-after-change-include-<> in the
C, Pike and IDL entries of these variables.

* lisp/progmodes/cc-mode.el (c-before-change-include-<>)
(c-after-change-include-<>): New functions.

(cherry picked from commit 76268160ba9262a8479589427b8e783db0242260)

2 weeks ago; * src/w32dwrite.c (Fw32_dwrite_reinit): Doc fix.
Eli Zaretskii [Fri, 25 Oct 2024 11:47:43 +0000 (14:47 +0300)]
; * src/w32dwrite.c (Fw32_dwrite_reinit): Doc fix.

(cherry picked from commit 3d508157e03597b00c46c82d42a60742c01a0250)

2 weeks ago; Minor fixes to last changes
Eli Zaretskii [Fri, 25 Oct 2024 11:36:41 +0000 (14:36 +0300)]
; Minor fixes to last changes

* src/w32font.h:
* src/w32font.c:
* src/w32dwrite.c:
* etc/NEWS: Minor fixes of last changes.  (Bug#73730)

(cherry picked from commit 222a5207c4d8fa31103637018ae0a7bdb74dd660)

2 weeks agoImplement drawing text with DirectWrite on MS-Windows.
Cecilio Pardo [Wed, 9 Oct 2024 09:40:28 +0000 (11:40 +0200)]
Implement drawing text with DirectWrite on MS-Windows.

This adds support for color fonts.
* configure.ac: Add src/w32drite to W32_OBJ.
* src/w32dwrite.c: New file.
(w32-initialize-direct-write): New function, initialize the
DirectWrite library if it is available, and required global
variables.
(w32_use_direct_write): New function, check if DirectWrite
is available and activated by the user.
(w32_dwrite_encode_char): New function, replacement for HarfBuzz's
'encode_char'.
(w32_dwrite_text_extents): New function, replacement for w32font
text_extents.
(w32_dwrite_draw): New function, replacement for w32font draw.
(w32_dwrite_free_cached_face): New function, used in the font
deletion process to also delete DirectWrite data.
(verify_hr): New function, verify COM method results.
(release_com): New function, release a COM object.
(w32-dwrite-available): New function, returns true if DirectWrite
is available.
(w32-dwrite-reinit): New function, reinitialize DirectWrite,
optionally setting some rendering parameters.
* src/w32font.c (w32font_text_extents): If DirectWrite is enabled,
call 'w32_dwrite_text_extents'.
(w32font_draw): If DirectWrite is enabled, call 'w32_dwrite_draw'.
* src/w32uniscribe.c: (w32hb_encode_char): If DirectWrite is enabled,
call 'w32_dwrite_encode_char'.
(syms_of_w32uniscribe_for_pdumper): Initialize DirectWrite.
(uniscribe_close): Free DirectWrite data for the font.

Bug#73730

(cherry picked from commit edf37e811cafa4092b13969613fa83f6e6d69ab3)

2 weeks ago; * etc/NEWS: Fix wording of recently-added entry.
Eli Zaretskii [Fri, 25 Oct 2024 10:41:27 +0000 (13:41 +0300)]
; * etc/NEWS: Fix wording of recently-added entry.

(cherry picked from commit 517711c373b9c80811371014fc5a7786aa7548eb)

2 weeks agoImprove drag and drop on MS-Windows (bug#3468)
Cecilio Pardo [Wed, 23 Oct 2024 12:41:24 +0000 (14:41 +0200)]
Improve drag and drop on MS-Windows (bug#3468)

Add support for 'dnd-scroll-margin' and 'dnd-indicate-insertion-point'
by calling 'dnd-handle-movement' when dragging the mouse.

* lisp/term/w32-win.el (w32-drag-n-drop): Call 'dnd-handle-movement'
when applicable.
* src/w32fns.c (w32_handle_drag_movement): New function, sends a
WM_EMACS_DRAGOVER message.
(w32_drop_target_DragEnter): Call 'w32_handle_drag_movement'.
(w32_drop_target_DragOver): Call 'w32_handle_drag_movement'.
* src/w32term.c: (w32_read_socket): Handle WM_EMACS_DRAGOVER,
sending a drag-n-drop event.
* src/w32term.h: Define new WM_EMACS_DRAGOVER message.

(cherry picked from commit 3eb2a85d10e0ad7b50e96ee4e80ba08b3a71b9ae)

2 weeks agoCease binding M-& in Gnus
Eshel Yaron [Sat, 26 Oct 2024 16:42:36 +0000 (18:42 +0200)]
Cease binding M-& in Gnus

2 weeks ago; Remove some outdated Flymake tests
Eshel Yaron [Sat, 26 Oct 2024 16:42:15 +0000 (18:42 +0200)]
; Remove some outdated Flymake tests

2 weeks ago; * lisp/filet.el: Minor tweaks
Eshel Yaron [Sat, 26 Oct 2024 06:23:17 +0000 (08:23 +0200)]
; * lisp/filet.el: Minor tweaks

2 weeks agosave-buffers-kill-emacs: Adjust confirmation prompt when restarting
Sean Whitton [Fri, 25 Oct 2024 04:43:23 +0000 (12:43 +0800)]
save-buffers-kill-emacs: Adjust confirmation prompt when restarting

* lisp/files.el (save-buffers-kill-emacs): When restarting, ask
"Really restart Emacs?".

(cherry picked from commit df677f65fd1b4f0d16e59d5df9735139d2a667c8)

2 weeks agovc-modify-change-comment: Revert Log View buffer
Sean Whitton [Fri, 25 Oct 2024 03:13:46 +0000 (11:13 +0800)]
vc-modify-change-comment: Revert Log View buffer

* lisp/vc/vc.el (vc-modify-change-comment): Revert the Log View
buffer after modifying the change comment.

(cherry picked from commit 9729353ba019d9e7f603515dbf88cbc8807bb120)

2 weeks agoFix error message in charset.c
Eli Zaretskii [Thu, 24 Oct 2024 14:41:02 +0000 (17:41 +0300)]
Fix error message in charset.c

* src/charset.c (Fdefine_charset_internal): Don't reference
uninitialized value in error message.  (Bug#73985)

(cherry picked from commit f33bc659c9110682174157086c60203d55725d20)

2 weeks ago; Touch up & fix documentation changes from last commit
Sean Whitton [Thu, 24 Oct 2024 13:15:28 +0000 (21:15 +0800)]
; Touch up & fix documentation changes from last commit

(cherry picked from commit fefc3005d46f4ac41af624d4591b052df92e4bd0)

2 weeks agovc-clone: Make interactive; call vc-guess-url-backend
Aleksandr Vityazev [Thu, 24 Oct 2024 12:19:34 +0000 (15:19 +0300)]
vc-clone: Make interactive; call vc-guess-url-backend

* lisp/vc/vc.el (vc-clone): Make interactive.  Call
vc-guess-url-backend.  Always return DIRECTORY if it names a
directory.  New optional argument OPEN-DIR.
(vc--remotes-history): New defvar.
* etc/NEWS: Announce these changes.

(cherry picked from commit be29879850028d316592ba82cd859d31a67c1ffe)

2 weeks agoMove package-vc-heuristic-alist and related to vc.el
Aleksandr Vityazev [Thu, 24 Oct 2024 12:11:44 +0000 (15:11 +0300)]
Move package-vc-heuristic-alist and related to vc.el

* lisp/emacs-lisp/package-vc.el (package-vc--backend-type)
(package-vc-heuristic-alist, package-vc--guess-backend): Rename
to vc-cloneable-backends-custom-type, vc-clone-heuristic-alist
and vc-guess-url-backend respectively, and move to
lisp/vc/vc.el.  Make package-vc-heuristic-alist an obsolete
alias.
(package-vc--clone, package-vc--read-package-name)
(package-vc-install, package-vc-checkout): Use
vc-guess-url-backend.
* lisp/vc/vc.el (vc-cloneable-backends-custom-type)
(vc-clone-heuristic-alist, vc-guess-url-backend): New defconst,
defcustom and defun, respectively: renamed and moved here from
lisp/emacs-lisp/package-vc.el.

(cherry picked from commit 98b02f56d12f2f39a6667d33d50f9e551a267d6d)

2 weeks ago; Drop two outdated calls to 'require'
Sean Whitton [Thu, 24 Oct 2024 09:19:41 +0000 (17:19 +0800)]
; Drop two outdated calls to 'require'

* lisp/emacs-lisp/backtrace.el (require):
* lisp/wid-edit.el (require): Don't require subr-x.  if-let,
when-let and friends have all been in subr.el for a while.

(cherry picked from commit db587ae8ba7d7b281f6935ed5d038b7ecf4abd5d)

2 weeks ago* doc/misc/tramp.texi (Bug Reports): Explain bisecting.
Michael Albinus [Thu, 24 Oct 2024 09:11:03 +0000 (11:11 +0200)]
* doc/misc/tramp.texi (Bug Reports): Explain bisecting.

(cherry picked from commit 767493ccb693f65cf8621cd82f0ecf92be976f55)

2 weeks ago; Skip commit 8903106bb783c2825233c149b6799960aacdea57
Eshel Yaron [Fri, 25 Oct 2024 05:08:16 +0000 (07:08 +0200)]
; Skip commit 8903106bb783c2825233c149b6799960aacdea57

2 weeks agoUpdate special conditionals documentation
Sean Whitton [Thu, 24 Oct 2024 04:10:09 +0000 (12:10 +0800)]
Update special conditionals documentation

* doc/lispref/control.texi (Conditionals): Document if-let* and
when-let*, not if-let and when-let.  Document and-let*.

(cherry picked from commit eae798486a965ec176bef3cc343625c164986c3f)

2 weeks agovc-allow-rewriting-published-history: Use nil->ask->t
Sean Whitton [Thu, 24 Oct 2024 03:26:27 +0000 (11:26 +0800)]
vc-allow-rewriting-published-history: Use nil->ask->t

* lisp/vc/vc.el (vc-allow-rewriting-published-history): Use
increasingly permissive values nil->ask->t rather than
nil->t->no-ask.  Recommend `ask' or nil.
* lisp/vc/vc-git.el (vc-git--assert-allowed-rewrite): Update
accordingly.

(cherry picked from commit 3bb1b85b78b8079e160dcb10774fe82c2daa1b4d)

2 weeks ago; Update the NEWS entry to mention project-prompter correctly
Dmitry Gutov [Wed, 23 Oct 2024 19:49:13 +0000 (22:49 +0300)]
; Update the NEWS entry to mention project-prompter correctly

(cherry picked from commit bc8f416ee97795e77a36d6dd25a2a037bdc4a5c4)

2 weeks agoproject-prompter: Update the docstring for the recent change
Dmitry Gutov [Wed, 23 Oct 2024 19:43:18 +0000 (22:43 +0300)]
project-prompter: Update the docstring for the recent change

* lisp/progmodes/project.el (project-prompter):
Update the docstring too (bug#70833).

(cherry picked from commit efaec5f61df967e2a4b85c5607f559f92f220ca9)

2 weeks ago; * test/lisp/proced-tests.el (proced--within-buffer): Instrument macro.
Michael Albinus [Wed, 23 Oct 2024 15:01:08 +0000 (17:01 +0200)]
; * test/lisp/proced-tests.el (proced--within-buffer): Instrument macro.

Do not merge with master

(cherry picked from commit 75584a3a9614541478cf05edc6223de8db3d350c)

2 weeks agoconfigure.ac: Fix FIONREAD check with gcc-14 on Solaris
Alan Coopersmith [Wed, 23 Oct 2024 13:41:08 +0000 (15:41 +0200)]
configure.ac: Fix FIONREAD check with gcc-14 on Solaris

Before this fix, it would fail to build with gcc-14 with the error:
conftest.c: In function 'main':
conftest.c:265:11: error: implicit declaration of function 'ioctl'
 [-Wimplicit-function-declaration]
  265 | int foo = ioctl (0, FIONREAD, &foo);
      |           ^~~~~

Solaris documents ioctl() as being defined in <unistd.h>.

* configure.ac: Fix FIONREAD check with gcc-14 on Solaris.
Ref:
https://lists.gnu.org/r/emacs-devel/2024-10/msg00195.html

Copyright-paperwork-exempt: yes
(cherry picked from commit 5e5689a2a40cd16d7593a0c7ddea5511adc3bf22)

2 weeks ago; Improve documentation of 'native-compile-directory' (bug#73303)
Eli Zaretskii [Wed, 23 Oct 2024 07:00:45 +0000 (10:00 +0300)]
; Improve documentation of 'native-compile-directory' (bug#73303)

* lisp/emacs-lisp/comp.el (native-compile-directory): Doc fix.

* doc/lispref/compile.texi (Native-Compilation Functions):
Document 'native-compile-directory'.

* etc/NEWS: Improve wording.

(cherry picked from commit c037b253975da883594f10f48e0be53d81a32756)

2 weeks ago; vc-git-modify-change-comment: Restore ignoring --amend
Sean Whitton [Wed, 23 Oct 2024 02:57:40 +0000 (10:57 +0800)]
; vc-git-modify-change-comment: Restore ignoring --amend

This was accidentally lost when installing this new feature on
master.

(cherry picked from commit e756d4373bdf1b076ee284c46637855908dd10d7)

2 weeks ago; Improve comment from last change
Sean Whitton [Wed, 23 Oct 2024 02:53:02 +0000 (10:53 +0800)]
; Improve comment from last change

(cherry picked from commit f5451b6a0668f4dc9992562b62ed37a199f1fdad)

2 weeks agovc-git-modify-change-comment: Check for other autosquashing
Sean Whitton [Wed, 23 Oct 2024 02:49:22 +0000 (10:49 +0800)]
vc-git-modify-change-comment: Check for other autosquashing

* lisp/vc/vc-git.el (vc-git-modify-change-comment): Check that a
rebase with --autosquash won't make any other changes and give
the user a chance to abort.

(cherry picked from commit c259db1d454a27cc79217f4740b1ecdb4bb28114)

2 weeks ago; Insert missing quotation in FIXME
Sean Whitton [Wed, 23 Oct 2024 01:36:41 +0000 (09:36 +0800)]
; Insert missing quotation in FIXME

(cherry picked from commit 87766c88d5f343017972558d364eff024884f71a)

2 weeks agoSupport modifying VC change comments for Git
Sean Whitton [Fri, 18 Oct 2024 09:19:45 +0000 (17:19 +0800)]
Support modifying VC change comments for Git

* lisp/vc/vc.el (vc-allow-rewriting-published-history): New option.
* lisp/vc/vc-git.el (vc-git--assert-allowed-rewrite)
(vc-git-modify-change-comment): New functions (bug#64055).

(vc-git--current-branch): Factor out of vc-git-dir--branch-headers.
(vc-git--log-edit-extract-headers): Factor out of vc-git-checkin.

* etc/NEWS: Announce the new support and option.

(cherry picked from commit 00149f18ea90c0c1dae525581ef4924201336be3)

2 weeks agoDocument and-let* vs. when-let* usage convention
Sean Whitton [Wed, 23 Oct 2024 01:07:06 +0000 (09:07 +0800)]
Document and-let* vs. when-let* usage convention

* lisp/subr.el (and-let*): Document and/and-let*
vs. when/when-let* usage convention (some discussion in
bug#73853).
(when-let*): Add cross-reference to and-let*.

(cherry picked from commit 09e05f7ee4de89f5f1dd95aa9498feccfa9a78d6)

2 weeks agoFix error when splicing Eshell globs and a glob expands to itself
Jim Porter [Tue, 22 Oct 2024 16:43:00 +0000 (09:43 -0700)]
Fix error when splicing Eshell globs and a glob expands to itself

This could happen when 'eshell-extended-glob' determines that a "glob"
is not really a glob.  This mainly happens for remote file names with a
"~" in them, like "/ssh:remote:~/file.txt".

* lisp/eshell/em-glob.el (eshell-extended-glob): Return a list when
'eshell-glob-splice-results' is non-nil.
* test/lisp/eshell/em-glob-tests.el
(em-glob-test/expand/splice-results)
em-glob-test/expand/no-splice-results): Extend tests.

(cherry picked from commit b7a375f5c49ac86399b9af7a6a74720ed294abd7)

2 weeks ago* etc/package-keyring.gpg: Update expiration and add new key
Stefan Monnier [Tue, 22 Oct 2024 16:35:18 +0000 (12:35 -0400)]
* etc/package-keyring.gpg: Update expiration and add new key

(cherry picked from commit 2289e162268b82d1d757c2354bf3fdf92316e91d)

2 weeks agoAvoid crashes when scrolling images under winner-mode
Eli Zaretskii [Mon, 21 Oct 2024 17:42:01 +0000 (20:42 +0300)]
Avoid crashes when scrolling images under winner-mode

* src/window.c (window_scroll_pixel_based): Fix calculation of a
window's vscroll.  (Bug#73933)

(cherry picked from commit 48024096fea5ccdeb79dab5793a6f7a293b95919)

2 weeks ago; * doc/lispref/display.texi (Fontsets): Clarify wording.
Eli Zaretskii [Mon, 21 Oct 2024 15:32:07 +0000 (18:32 +0300)]
; * doc/lispref/display.texi (Fontsets): Clarify wording.

(cherry picked from commit c35d6ba9f07b0a8417ef116359049c0dd63e12b5)

2 weeks ago; * doc/lispref/display.texi (Fontsets): Fix typo.
Eli Zaretskii [Mon, 21 Oct 2024 10:04:18 +0000 (13:04 +0300)]
; * doc/lispref/display.texi (Fontsets): Fix typo.

(cherry picked from commit 88a1a32fc57817d5e0e1f79b83ff23d7274cbace)

2 weeks ago; Add indexing for 'use-default-font-for-symbols'
Eli Zaretskii [Mon, 21 Oct 2024 10:01:53 +0000 (13:01 +0300)]
; Add indexing for 'use-default-font-for-symbols'

* doc/emacs/mule.texi (Modifying Fontsets):
* doc/lispref/display.texi (Fontsets): Index
'use-default-font-for-symbols'.

(cherry picked from commit 6be47058cd741e5868f5c2fdef0fd59e296f18b6)

2 weeks ago* src/lread.c (READ_AND_BUFFER): Reject negative chars (bug#73914).
Eli Zaretskii [Sun, 20 Oct 2024 19:39:53 +0000 (22:39 +0300)]
* src/lread.c (READ_AND_BUFFER): Reject negative chars (bug#73914).

(cherry picked from commit 681f70ea04a30bb43bb87448a6d71458d773d247)

2 weeks ago* test/Makefile.in: Do not show emacs-module-tests.log by default.
Michael Albinus [Sun, 20 Oct 2024 09:35:06 +0000 (11:35 +0200)]
* test/Makefile.in: Do not show emacs-module-tests.log by default.

(cherry picked from commit ac4151e0023f4bf17eb128036c006618332f1ac0)

2 weeks agoFix 'php-ts-mode': better indentation and font locking
Vincenzo Pupillo [Thu, 10 Oct 2024 14:06:37 +0000 (16:06 +0200)]
Fix 'php-ts-mode': better indentation and font locking

Incomplete compound_statement or colon_block (statement-group
without a closing brace or closing keyword) that are not inside
a function or method are not recognized as such by tree-sitter-php.
A new function 'php-ts-mode--open-statement-group-heuristic'
handles this case.  Font locking of magic methods and better
support for alternative control structure syntax.
Support for latest grammar version.
* lisp/progmodes/php-ts-mode.el
(php-ts-mode--language-source-alist): Updated grammar version.
(php-ts-mode--possibly-braceless-keyword-re): Regular expression
for braceless keyword.
(php-ts-mode--open-statement-group-heuristic): New function.
(php-ts-mode--parent-html-bol): Use the new function and doc fix.
(php-ts-mode--parent-html-heuristic): Use the new function and doc
fix.
(php-ts-mode--indent-styles): Use the new function and add
'colon_block' support.
(php-ts-mode--class-magic-methods): New predefined magic methods
list.
(php-ts-mode--test-namespace-name-as-prefix-p): Doc fix.
(php-ts-mode--test-namespace-aliasing-clause-p): Fix the test and
doc.
(php-ts-mode--test-namespace-use-group-clause-p): Doc fix.
(php-ts-mode--test-visibility-modifier-operation-clause-p): New
function for the new asymmetric property visibility feature of
PHP 8.4.
(php-ts-mode--font-lock-settings): Font lock for class magic methods
and alternative syntax.  Better font lock for 'instanceof'.  Use
'font-lock-function-call-face' for scoped and member call expression.
(bug#73779)

(cherry picked from commit 4e0cb960dbd95c8001b08c62682b085292184b87)

2 weeks ago* lisp/filet.el: Add Commentary
Eshel Yaron [Thu, 24 Oct 2024 19:29:28 +0000 (21:29 +0200)]
* lisp/filet.el: Add Commentary

2 weeks ago; Update lisp/ldefs-boot.el
Eshel Yaron [Thu, 24 Oct 2024 19:01:16 +0000 (21:01 +0200)]
; Update lisp/ldefs-boot.el

2 weeks agoImprove filet.el
Eshel Yaron [Thu, 24 Oct 2024 18:59:01 +0000 (20:59 +0200)]
Improve filet.el

2 weeks agoDrop flymake-proc.el
Eshel Yaron [Thu, 24 Oct 2024 12:12:10 +0000 (14:12 +0200)]
Drop flymake-proc.el

2 weeks agoDrop flymake-cc.el
Eshel Yaron [Thu, 24 Oct 2024 12:11:48 +0000 (14:11 +0200)]
Drop flymake-cc.el

2 weeks ago* filet.el: New file
Eshel Yaron [Thu, 24 Oct 2024 12:11:17 +0000 (14:11 +0200)]
* filet.el: New file

2 weeks agoDo not rely on package.el
Eshel Yaron [Thu, 24 Oct 2024 12:08:12 +0000 (14:08 +0200)]
Do not rely on package.el

2 weeks ago* lisp/dired-aux.el (dired-query): Simplify prompt
Eshel Yaron [Thu, 24 Oct 2024 12:07:53 +0000 (14:07 +0200)]
* lisp/dired-aux.el (dired-query): Simplify prompt

2 weeks ago(eglot--connect): Guard against dead buffers
Eshel Yaron [Thu, 24 Oct 2024 12:07:28 +0000 (14:07 +0200)]
(eglot--connect): Guard against dead buffers

2 weeks agoRemove debug message
Eshel Yaron [Thu, 24 Oct 2024 12:07:10 +0000 (14:07 +0200)]
Remove debug message

2 weeks agoFix bootstrap further
Eshel Yaron [Thu, 24 Oct 2024 12:06:51 +0000 (14:06 +0200)]
Fix bootstrap further

2 weeks agoFix bootstrap
Eshel Yaron [Thu, 24 Oct 2024 12:06:31 +0000 (14:06 +0200)]
Fix bootstrap

2 weeks agoDrop newly added 'dired-yank'
Eshel Yaron [Thu, 24 Oct 2024 12:05:38 +0000 (14:05 +0200)]
Drop newly added 'dired-yank'