1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-01 09:51:22 -08:00
Commit graph

179146 commits

Author SHA1 Message Date
Tony Zorman
cf86e00c8d ; * lisp/indent-aux.el: Fix deindenting read-only text (bug#79176). 2025-08-07 16:09:59 +03:00
kobarity
3d8fbb0716 Fix Python PDB tracking for remote inferior Python
* lisp/progmodes/python.el (python-shell-local-prefix): New
constant.
(python-shell--convert-file-name-to-send): New function to
add/remove prefix.
(python-shell-send-string, python-shell-send-file): Changed to
use 'python-shell--convert-file-name-to-send'.
(python-pdbtrack-set-tracked-buffer): Changed to add/remove
prefix.
* test/lisp/progmodes/python-tests.el
(python-shell--convert-file-name-to-send-1): New test.
(Bug#79036)
2025-08-07 16:06:28 +03:00
Michael Albinus
68aaeb3519 Fix Tramp completion
* lisp/net/tramp.el (tramp-skeleton-file-name-all-completions):
Filter out "" hits.  (Bug#79173)
2025-08-07 09:05:22 +02:00
Michael Albinus
d3cd93dc4d Add set-file-times implementation for Tramp smb method
* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-times):
Don't use UTC in all cases.

* lisp/net/tramp-smb.el (tramp-smb-handle-set-file-times): New defun.
(tramp-smb-file-name-handler-alist): Use it.

* test/lisp/net/tramp-tests.el (tramp-test22-file-times): Adapt test.
2025-08-06 17:59:02 +02:00
Sean Whitton
d950ca8ccd * lisp/vc/vc-hg.el (vc-hg-print-log): Revise log-outgoing revset. 2025-08-06 16:06:13 +01:00
Mattias Engdegård
f0da94e2c2 external-completion: specify a required Emacs version
* lisp/external-completion.el: Require 26.1 (picked out of thin air).
(external-completion-table): Undo use of the hash-table-contains-p,
recently introduced.
2025-08-06 13:13:58 +02:00
Martin Rudalics
ca07819af7 ; * lisp/files.el (find-file-noselect): Fix doc-string typo. 2025-08-06 09:29:41 +02:00
Paul Nelson
6b2856f9ca Allow numbered buffer selection for project-shell
* lisp/progmodes/project.el (project-shell, project-eshell):
When a numeric prefix is supplied, the command switches to or
creates a session buffer whose name has that number as a suffix.
For instance, C-2 yields "*name-of-project-shell<2>*".  As
before, a plain universal argument C-u creates a new session
with an automatically generated numeric suffix.  This change
makes the behavior of the project-shell commands consistent with
how M-x eshell handles numeric prefixes.
* etc/NEWS: Announce the change. (bug#76500)
2025-08-06 04:46:49 +03:00
Eli Zaretskii
32ba66d97d ; Improve doc strings in tab-line.el
* lisp/tab-line.el (tab-line-tab-modified-p)
(tab-line-tab-face-special, tab-line-tab-face-modified)
(tab-line-tab-face-group, tab-line-tab-face-functions): Doc fixes.
2025-08-05 15:30:17 +03:00
Michael Albinus
5ff8a90395 Tramp allows now external implementations for functions
* doc/misc/tramp.texi (Frequently Asked Questions): Mention tramp-hlo.
(New operations): New node.
(Top, Files directories and localnames):  Add it to @menu.

* etc/NEWS: Mention Tramp's feature to add function implementations.
Presentational fixes and improvements.

* lisp/net/tramp.el (tramp-file-name-for-operation-external): New defvar.
(tramp-file-name-for-operation): Use `memq'.  Handle external
operations.  Raise `remote-file-error' error in case of.
(tramp-add-external-operation, tramp-remove-external-operation):
New defuns.

* test/lisp/net/tramp-archive-tests.el (tramp-archive-test50-auto-load)
(tramp-archive-test50-delay-load)
(tramp-archive-test51-without-remote-files): Rename.

* test/lisp/net/tramp-tests.el (tramp--test-operation)
(tramp--handler-for-test-operation): New defuns.
(tramp-test49-external-backend-function): New test.
(tramp-test50-auto-load, tramp-test50-delay-load)
(tramp-test50-recursive-load, tramp-test50-remote-load-path)
(tramp-test51-without-remote-files, tramp-test52-unload): Rename.
2025-08-05 12:00:21 +02:00
Martin Rudalics
2d2755c3d7 Handle inhibiting implied resizing for frames without initial tool bar
* src/xfns.c (x_set_tool_bar_lines, x_change_tool_bar_height)
* src/pgtkfns.c (x_change_tool_bar_height)
(pgtk_set_tool_bar_lines): Set f->tool_bar_resized to true so
inhibiting implied resizing works for frames without initial
tool bar too.  See the thread
https://lists.gnu.org/archive/html/emacs-devel/2025-08/msg00034.html.
2025-08-05 11:08:38 +02:00
Juri Linkov
7a5ee16b01 * lisp/tab-line.el: Improve docstrings.
(tab-line-tab-face-functions, tab-line-tab-modified-p)
(tab-line-tab-face-modified): Explain possible values of BUFFER-P.
2025-08-05 09:38:12 +03:00
Dmitry Gutov
65c110b913 vc-annotate-warp-revision: Fix going through renames
* lisp/vc/vc-annotate.el (vc-annotate--file-name-change):
New function (bug#26345).
(vc-annotate-warp-revision): Use it here.

Co-Authored-By: Jakub Ječmínek <kuba@kubajecminek.cz>
2025-08-05 04:07:40 +03:00
Sean Whitton
e01b9bd69a ; * lisp/vc/vc.el (vc--prompt-other-working-tree): Reorder.
In fact, calling project-current or project-remember-project
will ensure that project-prompter is loaded.  But let's not rely
on that.
2025-08-04 21:08:49 +01:00
Sean Whitton
0df9731ec9 vc--prompt-other-working-tree: Remember all the working trees
* lisp/vc/vc.el (vc--prompt-other-working-tree): Call
'project-remember-project' on all the known working trees.
2025-08-04 21:07:14 +01:00
Sean Whitton
9e48d1f49a project-prompter: New PREDICATE and REQUIRE-KNOWN arguments
* lisp/progmodes/project.el (project-prompter)
(project-prompt-project-dir, project-prompt-project-name): New
PREDICATE and REQUIRE-KNOWN optional arguments.
* lisp/vc/vc.el (project-prompter): Declare.
(vc--prompt-other-working-tree): New function.
(vc-switch-working-tree, vc-delete-working-tree)
(vc-move-working-tree): Use it to prompt for the other working
tree in a way that respects 'project-prompter' (bug#79024).
* etc/NEWS: Announce all three optional arguments.  Rework
description of new optional argument to 'project-current'.
2025-08-04 20:59:02 +01:00
Mattias Engdegård
1811cb294e Fix vc-git worktrees and vc-tests for directories with symlinks
* lisp/vc/vc-git.el (vc-git-known-other-working-trees):
* test/lisp/vc/vc-tests/vc-tests.el (vc-test--other-working-trees):
Tolerate directories with symlinks in them, such as the standard
temporary dirs on MacOS.  'git worktree list' outputs expanded names.
2025-08-04 10:55:25 +01:00
Mattias Engdegård
f9e0c06875 * lisp/vc/vc-git.el (vc-git--worktrees): Don't pass -z to older Git.
The -z option for 'git worktree list --porcelain' appeared in 2.36.
2025-08-04 10:54:34 +01:00
F. Jason Park
5c153cfb96 ; Make erc-autojoin-channels-delayed tests more robust
* test/lisp/erc/erc-join-tests.el
(erc-join-tests--autojoin-channels-ident): Be more flexible in checking
assertion.  (Bug#79017)
2025-08-03 01:31:42 -07:00
Paul Eggert
c935b68bed Port better to Linux with 1 MiB pages
* src/lisp.h: Include <sys-limits.h>.
(MAX_RW_COUNT): Remove, as it is the same thing as sys-limits.h’s
SYS_BUFSIZE_MAX.  All uses replaced by SYS_BUFSIZE_MAX.
2025-08-02 11:19:24 -07:00
Paul Eggert
687d3cb03b Update from Gnulib by running admin/merge-gnulib
* lib/sys-limits.h: New file.
2025-08-02 11:19:24 -07:00
Daniel Mendler
84f1080f67 (completing-read-multiple): Set missing buffer-local variables
* lisp/emacs-lisp/crm.el (completing-read-multiple): Set missing
buffer-local variables `minibuffer--require-match` and
`minibuffer--original-buffer`, which are set by `completing-read` in
the minibuffer setup hook.  (bug#79110)
2025-08-02 12:29:23 -04:00
Eli Zaretskii
0c77c5edfd Merge from origin/emacs-30
477335a10b ; Fix documentation of 'find-file-noselect'
9e3720bbb1 * doc/misc/gnus.texi (Category Syntax): Update gnus-agent...
456f44a7b3 ; Improve documentation of change hooks
f20d5e63bc ; * lisp/image.el (image-supported-file-p): Doc fix (bug#...
8ec2ddebdd ; Update documentation of GC in ELisp manual
57a9798c22 Prefer "tls" to "ssl" in documentation
2025-08-02 11:13:41 -04:00
Eli Zaretskii
0d7b1c912c Avoid lexbind warnings in kkc.el
* lisp/international/kkc.el (kkc-lookup-key): Suppress warnings
about lexical-binding cookies.
(kkc-save-init-file): Write the lexical-binding cookie when saving
the KKC init file.  (Bug#79136)
2025-08-02 17:59:36 +03:00
Eli Zaretskii
477335a10b ; Fix documentation of 'find-file-noselect'
* doc/lispref/files.texi (Visiting Functions):
* lisp/files.el (find-file-noselect): Document that NOWARN non-nil
also bypasses the file's last change verification.  (Bug#79127)
2025-08-02 17:33:15 +03:00
James Thomas
cd31c3cb42 Add 'other-window-backward' for a default binding (bug#78803)
This moves in the opposite direction to 'other-window' by
default, and is consistent with its repeat map.
* lisp/window.el (other-window-backward): New function bound to
'C-x O'.
(ctl-x-map): Update definition.
* doc/emacs/windows.texi (Other Window): Update docs.
* etc/NEWS: Annouce the new command.
2025-08-02 17:25:14 +03:00
Jakub Ječmínek
e52ed1b5d1 Improve region deletion handling in python.el
* lisp/progmodes/python.el (python-indent-dedent-line-backspace):
Delete the text in the region if Transient Mark mode is enabled,
the mark is active, and prefix arg is 1.  (Bug#48695)

* test/lisp/progmodes/python-tests.el
(python-indent-dedent-line-backspace-4): Add new test.
2025-08-02 17:14:50 +03:00
Manuel Giraud
2846dd8842 Fix mode-line string width in diary view
Bug#78957

* lisp/calendar/calendar.el (calendar-in-read-only-buffer):
Select the buffer window because, for example,
`calendar-set-mode-line' needs it.
2025-08-02 17:07:37 +03:00
Steven Allen
5140e317b7 url: %-encode literal % characters when building query strings
When building a query string via `url-build-query-string',
%-encode literal % characters appearing in both the keys and
the values.
* lisp/url/url-util.el (url--query-key-value-preserved-chars):
Define a new constant based on `url-query-key-value-allowed-chars'
specifying the characters that should be preserved when %-encoding
query-string keys and values.
(url-build-query-string): Use the new constant (fixes Bug#78984).

* test/lisp/url/url-util-tests.el (url-util-tests): Add a test.
2025-08-02 16:49:52 +03:00
Antero Mejr
5979d17ea9 Fix index error when checking edited bug reports
* lisp/mail/emacsbug.el (report-emacs-bug-check-org): Improve regex
check.  (Bug#79080)
2025-08-02 16:30:09 +03:00
Daniel Mendler
836b2bb8b4 ibuffer-update-title-and-summary: Fix out of range error
When `ibuffer-use-header-line' is set to `title' and the buffer
list contains no buffers due to a filter,
`ibuffer-update-title-and-summary' would error with an
"Args out of range: 0, 0" error.
* lisp/ibuffer.el (ibuffer-update-title-and-summary): Check if
buffer is empty to prevent out of range error.  (Bug#79152)
2025-08-02 16:25:39 +03:00
Mattias Engdegård
adc05bead3 ; * etc/NEWS: Move read-directory-name entry; a compatible change. 2025-08-02 13:16:15 +02:00
Jonas Bernoulli
17c54bed4b
Update to Transient v0.9.4-8-g6bc543d5 2025-08-01 19:38:56 +02:00
Eli Zaretskii
91dc27c199 ; * etc/NEWS: Fix wording of a recently-added entry. 2025-08-01 08:25:50 +03:00
Rudolf Adamkovič
6e1054a40b NS: Correct the accessibility role of Emacs windows (bug#77062)
Make the accessibility role of Emacs windows to be "standard
window" (AXWindow) instead of "text field" (AXTextField).  This matches
other applications on NS, as can be verified with any accessibility
inspector.  All widely used NS ports, such as Emacs Plus, have this
patch already applied. As for practical impact, this change makes Emacs,
for example, work with tiling window managers, such as Yabai, where many
users report problems with Emacs specifically, and are instructed to
simply avoid the official NS port of GNU Emacs due to this problem.

* src/nsterm.m: ([EmacsWindow accessibilityAttributeValue:]): Make the
accessibility role of Emacs windows to be "standard window" (AXWindow)
instead of "text field" (AXTextField).
2025-07-31 22:14:39 +01:00
Juri Linkov
a6e0bb92bb * lisp/tab-line.el (tab-line-cache-key-default): Adapt to new feature.
Take into account 'tab-line-close-modified-button-show' similarly
to the case when 'tab-line-tab-face-modified' is a member of
'tab-line-tab-face-functions' (bug#79046).
2025-07-31 21:47:22 +03:00
Elías Gabriel Pérez
7d77ae98d4 tab-line: Add close button for modified tabs (bug#79046)
* etc/NEWS: Announce changes.
* etc/images/tabs/close-modified.xpm: New image.
* etc/images/tabs/README (Files): Add button icon name to README.
* lisp/tab-line.el (tab-line-close-modified-button-show): New
user option.
(tab-line-close-modified): Define new icon.
(tab-line-close-modified-button): New variable.
(tab-line-tab-modified-p): New function.
(tab-line-tab-name-format-default): Rework.
(tab-line-tab-face-modified): Use 'tab-line-tab-modified-p'.
2025-07-31 21:35:50 +03:00
Robert Pluim
38557cac74 * lisp/emacs-lisp/shortdoc.el (sequence): Add 'seq-doseq'. 2025-07-31 10:33:11 +02:00
Michael Albinus
0b449b4f38 Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs 2025-07-31 07:44:11 +02:00
James Thomas
9e3720bbb1 * doc/misc/gnus.texi (Category Syntax): Update gnus-agent-predicate.
This updates the Gnus manual due to recent code change (bug#79123).
2025-07-31 08:19:51 +03:00
Paul Eggert
0eaf5c045f GCC union bugs to be fixed in GCC 15.2
Thanks to Martin Jambor for the GCC fixes; see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117423#c27
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119085#c12
Also, thanks to Sam James for letting me know.
* configure.ac (emacs_cv_gcc_union_bugs_CFLAGS):
Rename from emacs_cv_gcc_bug_119085_CFLAGS.  All uses changed.
Assume the GCC union bugs will be fixed in GCC 15.2.
2025-07-30 18:41:26 -07:00
Eli Zaretskii
456f44a7b3 ; Improve documentation of change hooks
* doc/lispref/text.texi (Change Hooks): Warn against buffer
changes in the hook functions.  (Bug#79115)
2025-07-30 19:48:07 +03:00
Robert Pluim
45a5fae991 Add support for AUTH=PLAIN to imap.el
* lisp/net/imap.el (imap-authenticators): Add 'plain' to the
list.
(imap-authenticator-alist): Add 'imap-plain-p' and
'imap-plain-auth'.
(imap-plain-p): New function, detects AUTH=PLAIN support.
(imap-plain-auth): Perform the AUTH=PLAIN authentication.

* doc/misc/gnus.texi (Mail Source Specifiers): Add 'plain'.
(Conformity): Add reference to RFC 4616.

* etc/NEWS: Announce the support.
2025-07-30 15:36:02 +02:00
Baptiste Strazzulla
93dff95463 ; Fix NEWS entry for Newsticker
* etc/NEWS: Amend the correct name of the new
'newsticker-hide-old-feed-header' option.  (Bug#78305)
2025-07-30 14:17:04 +03:00
Mattias Engdegård
95be144994 Refactor reader to use readbuf_t in more places
Simplify the code by using the already existing dynamic string buffer
type.  This is a refactoring; performance isn't measurably affected.

* src/lread.c (grow_read_buffer): Dissolve into...
(readbuf_grow): ...here, simplifying the code.
(add_char_to_buffer): Check for growth before adding char, not after.
(read_integer, read_string_literal): Use readbuf_t.
2025-07-30 11:04:12 +02:00
Mattias Engdegård
2d18878b96 Move keyboard input functions from lread.c to keyboard.c
These have nothing to do with the Lisp reader at all.

Suggested by Lynn Winebarger (bug#79035).

* src/lread.c (read_filtered_event, Fread_char, Fread_event)
(Fread_char_exclusive, Qascii_character): Move...
* src/keyboard.c: ...here.
* test/src/lread-tests.el (test-inhibit-interaction): Move...
* test/src/keyboard-tests.el (keyboard-inhibit-interaction): ...here.
2025-07-30 11:04:11 +02:00
Mattias Engdegård
5a9cbf24ec ; * src/bytecode.c: remove unneeded includes 2025-07-30 11:04:11 +02:00
Michael Albinus
4516091fd8 Fix problem in tramp-smb.el
* lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes):
Use `directory-file-name'.

* test/lisp/net/tramp-tests.el (tramp-test18-file-attributes)
(tramp-test19-directory-files-and-attributes): Extend tests.
2025-07-30 09:33:20 +02:00
F. Jason Park
edd1f0512f ; Adjust sleep-for in erc-autojoin-channels tests
* test/lisp/erc/erc-join-tests.el
(erc-join-tests--autojoin-channels-ident): A `sleep-for' value of 0.01
caused associated tests to fail on at least one setup involving Solaris
10.  The new value is arbitrary and possibly temporary, pending further
investigation.  (Bug#79017)
2025-07-29 16:02:16 -07:00
Paul Eggert
3797484608 Update from Gnulib by running admin/merge-gnulib 2025-07-29 15:06:14 -07:00