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

180737 commits

Author SHA1 Message Date
Stefan Monnier
ba7c2debef * admin/notes/elpa.md: Update to match current reality
* admin/notes/elpa: Rename to `elpa.md`.
* admin/notes/elpa.md: Rename from `elpa`, adjust to recently
changed repository location, mention the "new" NonGNU repository.
2026-01-07 10:55:11 -05:00
Michael Albinus
68b6137eb0 ; Fix typo 2026-01-07 14:17:11 +01:00
Michael Albinus
d7fd87b403 shadowfile.el uses eqhemeral buffer names now
* etc/NEWS: shadowfile.el uses eqhemeral buffer names now.

* lisp/shadowfile.el (shadow-find-file-noselect): New function.
(shadow-read-files, shadow-write-info-file)
(shadow-write-todo-file): Use it.
2026-01-07 10:08:45 +01:00
Stefan Monnier
073455ccb8 (package-install): Refine fix for bug#79881
* lisp/emacs-lisp/package.el (package-install): Demote `user-error` to
`message` if the call is not interactive.
2026-01-06 23:06:06 -05:00
Michael Albinus
8343ce6c52 External Tramp methods can be used in multi-hops
* doc/misc/tramp.texi (External methods): Mention, how external
methods are used for multi-hops.
(Ad-hoc multi-hops): Change requirement of method.

* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.8.2-pre".

* etc/NEWS: External Tramp methods can be used in multi-hops.
Presentational fixes and improvements.

* lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory): Check for
`tramp-method-out-of-band-p' explicitly. Don't flush directory
properties.
(tramp-method-out-of-band-p): There shouldn't be a multi-hop.

* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory): Don't
flush directory properties.

* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-barf-if-file-missing)
(with-parsed-tramp-file-name): Adapt debug spec.
(tramp-skeleton-copy-directory): Flush directory properties.
(tramp-add-hops): Check for `tramp-login-args' property.
2026-01-06 15:20:58 +01:00
Martin Rudalics
52e0c9eb2a ; Fix doc-string of Fset_frame_position
* src/frame.c (Fset_frame_position): In doc-string say that for
a child frame X and Y are relative to FRAME's parent frame.
2026-01-06 10:05:51 +01:00
Martin Rudalics
d7a219ef77 ; Consistently use "window point" and "buffer point" in Elisp manual
* doc/lispref/windows.texi (Window History, Window Point)
(Window Configurations):
* doc/lispref/processes.texi (Filter Functions): Consistently
use "window point" and "buffer point" without "the" throughout
descriptions.
2026-01-06 09:52:04 +01:00
Yuan Fu
7653bdf63f
; Add new functions to treesit-declare-unavailable-functions
* lisp/treesit.el (treesit-declare-unavailable-functions): Add
missing functions.
2026-01-05 23:00:59 -08:00
Yuan Fu
db4ce0ddff
; * lisp/treesit.el (treesit-font-lock-recompute-features): Fix doc. 2026-01-05 22:55:40 -08:00
Stephen Gildea
fd1602796a ; time-stamp-inserts-lines: Clearer doc string
* lisp/time-stamp.el (time-stamp-inserts-lines): Clarify the two cases
in the doc string.
(time-stamp-count): Add xref to time-stamp-inserts-lines.
2026-01-05 15:53:47 -08:00
Stephen Gildea
ba6e702bff time-stamp-helper-string-used: New test
* test/lisp/time-stamp-tests.el (time-stamp-helper-string-used):
New test.
2026-01-05 15:23:01 -08:00
Stephen Gildea
381a76c72b ; Time Stamps doc: Expand examples, add summaries
* doc/emacs/files.texi: (Time Stamps): Expand the examples and add
node-end summaries.  Thanks to Ruth for her help with the clarity of
the documentation.
2026-01-05 15:07:04 -08:00
Eli Zaretskii
28fe937d5d ; * lisp/treesit.el (treesit-font-lock-level): Doc fix. (Bug#80136) 2026-01-05 21:39:42 +02:00
João Távora
d55a455ec2 Eglot: prevent textDocument/diagnostic from being sent before didOpen
Set eglot--docver to -1 in LSP documents not yet 'didOpen'ed,
then add a check for this in the jsonrpc-connection-ready-p
predicate.

We do this because the call to eglot-flymake-backend may come in
so fast that textDocument/diagnostic actually makes it into the
jsonrpc queue before the didOpen.  Much like, say, completions
before didChange, some servers don't like that, understandibly.

So use the existing "deferred" mechanism checks to make sure, as
usual, that requests targetting a specific LSP document come
after the didOpen/didChange informing the server of the actual
state of the buffer.

I _could_ have used nil instead of -1, and it would probably be
cleaner.  But -1 is safer, we never know if a version comparison
won't slip outside the didOpen period.  Might change my mind
about this.

* lisp/progmodes/eglot.el (eglot--docver): Init to -1.
(eglot--managed-mode): Set eglot--docver to -1 when unmanaging.
(jsonrpc-connection-ready-p): Check eglot--docver non-negative.
(eglot--signal-textDocument/didClose): Set eglot--docver to -1.
2026-01-05 17:41:16 +00:00
Martin Rudalics
3ffbc5a709 Fix typo in 'set-frame-size-and-position'
* lisp/frame.el (set-frame-size-and-position): Fix typo.
Reported by Al Haji-Ali <abdo.haji.ali@gmail.com>.
2026-01-05 18:30:10 +01:00
Martin Rudalics
80360ec4a7 Fix calculation of outer frame height in NS builds (Bug#80077)
* src/nsfns.m (frame_geometry): Include tool bar height when
calculating a frame's outer height (Bug#80077).
2026-01-05 10:24:45 +01:00
Martin Rudalics
6841869126 In Elisp manual warn about unpredictable changes of point (Bug#79927)
* doc/lispref/positions.texi (Point): Define "buffer point".
* doc/lispref/windows.texi (Window Point): Say that buffer point
can change in unpredictable ways when windows get selected
(Bug#79927).
2026-01-05 09:29:09 +01:00
JD Smith
b64e39f1b9 repeat: handle non-character keys with hint strings
When a repeat hint string exists, the hint is formatted using
`read-multiple-choice' formatting.  But `rmc--add-key-description' only
works on characters, not symbols like 'right or 'left.

* lisp/repeat.el (repeat-echo-message-string): check for chars
2026-01-04 18:56:19 -05:00
Jonas Bernoulli
b0aa799b00
Update to Transient v0.12.0-15-gfe5214e6 2026-01-04 17:52:30 +01:00
João Távora
93793260ea Eglot: require project 0.11.2 (bug#79809)
* lisp/progmodes/eglot.el (Package-Requires): Require project 0.11.2
2026-01-04 14:12:02 +00:00
João Távora
b8ff1c1fae * lisp/progmodes/project.el (Version): Bump to 0.11.2
(bug#79809)
2026-01-04 14:12:02 +00:00
Sean Whitton
8819a9e763 ; * src/keyboard.c: Fix style in two comments. 2026-01-04 11:37:42 +00:00
Manuel Giraud
06d3d97e74 ; Fix simple logic in OpenBSD's random test
* test/src/fns-tests.el (fns-tests-random): Do not test on OpenBSD
since either equal or not equal is a valid result here.  (Bug#80125)
2026-01-04 11:25:50 +02:00
João Távora
6696a738b4 Eglot: fix thinko in recent diagnostics logic change
If the pushed diagnostics are outdated and we have pulled diagnostics,
we want to report them.  And if the pushed diagnostics are up to date,
we want to report them along with any pulled ones.  The do-nothing
update happens only if the pulled response indicated so explicitly or if
there are no pulled diagnostics and the pushed ones are out-of-date.

* lisp/progmodes/eglot.el (eglot--flymake-report): Tweak.
2026-01-04 02:58:55 +00:00
Eli Zaretskii
c1b8a00da9 ; * src/window.c (Fwindow_cursor_info): More cleanup. 2026-01-03 17:34:52 +02:00
Eli Zaretskii
ea1b7d53d2 ; * lisp/emacs-lisp/inline.el (define-inline): Fix Info link (bug#80122). 2026-01-03 17:31:15 +02:00
Michael Albinus
04112d04f2 Mitigate uutils coreutils problems in Tramp
* lisp/net/tramp-sh.el (tramp-get-ls-command): Prefer gnuls over ls.
(tramp-get-remote-readlink): Prefer gnureadlink over readlink.
(Bug#79956, Bug#80075)
2026-01-03 15:46:22 +01:00
Eli Zaretskii
a9611b1022 Unbreak a build --without-x
* src/window.c (Fwindow_cursor_info): Provide values for TTY
frames.  (Bug#80023)
2026-01-03 16:39:39 +02:00
Daniel Eklöf
b5f534a25e Automatically enable xterm-mouse-mode in the foot terminal
Foot supports all features required for this (OSC-52, DECSET1000,
DECSET1003).
* lisp/term/xterm.el (xterm--auto-xt-mouse-allowed-names):
Add foot.  (Bug#80083)

Copyright-paperwork-exempt: yes
2026-01-03 14:46:27 +02:00
Daniel Eklöf
d4dde314ff Use Primary Device Attributes to detect OSC-52 support
Up until recently, there were no reliable way to detect if a terminal
supported OSC-52 or not.
A number or terminal emulators decided to remedy this by including '52'
in their primary DA response.  In short, the presence of 52 in the DA
response means the terminal supports *writing* to the clipboard.
Reading the clipboard is _usually_ supported, but not guaranteed.
It should be noted that Emacs uses both the 'c' and 'p' parameters in
OSC-52, to copy to either PRIMARY, or CLIPBOARD, while the specification
only requires the terminal to implement 'c'.  If a terminal doesn't
support 'p', the OSC-52 request will be silently ignored.
* lisp/term/xterm.el (xterm--init, xterm--primary-da-handler):
Query primary device attributes for OSC-52 support.  (Bug#80083)

Copyright-paperwork-exempt: yes
2026-01-03 14:43:48 +02:00
Paul Nelson
06adedd439 Rmail: fix misplaced "D" after auto-file
* lisp/mail/rmailsum.el (rmail-summary-mark-deleted): Move to
beginning of line before searching for status indicator.
(Bug#80097)
2026-01-03 14:29:57 +02:00
Eli Zaretskii
1d45be0b09 ; * lisp/format-spec.el (format-spec): Doc fix. (Bug#80078) 2026-01-03 14:21:19 +02:00
Jared Finder
28aa9a7641 Make tty default face show the face widget in customize
* lisp/wid-edit.el (widget-color-match): Allow unspecified-fg
and unspecified-bg as color names.
2026-01-03 13:55:19 +02:00
Jared Finder
61b1554332 Use tty reported background and foreground colors (Bug#79765)
* lisp/term/xterm.el (xterm--report-background-handler)
(xterm--report-foreground-handler): Record tty background and
foreground color in terminal parameters.
(xterm--version-handler): Also query foreground color.
(xterm--init): Also query foreground color; move background and
foreground color handling here.
(xterm--set-background-mode): Rename from
xterm-maybe-set-dark-background-mode; now always set background
mode to dark or light.
(xterm-maybe-update-default-face): Update default face
background and foreground colors to terminal reported values if
they have not yet been customized.
2026-01-03 13:53:47 +02:00
Manuel Giraud
034452e46e Refill 'image-dired-display-image-buffer'
Bug#68486

* lisp/image/image-dired.el (image-dired-display-image): Refill
'image-dired-display-image-buffer' with image contents instead
of killing it.
2026-01-03 13:22:01 +02:00
john muhl
e29d398399 Fontify 'table.create' in 'lua-mode'
* lisp/progmodes/lua-mode.el (lua--builtins): Add 'create' to list
of built-in methods.  (Bug#80057)
2026-01-03 13:19:27 +02:00
Jostein Kjønigsen
692f742caf 'csharp-ts-mode': fix indentation error for try/catch statement
* lisp/progmodes/csharp-mode.el (csharp-ts-mode--indent-rules):
Fix issue with incomplete try/catch statements when try_definition
is parsed, but catch_declaration is not yet parsed (shows in tree
as ERROR).  (Bug#80029)
2026-01-03 13:08:22 +02:00
Eli Zaretskii
bd5f90fa13 ; * src/window.c (Fwindow_cursor_info): Doc fix. 2026-01-03 12:59:40 +02:00
RadioNoiseE
48b80a1e2b New function 'window-cursor-info'
* src/window.c (Fwindow_cursor_info): New function.
(syms_of_window): Defsubr it.
* doc/lispref/windows.texi (Window Point): Document it.
* etc/NEWS: Announce new function.  (Bug#80023)
2026-01-03 12:57:28 +02:00
Eli Zaretskii
82e0951bda ; Mention in PROBLEMS the issue with XIM character-selection window
* etc/PROBLEMS: Describe the annoying XIM popup window.  Suggested
by Francesco Potortì <pot@potorti.it>.  (Bug#79423)
2026-01-03 12:30:12 +02:00
kobarity
4c24c0f3d3 Do not use codecs.open for Python 3
* lisp/progmodes/python.el (python-shell-eval-file-setup-code):
For Python 3, use built-in open instead of codecs.open to address the
deprecation of codecs.open in Python 3.14.  (Bug#79723)
2026-01-03 11:52:48 +02:00
kobarity
f683e7c070 Improve python-shell-completion-get-completions
In 'python-shell-completion-get-completions', since output from the
inferior Python is expected to be in JSON format, commands being echoed
back or warning messages being output caused parsing errors.  We
improved this by re-parsing only the last line when a parsing error
occurs, preventing echo-back or warning messages from affecting parsing.

* lisp/progmodes/python.el
(python-shell-completion-get-completions): Improved to re-parse
only the last line when a JSON parse error occurs.  (Bug#79723)
2026-01-03 11:51:36 +02:00
Eli Zaretskii
4f2a8d81f8 ; * test/manual/etags/README: Update the procedure for CTAGS.good_update. 2026-01-03 11:30:45 +02:00
Eli Zaretskii
e5a6b2e262 ; Update CTAGS.good_update in etags tests for copyright year change. 2026-01-03 11:26:56 +02:00
Eli Zaretskii
16d27cce55 ; * lisp/window.el (display-buffer): Fix quotation. 2026-01-03 11:13:46 +02:00
Stéphane Marks
51498a88cf Add frame parameters 'cloned-from' and 'undeleted' (bug#80104)
* lisp/frame.el (clone-frame): Set the frame parameter
'cloned-from'.
(undelete-frame): Set the frame parameter 'undeleted'.
* src/frame.c (syms_of_frame): <Qcloned_from> <Qundeleted>: New
DEFSYM.
(syms_of_frame): Add 'Qcloned_from' and 'Qundeleted' to
'frame_internal_parameters'.
* doc/lispref/frames.texi: Document these frame parameters.
* etc/NEWS: Announce the new frame parameters.
2026-01-03 09:28:03 +01:00
Michael Albinus
4606510f65 ; * src/lread.c (Feval_buffer): Fix typo in docstring. 2026-01-03 09:24:29 +01:00
Michael Albinus
dc26b0992a Set `lexical-binding' buffer-local in shadowfile.el
* lisp/shadowfile.el (shadow-read-files): Enable `lisp-data-mode'.
Set `lexical-binding' cookie.  (Bug#80086)
2026-01-03 09:23:49 +01:00
Phil Sainty
be9371cde3 Document more display actions in `display-buffer' (bug#80092)
* lisp/window.el (display-buffer): Add docs for several missing actions:
 - display-buffer-in-atom-window
 - display-buffer-in-direction
 - display-buffer-in-side-window
 - display-buffer-reuse-mode-window
 - display-buffer-use-some-frame
Re-arrange the actions into a less-arbitrary sequence.
Re-word some descriptions to use a more consistent phrasing.
Re-wrap some lines (based on the longest pre-existing line), to reduce
the line count.
Un-link the `pop-up-frames' symbol in the alist entry listing.

(display-buffer--action-function-custom-type): Add missing actions,
and re-order as above.

(display-buffer-reuse-mode-window): Tweak the docstring for better
consistency with other display actions.
2026-01-03 15:00:31 +13:00
Phil Sainty
bb43055ef0 Support the reusable-frames' value 0 for display-buffer-in-tab'
* lisp/tab-bar.el (tab-bar--reusable-frames): Implement support for the
`reusable-frames' value 0, for better consistency with other buffer
display actions. (bug#80092)
2026-01-03 14:09:28 +13:00