1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-19 01:10:57 -08:00
Commit graph

179502 commits

Author SHA1 Message Date
Spencer Baugh
0e9cee2bf5 Ignore keymaps at point for positions outside the buffer
Correct a few edge cases where we used the keymaps at point when
looking up keymaps for an event position which is outside the
current buffer.  Namely:

- Clicking on a part of the mode line which is after the end of
  mode-line-format produces an event with non-nil posn-area but
  nil posn-string.

- Even if posn-string doesn't have a local keymap, we should
  still ignore the keymaps at point if posn-string is non-nil.

* src/keymap.c (Fcurrent_active_maps): Ignore keymaps at point
for more positions outside the buffer.  (bug#76620)
2025-09-09 18:02:24 -04:00
Stefan Monnier
82f6c16514 Allow use of \N{...} earlier to help fix bug#79353
* lisp/emacs-lisp/shorthands.el (hack-read-symbol-shorthands):
Avoid inf-loops during bootstrap.
E.g. this can occur while loading `uni-special-lowercase.el` where
`hack-local-variables--find-variables` uses `downcase` which triggers
loading `uni-special-lowercase.el`, ...

* lisp/international/mule-cmds.el (ucs-names): Explicitly require
`charprop`.

* src/Makefile.in ($(lispsource)/loaddefs.el): Depend on `charprop`.
2025-09-09 18:01:24 -04:00
Michael Albinus
d1221a427f Ignore non-existing or empty files in auth-sources
* doc/misc/auth.texi: Replace @code{"..."} by @t{"..."}.
(Help for users): Describe property lists format.  Explain, that
empty files in auth-sources are ignored when
auth-source-ignore-empty-file is non-nil.
(Help for developers): Add auth-source-creation-defaults to vindex.

* etc/NEWS: Introduce auth-source-ignore-empty-file.
Presentational fixes and improvements.

* lisp/auth-source.el (auth-source-ignore-empty-file): New defcustom.
(auth-source-backends-parser-file): Use it.  (Bug#9113)

* test/lisp/auth-source-tests.el (auth-source-validate-backend):
Let-bind `auth-source-ignore-empty-file'.
(auth-source-test-searches): Set file suffix.
(auth-source-test-netrc-create-secret): Adapt test.
2025-09-09 23:20:56 +02:00
Sean Whitton
a2d4034242 ; * lisp/vc/vc-hg.el (vc-hg-diff): Pass `Hg' to vc-working-revision. 2025-09-09 14:48:27 +01:00
Sean Whitton
ab83e15d8c ; * lisp/vc/vc-hg.el (vc-hg-diff): Tweak 'and' forms. 2025-09-09 14:46:09 +01:00
Michael Albinus
744216c029 Merge from origin/emacs-30
56cdb65e54 ; * doc/emacs/mini.texi (Minibuffer History): Fix typo.
e65ebdf329 ; Improve documentation of isearch ion minibuffer
6544372764 * doc/misc/tramp.texi (Password handling): Fix default of...
96d9040341 Fix auth-source.el doc
2025-09-09 10:11:00 +02:00
Lockywolf
710d371eb7 Add convenience path/to/component target to tests/Makefile.in
* test/Makefile.in (subdir_template): Add convenience targets.

* test/README: Mention this.
2025-09-09 10:09:43 +02:00
Stefan Monnier
4c74b68fb1 (cl--make-usage-args): Try and fix bug#79353
* lisp/emacs-lisp/cl-macs.el (cl--make-usage-args): Don't depend on
`cl-extra` when `take` does the job.
2025-09-08 12:39:48 -04:00
Eshel Yaron
6b6cfa8e40
; * lisp/progmodes/project.el: Restore backward compatibility. 2025-09-08 17:30:52 +02:00
Robert Pluim
56cdb65e54 ; * doc/emacs/mini.texi (Minibuffer History): Fix typo. 2025-09-08 15:14:04 +02:00
Eli Zaretskii
e65ebdf329 ; Improve documentation of isearch ion minibuffer
* doc/emacs/mini.texi (Minibuffer History):
* doc/emacs/search.texi (Repeat Isearch, Isearch Minibuffer):
Improve wording, cross-references, and indexing.  (Bug#79395)
2025-09-08 14:55:43 +03:00
Sean Whitton
15939846a0 Make C-x v w w work in Log View mode, to change working directory
* lisp/vc/diff-mode.el (diff-find-matching-buffer): Rename ...
* lisp/progmodes/project.el
(project-change-to-matching-directory): ... to here.  All uses
changed.
* lisp/vc/log-view.el (project-change-to-matching-directory):
Declare.
(log-view-mode): Use it.
* doc/emacs/vc1-xtra.texi (Other Working Trees): Document the
change.
2025-09-08 11:50:36 +01:00
Sean Whitton
0e6c4461d8 vc-next-action: Fix a cache invalidation problem
* lisp/vc/vc.el (vc-next-action): Use vc-registered, not
vc-backend, to see which files are already registered.
2025-09-08 10:45:59 +01:00
Jostein Kjønigsen
5be32aa047 csharp-mode: indentation fixes (bug#79398)
* lisp/progmodes/csharp-mode.el (csharp-ts-mode--indent-rules):
Adjust rules to fix the following incorrect behaviours:
- in multiline expressions/method call chains;
- in object initialization expressions;
- in array creation expressions.
2025-09-07 20:55:06 +03:00
Roi Martin
765dfb225a Fix grammar installation in elixir-ts-mode and heex-ts-mode
Fix tree-sitter grammar installation issues in elixir-ts-mode and
heex-ts-mode (Bug#79363).
* lisp/progmodes/elixir-ts-mode.el (elixir-ts--font-lock-settings):
Check that tree-sitter is available.
(elixir-ts-mode): If the user answers "no" to installing the heex
tree-sitter grammar, do not ask again.  Group heex settings.
* lisp/progmodes/heex-ts-mode.el (heex-ts-mode): Ensure that elixir
tree-sitter grammar is installed.
2025-09-07 20:43:41 +03:00
Roi Martin
445d6d5921 Fix font lock in go-ts-mode
Fix font lock in go-ts-mode when the tree-sitter grammar is
automatically installed (Bug#79363).
* lisp/progmodes/go-ts-mode.el (go-ts-mode--font-lock-settings):
Evaluate the rules only after the tree-sitter grammar is installed.
(go-ts-mode): Call the new `go-ts-mode--font-lock-settings' function.
2025-09-07 20:43:39 +03:00
Roi Martin
86cc48e45e Fix font lock and indentation in cmake-ts-mode
Fix font lock and indentation in cmake-ts-mode when the tree-sitter
grammar is automatically installed (Bug#79363).
* lisp/progmodes/cmake-ts-mode.el (cmake-ts-mode--indent-rules)
(cmake-ts-mode--font-lock-settings): Evaluate the rules only after the
tree-sitter grammar is installed.
(cmake-ts-mode): Call the new `cmake-ts-mode--indent-rules' and
`cmake-ts-mode--font-lock-settings' functions.
2025-09-07 20:43:36 +03:00
Mattias Engdegård
a4ea22d998 * lisp/emacs-lisp/cl-lib.el (cl-copy-list): Not error-free, bug#79396 2025-09-07 17:47:51 +02:00
Michael Albinus
6544372764 * doc/misc/tramp.texi (Password handling): Fix default of auth-sources. 2025-09-07 16:08:09 +02:00
Mattias Engdegård
c13c620f12 Less expensive jsonrpc logging (bug#79361)
Remove the oldest 1/4 of the jsonrpc events buffer when reaching the
size limit instead of just a few lines.  This reduces the cost of adding
a log entry from O(buffer-size) to O(1).

Also make messages forwarded to the events buffer, such as ones sent to
stderr from the server process, obey the same limit.

* lisp/jsonrpc.el (jsonrpc--limit-buffer-size): New.
(jsonrpc--log-event, jsonrpc--forwarding-buffer): Use it.
2025-09-07 14:39:24 +02:00
Mattias Engdegård
36c8ebe78a Avoid unnecessary text decoding in jsonrpc for speed (bug#79361)
The built-in JSON parser works on undecoded (unibyte) input; decoding
received data is just a waste and does take time even when all-ASCII.

* lisp/jsonrpc.el (initialize-instance): Use unibyte process buffer and
binary coding for process I/O, implying unibyte strings being passed to
the filter function.
(jsonrpc-connection-send): More efficient message generation.
(jsonrpc--json-read): Compatibility code for the old elisp json parser.
(jsonrpc--process-filter): Faster header-matching regexp.
2025-09-07 14:39:24 +02:00
Mattias Engdegård
11b3af6425 Harmonise doc strings for {re-,posix-,}search-{forward,backward}
The doc strings for re-search-forward and re-search-backward have been
improved (bug#25193, bug#31584) but the corresponding posix- and
non-regexp search functions still have the original text, despite
describing the exact same mechanism.

There is no reason for them to differ, so we make them all use the
updated version which also is more readable.  Any future doc string
improvements should be made to all of them in the same way for
consistency.

* src/search.c (Fsearch_backward, Fsearch_forward)
(Fposix_search_backward, Fposix_search_forward):
Use text from Fre_search_forward and Fre_search_backward.
2025-09-07 14:39:07 +02:00
Lockywolf
adc9c43306 ispell.el: Add 56 tests (bug#79177)
* test/lisp/textmodes/ispell-tests/ispell-tests.el:
* test/lisp/textmodes/ispell-tests/ispell-aspell-tests.el:
* test/lisp/textmodes/ispell-tests/ispell-international-ispell-tests.el:
* test/lisp/textmodes/ispell-tests/ispell-hunspell-tests.el: New files.
* test/lisp/textmodes/ispell-resources/fake-aspell.bash: Add a mock
`aspell' for use in ispell.el test, with old version.
* test/lisp/textmodes/ispell-resources/fake-aspell-new.bash: Add a mock
`aspell' for use in ispell.el test, with recent version.
2025-09-07 15:01:43 +03:00
Michael Albinus
96d9040341 Fix auth-source.el doc
* doc/misc/auth.texi (Help for users): Change variables to user
options where appropriate.  Use setopt for them.  Add Tramp link.
Fix example.  (Bug#9113)

* lisp/auth-source.el (auth-sources): Add :link.
2025-09-07 12:18:42 +02:00
Michael Albinus
baf5908caa * admin/notes/jargon: Add RSN. 2025-09-07 09:00:45 +02:00
Elijah Gabe Pérez
59f21094fd ; Fix x-gtk-stock-map
* lisp/term/pgtk-win.el (x-gtk-stock-map):
* lisp/term/x-win.el (x-gtk-stock-map): Fix entry.
2025-09-07 09:00:20 +02:00
Dmitry Gutov
c36259e479 project--read-project-buffer: Fix creating new buffer
* lisp/progmodes/project.el (project--read-project-buffer):
Fix the case of entering new buffer name (bug#77312).
2025-09-07 04:56:00 +03:00
Sean Whitton
c26f702bf9 vc-deduce-backend: Respect vc-buffer-overriding-fileset
* lisp/vc/vc.el (vc-deduce-backend): Respect
vc-buffer-overriding-fileset, if set.
2025-09-06 16:43:45 +01:00
Spencer Baugh
2a1f9f8dfe Fix nil value of 'elisp-flymake-byte-compile-executable'
* lisp/progmodes/elisp-mode.el
(elisp-flymake-byte-compile--executable): Properly check for
nil, and simplify code.  (Bug#79380)
2025-09-06 18:33:32 +03:00
Eli Zaretskii
72401548ca ; * src/process.c (deactivate_process): Fix last change. 2025-09-06 17:52:31 +03:00
Brian Leung
e06684067d Eglot: Really fix neocmakelsp invocation
* lisp/progmodes/eglot.el (eglot-server-programs): Remove an
incorrect extra layer of parentheses.  (Bug#79394)
2025-09-06 16:42:33 +03:00
Sean Whitton
2ecced627b Fix log-view--mark-unmark interactive arguments
* lisp/vc/log-view.el (log-view--mark-unmark): New BEG and END
arguments.  Don't call region-beginning and region-end here.
(log-view-mark-entry, log-view-unmark-entry): Pass BEG and END
to log-view--mark-unmark, non-nil when the region is active.
2025-09-06 12:15:33 +01:00
Eli Zaretskii
6c150961fd ; Merge from origin/emacs-30
The following commit was skipped:

5e57829ffd Fix command keys in doc string of 'inferior-python-mode'
2025-09-06 05:53:09 -04:00
Eli Zaretskii
4ac9e93e5e Merge from origin/emacs-30
aad5b676d1 ; * lisp/emacs-lisp/ring.el (ring-convert-sequence-to-rin...
ddd63891a4 ; * doc/misc/flymake.texi (Troubleshooting): Fix typo (bu...
8dcb802046 ; vc-hooks.el: Standardize terminology in header.
2025-09-06 05:53:08 -04:00
Eli Zaretskii
29d18f4ffe Avoid assertion violations when starting client network process
* src/process.c (deactivate_process): Clear the callback info of
descriptors we are closing.  (Bug#79367)
2025-09-06 12:43:19 +03:00
Jostein Kjønigsen
6b42b974ce 'nxml-mode': add schema for .NET SLNX files.
SLNX is a new XML-based file-format for .NET based solutions, replacing
the older proprietary SLN file-format.

Unlike SLN-files, it is merge-friendly and expected to become the new
de-facto standard for working with .NET projects.  This commit adds
support for SLNX-schema to 'nxml-mode'.

The schme provided has been synthesized using the official XSD-schema
definition:
https://github.com/microsoft/vs-solutionpersistence/blob/main/src/Microsoft.VisualStudio.SolutionPersistence/Serializer/Xml/Slnx.xsd

This schema was then converted to RNG using XSDtoRNG.xsl:
https://github.com/epiasini/XSDtoRNG

The RNG schema was then converted to RNC using the trang CLI-tool:
https://relaxng.org/jclark/trang.html

* etc/schema/dotnet-slnx.rnc: New file.
* etc/schema/schemas.xml: Add Slnx schema.

* lisp/files.el (auto-mode-alist): Add association for SLNX files.
(Bug#79379)
2025-09-06 12:27:29 +03:00
Eli Zaretskii
5e57829ffd Fix command keys in doc string of 'inferior-python-mode'
* lisp/progmodes/python.el (inferior-python-mode): Mention the
correct mode-map in the doc string.  (Bug#79386)

(cherry picked from commit ab5e0f5359)
2025-09-06 12:23:35 +03:00
Eli Zaretskii
ab5e0f5359 Fix command keys in doc string of 'inferior-python-mode'
* lisp/progmodes/python.el (inferior-python-mode): Mention the
correct mode-map in the doc string.  (Bug#79386)
2025-09-06 12:20:58 +03:00
Gustav Hållberg
7b09f8bb7c "M-x lldb": bugfix source code location without column
* lisp/progmodes/gud.el (gud-lldb-marker-filter): Fix problem
where the source code location ends up at the last character of
the previous line if no (or zero) column is reported by lldb.
(Bug#79360)

Copyright-paperwork-exempt: yes
2025-09-06 12:04:30 +03:00
Eli Zaretskii
aad5b676d1 ; * lisp/emacs-lisp/ring.el (ring-convert-sequence-to-ring): Doc fix. 2025-09-06 11:36:21 +03:00
Liu Hui
fb969ab174 Fix duplicate inputs in 'comint-read-input-ring'
* lisp/comint.el (comint-read-input-ring): Fix the index of
the last input in the ring.  (Bug#79329)
2025-09-06 11:25:22 +03:00
Eli Zaretskii
ddd63891a4 ; * doc/misc/flymake.texi (Troubleshooting): Fix typo (bug#79391). 2025-09-06 10:15:49 +03:00
Stefan Monnier
c374bb50da (redisplay_internal): Fix follow-mode (bug#79306)
* src/xdisp.c (redisplay_internal): Don't increment `redisplay_counter`
if we ail out before starting an actual redisplay.
2025-09-05 15:02:54 -04:00
Sean Whitton
4d8ba9fbe7 Log View marking commands: respect numeric prefixes & active regions
* lisp/vc/log-view.el (log-view--mark-unmark)
(log-view--mark-entry, log-view--unmark-entry): New functions.
(log-view-mark-entry, log-view-unmark-entry): Call them.
Newly respect numeric prefix arguments and active regions.
2025-09-05 16:08:37 +01:00
Sean Whitton
9501b9b198 ; log-view-mark-entry, log-view-unmark-entry: Fix advancing point. 2025-09-05 15:30:02 +01:00
Sean Whitton
787f18010d vc-dir-mark-unmark: When region active, don't do any y/n prompting
* lisp/vc/vc-dir.el (vc-dir-mark-unmark): When region active,
bind vc-dir-allow-mass-mark-changes to nil.
2025-09-05 15:22:31 +01:00
Sean Whitton
9f7cdcb454 vc-dir-mark-unmark: When region active, don't do any y/n prompting
* lisp/vc/vc-dir.el (vc-dir-mark-unmark): When region active,
bind vc-dir-allow-mass-mark-changes to nil.
2025-09-05 15:22:12 +01:00
Eli Zaretskii
20a9129349 ; Fix 'elisp-flymake-byte-compile-executable' defcustom
* lisp/progmodes/elisp-mode.el
(elisp-flymake-byte-compile-executable): Fix :type.
2025-09-05 14:29:37 +03:00
Sean Whitton
a893dacb38 Make 'm' and 'u' in Log View mode more standard
* lisp/vc/log-view.el (log-view-mark-entry)
(log-view-unmark-entry): New commands.
(log-view-toggle-mark-entry): Rewrite in terms of them.
(log-view-mode-map): Unbind log-view-toggle-mark-entry.
Bind the two new commands.
* etc/NEWS: Document the change.
2025-09-05 11:58:15 +01:00
Sean Whitton
8951cea14b ; * lisp/vc/vc-hg.el (vc-hg--pushpull): Fix docs for OBSOLETE param. 2025-09-05 11:24:07 +01:00