1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-24 06:20:43 -08:00
Commit graph

90614 commits

Author SHA1 Message Date
Mattias Engdegård
d0147ff9e5 * lisp/emacs-lisp/shortdoc.el: More and better substring examples.
Suggested by Juri Linkov.
2023-06-24 12:27:08 +02:00
Dmitry Gutov
fdc1a12ed1 Fix "vc-print-log does not erase buffer" and associated problems
* lisp/vc/vc.el (vc-deduce-fileset): Make sure to retain the
buffer switch (if it did), bug#63949.
2023-06-24 05:57:32 +03:00
Theodor Thornhill
d507aa7336
Add selector_expression indentation rule
* lisp/progmodes/go-ts-mode.el (go-ts-mode--indent-rules): New rule.
2023-06-23 15:38:01 +02:00
Eli Zaretskii
1f664a0af7 Add "nixd" LSP server to Eglot
* lisp/progmodes/eglot.el (eglot-server-programs): Add "nixd".
Patch by Brian Leung <leungbk@posteo.net>.  (Bug#64214)
2023-06-22 19:33:31 +03:00
Eli Zaretskii
e962cf4ba7 Fix building --with-native-compilation=aot from release tarball
* lisp/Makefile.in (%.eln): Pattern rule for AOT native
compilation.
(compile-eln-targets, compile-eln-aot): New targets for AOT native
compilation.

* src/Makefile.in (../native-lisp): If NATIVE_COMPILATION_AOT is
set, also native-compile all the other Lisp files.
(Bug#64167)
2023-06-22 14:03:17 +03:00
Eli Zaretskii
a0ccf1859c Disable target-async by default in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdb-non-stop-setting): Disable until
bug#63084 is fixed.  (Bug#64186)
2023-06-21 16:10:52 +03:00
Filipp Gunbin
2bad5829ff Revert "Fix parsing of dn line if WITHDN is non-nil"
This reverts commits 71b27779a9 and d2246b2627, because they change
the return value of "ldap-search" in an incompatible way.  The fix
(a different one) will be done on master instead (bug#64089).
2023-06-20 18:25:24 +03:00
Eli Zaretskii
7637e361d3 Don't truncate filenames with "emacs.el" in them
* lisp/emacs-lisp/find-func.el (find-function-search-for-symbol):
Avoid false positives when looking for "emacs.el" matches the
likes of "emacs.elpa".  (Bug#64143)
2023-06-20 16:35:09 +03:00
Eli Zaretskii
2591eb1190 Improve documentation of 'minibuffer-message'
* doc/lispref/minibuf.texi (Minibuffer Misc): Clarify that
'minibuffer-message' behaves like 'message' if called from a
buffer that is not a minibuffer.

* lisp/minibuffer.el (minibuffer-message)
(set-minibuffer-message, clear-minibuffer-message): Doc fixes.
(Bug#64165)
2023-06-20 15:31:57 +03:00
João Távora
6f211bc57b Eglot: again fix positions of coinciding inlay hint overlays (bug#64101)
This bug originated from the previous fix, and is reproducible on non
Mac OS platforms, as long as the very latest version (at time of
writing) of the rust-analyzer server is used.

* lisp/progmodes/eglot.el (eglot--update-hints-1): Reverse
priorities when pegging overlays after (i.e. when before-string is
used).
2023-06-19 23:31:17 +01:00
Eli Zaretskii
c9022d6921 * lisp/ldefs-boot.el: Regenerate. 2023-06-18 07:14:46 -04:00
Eli Zaretskii
b3f11e94fa Fix documentation of :predicate in 'define-globalized-minor-mode'
* doc/lispref/modes.texi (Defining Minor Modes):
* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Document that :predicate creates a customizable user option.
(Bug#64048)
2023-06-18 08:50:54 +03:00
Basil L. Contovounesios
02f0be0301 Revert "Fix some tree-sitter :match regexps"
This reverts commit 95091b77f0
of 2023-06-17, mistakenly pushed to emacs-29.

The patch will be installed on master instead, and backported later,
after Emacs 29.1 is released (bug#64019).

Do not merge to master.
2023-06-17 20:39:16 +01:00
Michael Albinus
111efb0dd7 Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29 2023-06-17 18:15:47 +02:00
Michael Albinus
948b471756 Require ls-lisp in Tramp only when needed
* lisp/net/tramp-compat.el (ls-lisp): Require only on MS Windows.
(Bug#64124)

* lisp/net/tramp-sh.el (ls-lisp-use-insert-directory-program): Declare.
(tramp-sh-handle-insert-directory): Simplify.

* lisp/net/tramp.el (ls-lisp-use-insert-directory-program): Declare.
(tramp-handle-insert-directory): Require ls-lisp.  Simplify.
2023-06-17 18:15:09 +02:00
Basil L. Contovounesios
95091b77f0 Fix some tree-sitter :match regexps
The shy groups were caught by modified versions of the GNU ELPA
packages xr and relint:
- https://github.com/mattiase/xr/pull/6
- https://github.com/mattiase/relint/pull/14

* lisp/progmodes/ruby-ts-mode.el (ruby-ts--s-p-query): Quote special
character in regexp.
* lisp/progmodes/java-ts-mode.el (java-ts-mode--font-lock-settings):
* lisp/progmodes/js.el (js--plain-method-re):
(js--treesit-font-lock-settings):
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--font-lock-settings):
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings): Replace character
alternative [\\d], which matches '\' or 'd', with the most likely
intention [0-9].  Fix shy groups mistyped as optional colons.
Remove unneeded numbered :match group in rust-ts-mode (bug#64019).
2023-06-17 16:41:35 +01:00
João Távora
3d930b928f Eglot: fix relative position of coinciding inlay hint overlays (bug#64101)
Only seems to happen on certain platforms, like Mac OS.  Reason
unknown reason so far, but this defensive fix seems safe.

* lisp/progmodes/eglot.el (eglot--update-hints-1): Explicitly put
priority in inlay hint overalys.
2023-06-17 15:25:51 +01:00
Eli Zaretskii
3b0bf359e9 Fix documentation of comment-dwim (bug#64104)
* lisp/newcomment.el (comment-dwim): Doc fix.

* doc/emacs/programs.texi (Comment Commands): More accurate
description of what 'M-;' does when there's no active region.
2023-06-17 11:37:19 +03:00
Eli Zaretskii
71b27779a9 ; * lisp/net/ldap.el (ldap-search-internal): Fix last change. (Bug#64089) 2023-06-17 10:59:44 +03:00
Jens Schmidt
d2246b2627 Fix parsing of dn line if WITHDN is non-nil
Function `ldap-search' errors out with `wrong-type-argument listp'
when called with WITHDN non-nil.
* lisp/net/ldap.el (ldap-search-internal): Parse the dn line
correctly so that `ldap-search' can grok it.  (Bug#64089)
2023-06-17 10:57:42 +03:00
Eli Zaretskii
92faf1f564 Consider 'dired-kill-when-opening-new-dired-buffer' in mouse clicks
* lisp/dired.el (dired-mouse-find-file): Honor the value of
'dired-kill-when-opening-new-dired-buffer'.  (Bug#64079)
2023-06-15 16:12:24 +03:00
Eli Zaretskii
70fc7c41ef Improve documentation of 'declare' forms
* lisp/simple.el (read-extended-command-predicate): Mention the
'(declare completion ...' form in the doc string.

* doc/lispref/functions.texi (Declare Form): Clarify
'completion-predicate' and 'modes'; add cross-references.
(Bug#64045)
2023-06-15 09:28:26 +03:00
Basil L. Contovounesios
2847857496 Improve tree-sitter docs
* doc/lispref/positions.texi (List Motion): Incorporate more
accurate description of treesit-defun-type-regexp from
'(elisp) Tree-sitter Major Modes', replacing that duplicate
entry (bug#64018).

* doc/lispref/parsing.texi (Parsing Program Source)
(Language Grammar, Using Parser, Retrieving Nodes)
(Accessing Node Information, Pattern Matching, Multiple Languages):
(Tree-sitter Major Modes):
* doc/lispref/modes.texi (Parser-based Font Lock): Improve wording,
grammar, punctuation, and markup.  Fix typos.
(Parser-based Indentation): Ditto.  Document indent rule presets
field-is, catch-all, nth-sibling, grand-parent, and
great-grand-parent.

* lisp/treesit.el (treesit-simple-indent-presets): Mention field-is,
catch-all, nth-sibling, grand-parent, great-grand-parent in
docstring.
(treesit-major-mode-setup, treesit-explore-mode): Improve
docstring/commentary grammar.
2023-06-13 17:22:16 +01:00
Basil L. Contovounesios
8dc08333ee Fix bol/bos anchors in tree-sitter :match regexps
Further regexp fixes to follow separately (bug#64019#29).

* lisp/progmodes/c-ts-mode.el (c-ts-mode--font-lock-settings):
* lisp/progmodes/cmake-ts-mode.el
(cmake-ts-mode--font-lock-settings):
* lisp/progmodes/java-ts-mode.el (java-ts-mode--font-lock-settings):
* lisp/progmodes/js.el (js--treesit-font-lock-settings):
* lisp/progmodes/python.el (python--treesit-settings):
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--font-lock-settings):
* lisp/progmodes/sh-script.el (sh-mode--treesit-settings):
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings):
* test/src/treesit-tests.el (treesit-query-api): Anchor :match
regexps at beginning/end of string, not line.
2023-06-13 14:35:14 +01:00
Eli Zaretskii
1f0527a312 ; Fix last change in tex-mode.el
* lisp/textmodes/tex-mode.el (tex-cmd-doc-view): Remove the second
argument.  (Bug#63956)
2023-06-13 14:11:41 +03:00
Stefan Monnier
4da479920e * lisp/subr.el (with-restriction): Tweak indent rule 2023-06-12 22:43:44 -04:00
Robert Pluim
36aa9bd818 ; Fix previous change
* lisp/window.el (display-tex-shell-buffer-action): Fix default
value's type.  (Bug#63956)
2023-06-12 19:08:31 +02:00
Eli Zaretskii
aaeaf608d8 Fix setting region in the minibuffer
* lisp/minibuffer.el (minibuffer-beginning-of-buffer): Fix setting
region.  (Bug#64022)
2023-06-12 18:47:04 +03:00
Eli Zaretskii
bdb0bc2b4e Fix tex-mode display-buffer issues
* lisp/window.el (display-tex-shell-buffer-action): New defcustom.
* lisp/textmodes/tex-mode.el (tex-display-shell)
(tex-cmd-doc-view, tex-recenter-output-buffer): Use it.
(Bug#63956)
2023-06-11 09:15:01 +03:00
Eli Zaretskii
2c623e4feb Avoid errors in 'apropos-documentation' after 'eval-buffer'
* lisp/apropos.el (apropos--map-preloaded-atoms): Support the case
where an element of 'load-history' has nil as its car.  (Bug#63881)
2023-06-10 20:48:21 +03:00
Morgan Smith
0d8b69e0ad Don't ding when completion succeeded
* lisp/minibuffer.el (minibuffer-completion-help): Ensure 'ding'
is not called on a successful completion.  Ensure 'ding' is not
called on a failure if 'completion-fail-discreetly' is set.
Also change "No completions" to "No match" as that is what is
used elsewhere.  (Bug#63913)
2023-06-10 12:10:40 +03:00
Eli Zaretskii
90eadc3e23 Revert "* package.el (package--get-activatable-pkg): Prefer source packages"
This reverts commit fb87d5008e.
It caused problems when new versions of packages are installed
without deleting old versions.  (Bug#63757)
2023-06-08 12:23:11 +03:00
Andrea Corallo
65f355ea0a ; Update my mail address
* lisp/emacs-lisp/comp-cstr.el: Update author mail.
* lisp/emacs-lisp/comp.el: Likewise.
* src/comp.c: Likewise.
* test/lisp/emacs-lisp/comp-cstr-tests.el: Likewise.
* test/src/comp-resources/comp-test-funcs-dyn.el: Likewise.
* test/src/comp-resources/comp-test-funcs.el: Likewise.
* test/src/comp-resources/comp-test-pure.el: Likewise.
* test/src/comp-tests.el: Likewise.
2023-06-08 11:04:10 +02:00
Michael Albinus
a3a69ec234 Fix connection-local user options handling (bug#63300)
* lisp/files-x.el (connection-local-set-profiles)
(connection-local-set-profile-variables): Avoid saving the changed
user option to file unless triggered explicitly by user.  (Bug#63300)
2023-06-08 09:59:06 +02:00
Andrea Corallo
bcc222251e Fix `emacs-lisp-native-compile-and-load' for C-h f (bug#58314)
* lisp/emacs-lisp/comp.el (comp-write-bytecode-file): New function
spilling code from `batch-byte+native-compile'.
(batch-byte+native-compile): Make use of.
* lisp/progmodes/elisp-mode.el
(emacs-lisp-native-compile-and-load): Produce the elc file and ask
to have it loaded.
2023-06-06 12:21:43 +02:00
Theodor Thornhill
07c8211ca3 Add 'infer' as a keyword to typescript-ts-mode (bug#63880)
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode--keywords):
New keyword.
2023-06-06 06:27:35 +02:00
Philip Kaludercic
fa8135f891 Revert changes to the order in which package descs are loaded
* lisp/emacs-lisp/package.el (package-load-all-descriptors):  Remove
NOSORT argument to 'directory-files', reverting back to the behaviour
as of Emacs 28.  (Bug#63757)
2023-06-04 15:21:13 +02:00
Spencer Baugh
2a84ab905c Handle point in last file-name component in minibuffer completion
This is a followup to commit e338a8ac41
(Handle point not at EOB in minibuffer-choose-completion).
That commit added a heuristic, but the heuristic was insufficient:
It still had the original wrong behavior when completing the last
file-name component (i.e., the completion category is 'file' and
there's no slash after point).  This patch makes the heuristic
cover that case as well.
* lisp/minibuffer.el (minibuffer-next-completion)
(minibuffer-choose-completion): If in file completion and there's no
slash after point, clear what's after point when we complete.
(Bug#62700)
2023-06-04 10:05:43 +03:00
Eli Zaretskii
4bc043ff45 Avoid asking redundant question in emacsbug.el
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Don't ask the
question about saving email setup if we cannot save it anyway.
(Bug#63816)
2023-06-03 19:20:23 +03:00
Dmitry Gutov
583ba1db7e typescript-ts-mode: Add a rule for function_signature
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--font-lock-settings):
Add a rule for function_signature (bug#63867)
2023-06-03 15:00:41 +03:00
Eli Zaretskii
ede3535051 ; Fix last change
* lisp/progmodes/rust-ts-mode.el
(rust-ts-mode--syntax-propertize): Doc fix.  (Bug#63708)
2023-06-03 11:34:11 +03:00
Йордан Миладинов
8ec786349e Fix apostrophe handling in rust-ts-mode and go-ts-mode (Bug#63708)
* lisp/progmodes/rust-ts-mode.el (rust-ts-mode--syntax-propertize):
Treat apostrophes as strings if used to define character literals.
Treat LT and GT as pairs if used to define type parameters (formerly
they were treated as pairs only for type arguments).
* lisp/progmodes/go-ts-mode.el (go-ts-mode--syntax-table): Treat
apostrophes as strings if used to define rune literals.

Copyright-paperwork-exempt: yes
2023-06-03 11:30:18 +03:00
Eli Zaretskii
4897c98b6c Fix 'python-util-clone-local-variables'
* lisp/progmodes/python.el (python-util-clone-local-variables):
Avoid signaling an error when a local variable is unbound.
Patch by Ernesto Alfonso <erjoalgo@gmail.com>.  (Bug#63818)
2023-06-03 10:20:08 +03:00
kobarity
6b2c8dc905 Revert "Enhance Python font-lock to support multilines"
This reverts commit 4915ca5dd4.

We have found that there are performance issues when editing a large
file.  The issue can be reproduced as follows:

1. emacs -Q
2. Open large Python file (e.g. turtle.py in Python)
3. Near the top of the buffer, enter open paren and some characters.

The above commit extends the region to be font-locked using
`python-nav-end-of-statement'.  However, if there are unbalanced
parens, it may move point to the end of the buffer.  This causes
almost the entire buffer to be font-locked, which is not acceptable
for large files.
2023-06-03 10:09:33 +03:00
Jonas Bernoulli
03663b8798
Update to Transient v0.4.1 2023-06-02 23:26:45 +02:00
Eli Zaretskii
dc7acb1aaf Avoid errors in 'delete-forward-char' deleting static compositions
* lisp/simple.el (delete-forward-char): Fix recognition of static
compositions.  (Bug#63837)
2023-06-02 15:42:42 +03:00
Robert Pluim
2f94f6de9d Make VS-15 and VS-16 compositions work correctly
There is a conflict between forward matching and backward matching
composition rules involving the same codepoint, which can cause the
backward matching ones not to be invoked.  Ensure that VS-15 (U+FE0E)
and VS-16 (U+FE0F) are composed by forward matching rules instead in
order to avoid this issue.

* admin/unidata/emoji-zwj.awk: Add rules for CHAR+VS-15 and CHAR+VS-16.
* lisp/composite.el: remove backward matching rule for VS-15.  (Bug#63731)
2023-06-02 14:13:43 +02:00
Dmitry Gutov
753f8aa1f1 Fix project-name for vc-aware backend in non-file buffers
* lisp/progmodes/project.el (project-name): Make sure
project-vc-name is picked up from dir-locals in all
non-file-visiting buffers too (mentioned in bug#63469).
2023-06-02 05:10:15 +03:00
Philip Kaludercic
17c7915ab9 ; Fix 'package-install-upgrade-built-in' check for package menu
* lisp/emacs-lisp/package.el (package-menu--find-upgrades): Use
correct check to verify if a built-in packages in the package menu can
be upgraded or not.

This change improves upon a faulty assumption from
ba2c76fa2b.  (Bug#63587)
2023-05-31 23:54:29 +02:00
Theodor Thornhill
e252ce26ea Add type_predicate 'is' as keyword in typescript-ts-mode (bug#63810)
* lisp/progmodes/typescript-ts-mode.el (typescript-ts-mode--keywords):
New keyword 'is'.
2023-05-31 20:47:06 +02:00