1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-16 16:20:40 -08:00
Commit graph

178482 commits

Author SHA1 Message Date
Eli Zaretskii
3f8faed9d2 Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2025-05-31 17:29:40 +03:00
Matthew Tromp
9d6a4fdd7e Add additional keybindings for flymake diagnostics modes
This adds keybindings for C-o and C-m, and changes the bindings
for n and m, in `flymake-diagnostics-buffer-mode' and
`flymake-project-diagnostics-mode' buffers.

Previously, `flymake-project-diagnostics-mode' did not use the
keybindings for `flymake-diagnostics-buffer-mode'. RET and SPC
were never bound in `flymake-project-diagnostics-mode' buffers.
This seems to have been an oversight: since the filename and
message are buttons which call `flymake-goto-diagnostic',
pressing RET still brought users to the diagnostic at point
most of the time.  This change adds a
`flymake-project-diagnostics-mode-map' which inherits from
`flymake-diagnostics-buffer-mode-map'.

C-o and C-m now show and jump to the diagnostic currently at point,
similar to how `compilation-mode' works.

n and p now show the diagnostic newly under point after moving up or
down a line, which is also intended to make behavior more similar to
`compilation-mode'.

In order that other next-error buffers do not interfere with
navigation in the diagnostics buffers, this change introduces and
uses new functions, `next-error-this-buffer-no-select' and
`previous-error-this-buffer-no-select'. If we instead used
`next-error-no-select' and `previous-error-no-select', then a user
who runs `flymake-show-diagnostics-buffer', then e.g. `compile',
then returns to the diagnostics buffer and presses 'n', would be
navigated to the next error in the compilation buffer.

* lisp/progmodes/flymake.el (flymake-diagnostics-buffer-mode-map): Add
bindings.
(flymake-project-diagnostics-mode-map): Inherit bindings from
`flymake-diagnostics-buffer-mode'
* lisp/simple.el (next-error-this-buffer-no-select):
(previous-error-this-buffer-no-select): Add new commands.
(Bug#78619)

Copyright-paperwork-exempt: yes
2025-05-31 17:23:08 +03:00
Michael Albinus
5ce0e1372b Fix Tramp bug#78508
* lisp/net/tramp-container.el (tramp-methods) <docker, dockercp, podman>
<podmancp, apptainer, nspawn>:
* lisp/net/tramp-sh.el (tramp-methods) <scp, scpx, rsync>
<ssh, sshx, sudo>:
* lisp/net/tramp-sshfs.el (tramp-methods) <sshfs>: Set TERM environment.
(Bug#78508)

* lisp/net/tramp-sh.el (tramp-find-executable): Handle superlong PATH.
(tramp-set-remote-path): Simplify command.
(tramp-timeout-session): Add ;;;###tramp-autoload cookie.

* lisp/net/tramp-smb.el (tramp-smb-errors): Add string.
(tramp-smb-winexe-program): Adapt docstring.
(tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
(tramp-smb-handle-set-file-acl, tramp-smb-maybe-open-connection):
Simplify argument handling.
(tramp-smb-handle-process-file): Flush " process-exit-status" property.
(tramp-smb-call-winexe): Set $winsize.Width to 102 only.

* lisp/net/tramp.el (tramp-process-sentinel): Adapt docstring.
Set " process-exit-status" property.

* test/lisp/net/tramp-tests.el (tramp--test-enabled):
Make it more robust.
(tramp-test18-file-attributes)
(tramp-test26-interactive-file-name-completion)
(tramp-test26-file-name-completion-boundaries)
(tramp-test35-remote-path): Adapt tests.
2025-05-31 15:08:06 +02:00
Eli Zaretskii
b247b1e0b1 Merge from origin/emacs-30
9dc6c21b41 ; * lisp/subr.el (setq-local): Doc fix (bug#78644).
1bb88a86cb Revert "; * lisp/subr.el (setq-local): Doc fix (bug#78644)."
cb9556d669 ; * lisp/subr.el (setq-local): Doc fix (bug#78644).
8881dca81c ; * doc/lispref/searching.texi (Char Classes): Add speedu...
4507b6a9c7 Fix bug in 'todo-jump-to-category' (bug#78608)
2025-05-31 08:29:51 -04:00
Eli Zaretskii
6a7f89c4e9 ; Merge from origin/emacs-30
The following commit was skipped:

3e57c35323 Fix gitlab-ci.yml (don't merge to master)
2025-05-31 08:29:51 -04:00
Eli Zaretskii
b3a8633dba Merge from origin/emacs-30
1d2ae31b8b typescript-ts-mode: Improve function body indentation (bu...
421ecbcf6b ; * CONTRIBUTE: Explain the line-width preferences.
2025-05-31 08:29:50 -04:00
Matthias Meulien
6f8cee0331 ansi-osc.el: Use marker (bug#78184)
* lisp/ansi-osc.el (ansi-osc-apply-on-region)
(ansi-osc-filter-region): Use marker to properly handle
unfinished escape sequence.

* test/lisp/ansi-osc-tests.el (ansi-osc-tests--strings)
(ansi-osc-tests-apply-region-no-handlers)
(ansi-osc-tests-apply-region-no-handlers-multiple-calls)
(ansi-osc-tests-filter-region)
(ansi-osc-tests-filter-region-with-multiple-calls): Cover
bug#78184.
2025-05-31 15:21:21 +03:00
Eli Zaretskii
32d911cddf Remove unused user options in sh-script.el
* lisp/progmodes/sh-script.el (sh-indent-comment)
(sh-first-lines-indent, sh-indent-for-else): Remove variables that
are no longer obeyed.
(sh-var-list): Likewise.  (Bug#78592)
2025-05-31 15:09:42 +03:00
Eli Zaretskii
bcc7c4dbbb ; * lisp/startup.el (load-path-filter--cache): Doc fix. 2025-05-31 14:53:50 +03:00
Sean Whitton
98c3f4c371 Restore & obsolete vc-finish-logentry-hook
* lisp/vc/vc-dispatcher.el (vc-finish-logentry-hook): Declare,
document and mark obsolete.
(vc-finish-logentry): Call vc-finish-logentry-hook again.
2025-05-31 09:36:35 +01:00
Eli Zaretskii
9dc6c21b41 ; * lisp/subr.el (setq-local): Doc fix (bug#78644). 2025-05-31 11:12:58 +03:00
Eli Zaretskii
1bb88a86cb Revert "; * lisp/subr.el (setq-local): Doc fix (bug#78644)."
This reverts commit cb9556d669.
Some of its parts were not supposed to be installed.
2025-05-31 11:08:45 +03:00
Eli Zaretskii
cb9556d669 ; * lisp/subr.el (setq-local): Doc fix (bug#78644). 2025-05-31 10:05:06 +03:00
Jim Porter
d25e9f5180 Add more "safe" display specs to 'visual-wrap-prefix-mode'
* lisp/visual-wrap.el (visual-wrap--safe-display-specs): Add
'space-width' and 'min-width'.
(visual-wrap--display-property-safe-p): Use 'member' instead of 'memq'
to more-closely match the behavior of other code that works with display
properties.
2025-05-30 22:21:40 -07:00
Jeremy Bryant
9e322088b0 ; reftex.el: Checkdoc fixes, comments to docstrings
* lisp/textmodes/reftex.el (reftex-next-multifile-index):
(reftex-TeX-master-file, reftex-is-multi):
(reftex-get-cite-format, reftex-ensure-compiled-variables):
(reftex-erase-all-selection-and-index-buffers):
(reftex-compile-variables, reftex-parse-args):
(reftex-access-scan-info, reftex-check-parse-consistency):
(reftex-select-external-document, reftex-find-file-externally):
(reftex-access-search-path, reftex-find-file-on-path):
(reftex-parse-colon-path, reftex-expand-path):
(reftex-recursive-directory-list, reftex-typekey-check):
(reftex-check-recursive-edit, reftex-no-props):
(reftex-match-string, reftex-kill-buffer):
(reftex-erase-buffer, reftex-this-word, reftex-all-assq):
(reftex-all-assoc-string, reftex-last-assoc-before-elt):
(reftex-sublist-nth, reftex-make-selection-buffer-name):
(reftex-make-index-buffer-name, reftex-truncate):
(reftex-nearest-match, reftex-auto-mode-alist):
(reftex-enlarge-to-fit, reftex-select-with-char):
(reftex-make-regexp-allow-for-ctrl-m, reftex-visited-files):
(reftex-get-file-buffer-force, reftex-kill-temporary-buffers):
(reftex-splice-symbols-into-list, reftex-uniquify):
(reftex-uniquify-by-car, reftex-nicify-text, reftex-refontify):
(reftex-fontify-select-label-buffer):
(reftex-select-font-lock-fontify-region):
(reftex-verified-face, reftex-highlight-shall-die): Convert
comment to docstring in functions.
(reftex-silence-toc-markers): Convert comment to docstring and
capitalize argument.
(reftex-set-cite-format): Capitalize argument.  (AUCTeX bug#77864)
2025-05-30 18:43:29 +02:00
Sean Whitton
c459ba692e vc-finish-logentry: Don't run vc-finish-logentry-hook
* lisp/vc/vc-dispatcher.el (vc-finish-logentry): Don't run
undocumented, undeclared 'vc-finish-logentry-hook'.  There is
already 'vc-log-after-operation-hook'; it is not clear we need
both.
2025-05-30 13:21:46 +01:00
Sean Whitton
f699b6e4f4 Gather variable binding tests in data-tests.el
* test/lisp/emacs-lisp/lisp-tests.el (c-e-x, c-e-l):
Move to data-tests.el.
(core-elisp-tests-2-window-configurations): Rename ...
(core-elisp-tests-1-window-configurations): ... to this.
(core-elisp-tests-3-backquote): Rename ...
(core-elisp-tests-2-backquote): ... to this.
(core-elisp-tests-1-defvar-in-let)
(core-elisp-tests-4-toplevel-values): Move and rename ...
* test/src/data-tests.el (binding-test-defvar-in-let)
(binding-test-toplevel-values): ... to these.
(c-e-x, c-e-l): Moved from data-tests.el.
2025-05-30 11:41:19 +01:00
Michael Albinus
30c2ef6d6a Fix bug in `tramp-find-executable'
* lisp/net/tramp-sh.el (tramp-find-executable): Use "command -v",
preserving non-standard PATH search.  Bug#78633)
2025-05-30 12:28:15 +02:00
Dmitry Gutov
f0bec20ac5 project-remember-project: Support calling it interactively
* lisp/progmodes/project.el (project-remember-project):
Support interactive invocation (bug#78099) and react with
appropriate messages when called so, depending on the blacklist.
2025-05-29 22:27:38 +03:00
Juri Linkov
c9cb89edd5 Use 'outline-heading-end-regexp' consistently.
* lisp/outline.el (outline-font-lock-keywords):
For non-nil 'outline-search-function' also search for
'outline-heading-end-regexp' afterwards like there is
'outline-heading-end-regexp' at the end of the regexp counterpart.
(outline-minor-mode-highlight-buffer): Use 'outline-heading-end-regexp'
like in 'outline-font-lock-keywords' instead of "$".
For non-nil 'outline-search-function' also use
'outline-heading-end-regexp' the same way.

* lisp/help.el (describe-bindings): Remove unnecessary
buffer-local 'outline-heading-end-regexp'.
2025-05-29 19:52:20 +03:00
Eli Zaretskii
8881dca81c ; * doc/lispref/searching.texi (Char Classes): Add speedup advice. 2025-05-29 19:02:13 +03:00
Sean Whitton
f9b311464d New user option vc-dir-hide-up-to-date-on-revert
* lisp/vc/vc-dir.el (vc-dir-hide-up-to-date-on-revert):
New defcustom.
(vc-dir-revert-buffer-function): Use it.
* etc/NEWS: Document it.
2025-05-29 12:53:51 +01:00
Sean Whitton
6519fb5d2b Factor out vc-async-checkin-backends
This allows third party backends to indicate they support async
checkins.

* lisp/vc/vc.el (vc-async-checkin-backends): New variable.
(vc-checkin): Use it.
2025-05-29 12:41:36 +01:00
Martin Rudalics
433a031d24 Have 'delete-frame' delete initial daemon frame only if FORCE is non-nil
* src/frame.c (delete_frame): Delete initial daemon frame only
if FORCE is non-nil (Bug#78583).
(Fdelete_frame): Rewrite doc-string to mention that it can
delete an initial daemon frame if and only if FORCE is non-nil.
* etc/NEWS:
* doc/lispref/frames.texi (Deleting Frames): Mention that
'delete-frame' can delete an initial daemon frame if and only if
FORCE is non-nil.
2025-05-29 11:33:28 +02:00
Pip Cet
d14fc6b75f Fix unsafe SDATA usage in print.c (bug#78590)
* src/print.c (print_string_1): Renamed from 'print_string', with an
extra argument to disable nonascii escaping.
(print_string): New function.
(print_object): Use 'print_string_1', not 'strout'.
2025-05-28 19:22:57 +00:00
Juri Linkov
295f73d23d * lisp/isearch.el (search-within-boundaries): Optimize (bug#78520).
For non-subregexp case, search for the first match and continue
from its position.  This avoids unnecessary scan for all text properties
until the first match.  When nothing is found, skip the entire body.
2025-05-28 20:15:21 +03:00
Stephen Berman
4507b6a9c7 Fix bug in 'todo-jump-to-category' (bug#78608)
* lisp/calendar/todo-mode.el (todo-jump-to-category): Eliminate
comparison of the number of Todo categories before and after
specifying the category to jump to and replace it by a check of
whether there are any items in the category, since an existing
category should always have at least one item (perhaps done or
archived).
2025-05-28 17:17:23 +02:00
Gerd Möllmann
6279a9e8ef Do child frame shortcut only on Cocoa (bug#78616)
* src/nsterm.m ([EmacsWindow constrainFrameRect:toScreen:]):
Return early for child frames only on Cocoa.
2025-05-28 12:59:50 +02:00
Juri Linkov
b6d5f50bc2 * lisp/tab-line.el: Make tab closing commands work without mouse.
(tab-line--current-tab): New function.
(tab-line-close-tab, tab-line-close-other-tabs): Use it
when the 'event' arg doesn't originate from mouse.
Suggested by pinmacs <pinmacs@cas.cat>.
2025-05-27 21:11:22 +03:00
Eli Zaretskii
5883ceedc8 Fix exact matching of Ada tags by 'M-.'
* lisp/progmodes/etags.el (tag-exact-match-p): Support Ada tags
that have "/x" qualifiers appended to them.  (Bug#78489)
2025-05-27 13:50:12 +03:00
Martin Rudalics
93934b645b Have 'delete-other-frames' only delete frames on same terminal (Bug#78583)
* lisp/frame.el (delete-other-frames): Only delete frames on
same terminal as FRAME's (Bug#78583).
2025-05-27 10:45:04 +02:00
Michael Albinus
42a002f31f * test/infra/gitlab-ci.yml (.job-template): Fix config.log name. 2025-05-27 09:20:54 +02:00
Michael Albinus
3e57c35323 Fix gitlab-ci.yml (don't merge to master)
* test/infra/gitlab-ci.yml (.job-template): Fix config.log name.
(test-filenotify-gio, test-eglot): Fix formatting.
2025-05-27 09:10:51 +02:00
Jim Porter
8762f6c7c9 Don't add visual-wrap-prefix properties to unsafe multi-line display specs
This makes sure we don't interfere with other display specs, e.g. for
images displayed in 'image-mode' (bug#73600).

* lisp/visual-wrap.el (visual-wrap--safe-display-specs): New variable.
(visual-wrap--display-property-safe-p): New function.
(visual-wrap--apply-to-line): Use 'pos-eol'; we don't want to respect
field boundaries here.
(visual-wrap-prefix-function): Check for unsafe display properties at
the end of the line and skip past them if present.

* test/lisp/visual-wrap-tests.el: New test file.
2025-05-26 12:43:51 -07:00
Eli Zaretskii
3b5226af3f Fix DST time calculations on MS-Windows
* src/w32.c (w32_fix_tzset): New function.
* src/timefns.c (emacs_localtime_rz, tzlookup):
* src/w32.c (sys_localtime): Call 'w32_fix_tzset'.
(Bug#11281)
2025-05-26 19:53:21 +03:00
Xiyue Deng
53371c9594 Make xoauth2 auth fail when a smtp server replies 334 (Bug#78366)
* lisp/mail/smtpmail.el (smtpmail-try-auth-method): Throw error 535
when receiving a "334 server challenge" reply.
2025-05-26 15:07:24 +02:00
Konstantin Kharlamov
1d2ae31b8b
typescript-ts-mode: Improve function body indentation (bug#78121)
Older code was calculating body indentation depending on function
parameters alignment.  This is incorrect, because if parameters are
misaligned, so will the function body.  Instead, use offset of the
previous standalone parent.

* lisp/progmodes/typescript-ts-mode.el:
(typescript-ts-mode--indent-rules): Stop depending on function
parameters indentation for calculating body content and the closing
`}'.
* test/lisp/progmodes/typescript-ts-mode-resources/indent.erts:
(Function body with params misindented (bug#78121)): Add new test.
2025-05-25 20:50:41 -07:00
Juri Linkov
10e023c15c * lisp/tab-line.el (tab-line-close-other-tabs): New command.
(tab-line-tab-context-menu): Bind 'tab-line-close-other-tabs'
to the menu item "Close other tabs".
Suggested by pinmacs <pinmacs@cas.cat>.
2025-05-25 19:45:05 +03:00
Michael Albinus
48e3d08cf3 ; Fix last change 2025-05-25 15:20:10 +02:00
Michael Albinus
300d7c1ad6 Adapt Emba files
* test/infra/Dockerfile.emba:
* test/infra/gitlab-ci.yml: Add me as maintainer.  Format.

* test/infra/Makefile.in (tree-sitter-files): Format.
2025-05-25 14:04:09 +02:00
Eli Zaretskii
421ecbcf6b ; * CONTRIBUTE: Explain the line-width preferences. 2025-05-25 12:08:02 +03:00
Eli Zaretskii
492adf20b9 ; Remove files deleted from nt/ which were mistakenly resurrected. 2025-05-24 16:36:53 +03:00
Eli Zaretskii
463787c4e9 Fix detection of Dired with files whose name ends in a colon
* lisp/dired.el (dired-build-subdir-alist): Use a more general
regexp to detect file entries whose names end in a colon, when
various non-default 'ls' switches are used.  (Bug#78493)
2025-05-24 16:25:34 +03:00
Eli Zaretskii
056ba8c569 Merge from origin/emacs-30
df9636f892 ; * doc/misc/use-package.texi (Hooks): Fix typo (bug#77609).
36afdd2f6f Fix documentation of use-package's ':hook' keyword
d0c90bc9bf * test/infra/gitlab-ci.yml (.job-template): Make it more ...
b8f24cbdbb ; * lisp/emacs-lisp/find-func.el (find-function): Doc fix.
e0c6f3e765 Fix todo-mode item insertion bug (bug#78506)
328b316764 Add support for Pyrefly LSP for Python
2025-05-24 06:55:24 -04:00
Eli Zaretskii
0203543fa6 ; Merge from origin/emacs-30
The following commit was skipped:

c526646d70 ; Sync with Tramp 2.7.3.30.2 (Do not merge to master)
2025-05-24 06:46:33 -04:00
Eli Zaretskii
ad217dcc46 Merge from origin/emacs-30
661fa578d5 Adapt Tramp version in customize-package-emacs-version-alist
0045a56d55 ; * ChangeLog.5: Delete entry for minor change.
1136aed6dc ; Update ChangeLog and AUTHORS for Emacs 30.2
2025-05-24 06:46:32 -04:00
Eli Zaretskii
77734d270b ; Merge from origin/emacs-30
The following commits were skipped:

dfcde786ad ; Update ldefs-boot.el.  Do not merge to master.
4c11021260 ; Bump Emacs version to 30.1.90
2025-05-24 06:46:32 -04:00
Roi Martin
9c00f55265 Add baseline pass/fail tests for `ert-test-erts-file'
* test/lisp/emacs-lisp/ert-tests.el (ert-test-erts-pass)
(ert-test-erts-fail): Add tests to verify that the
`ert-test-erts-file' function can detect both passing a failing
test cases.
* test/lisp/emacs-lisp/ert-resources/erts-fail.erts:
* test/lisp/emacs-lisp/ert-resources/erts-pass.erts:
Add test data.  (Bug#78552)
2025-05-24 13:08:21 +03:00
Eli Zaretskii
df9636f892 ; * doc/misc/use-package.texi (Hooks): Fix typo (bug#77609). 2025-05-24 12:59:19 +03:00
Eli Zaretskii
36afdd2f6f Fix documentation of use-package's ':hook' keyword
* doc/misc/use-package.texi (Hooks): Document how to add several
functions to the same hook (bug#77609).
2025-05-24 12:56:30 +03:00