1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-24 13:32:41 -08:00
Commit graph

180765 commits

Author SHA1 Message Date
Jared Finder
4e779d20f1 Update cursor display using Xterm escape sequences
* lisp/term/xterm.el (xterm-update-cursor): New user option.
(xterm--init): Use it.
(xterm--post-command-hook): New function for all xterm
functionality installed in 'post-command-hook'.
(xterm--init-frame-title): Install it.
(xterm--init-update-cursor, xterm--set-cursor-type)
(xterm--update-cursor-type, xterm--update-cursor-color): New
functions.
(xterm--cursor-type-to-int): New constant.
* doc/emacs/display.texi (Cursor Display):
* etc/NEWS: Document the new feature.
2026-01-10 12:49:43 +00:00
Eli Zaretskii
88d3101fdd ; Fix description of NS/GNUstep CPP conditions
* admin/CPP-DEFINES (NS_IMPL_GNUSTEP, NS_IMPL_COCOA): Fix
description (bug#80110).
2026-01-10 14:36:10 +02:00
Yavor Doganov
98f56a156e NS: Use Cocoa implementation of EmacsBell -init if named image is declared
* configure.ac: Check for 'NSImageNameCaution' declaration when
building on GNUstep.
* src/nsterm.m ([EmacsBell init]): Use fallback implementation on
GNUstep only if 'NSImageNameCaution' is not declared.  (Bug#80107)
2026-01-10 14:30:43 +02:00
Eli Zaretskii
ee65464ca1 ; Fix documentation of a recent commit
* lisp/emacs-lisp/package.el (package-review-policy)
(package-review-diff-command): Fix doc strings and tags of option
values.
(package-review-directory, package--review-p, package-review): Doc
fixes.
2026-01-10 14:25:45 +02:00
Liu Hui
53225d8a3a Fix cursor position in calendar-generate-window (bug#80069)
* lisp/calendar/calendar.el (calendar-generate-window): Move
cursor to today before running calendar-today-visible-hook.
2026-01-10 12:21:12 +00:00
Sean Whitton
09aad81166 vc--apply-to-other-working-tree: Handle 'diff-default-read-only'.
* lisp/vc/vc.el (vc--apply-to-other-working-tree): Bind
inhibit-read-only to non-nil to handle the case when
diff-default-read-only is non-nil (bug#80128).
2026-01-10 12:08:11 +00:00
Sean Whitton
cd88b8c2ba ; Fix last change. 2026-01-10 11:51:58 +00:00
Sean Whitton
fc682db9d8 * lisp/vc/vc.el (vc-deduce-fileset): Don't return empty FILESET.
Suggested by Spencer Baugh <sbaugh@janestreet.com>.
2026-01-10 11:50:12 +00:00
Philip Kaludercic
da42dd0491
; Fix order of @item and indices in help.texi
* doc/emacs/help.texi (Apropos): Place @kindex and @findex
before @item.
2026-01-10 12:43:17 +01:00
Philip Kaludercic
5b89d46965
Bind 'apropos-user-option' to C-h u
* doc/emacs/help.texi: Adjust documentation.
* etc/NEWS: Mention change.
* lisp/help.el (help-map): Add binding.
2026-01-10 12:38:05 +01:00
Philip Kaludercic
c8d19034aa
Allow 'package-isolate' to fetch missing packages
* lisp/emacs-lisp/package.el (package-isolate): Fetch missing
packages and make them available in the new Emacs process, but
not the current one.
* etc/NEWS: Mention change.
2026-01-10 12:38:05 +01:00
Philip Kaludercic
881be95cdd
Allow reviewing packages before installaion
* lisp/emacs-lisp/package.el (package-review-policy)
(package-review-directory, package-review-diff-command): Add
new options.
(package--review-p): Add new function to consult
'package-review-policy'.
(package-review): Add new function.
(package-unpack): Use new functions.
(package-install-from-archive): Return package descriptors of
installed packages.
(package-download-transaction): Handle failure of a incomplete
transaction.
(package-install): Report if a package installation failed.
(package-upgrade): Anticipate a failed package transaction by
not deleting a package beforehand.
(package-install-from-buffer): Handle the failure to download
dependencies or a rejection during the actual package review.
* doc/emacs/package.texi: Document feature.
* etc/NEWS: Mention new feature.
2026-01-10 12:38:05 +01:00
Sean Whitton
d35e705bdc ; log-view-mode-map: Fix binding M-RET in text mode frames. 2026-01-10 11:31:07 +00:00
Arash Esbati
037130373b ; * doc/lispref/streams.texi (Output Functions): Fix markup (bug#80167). 2026-01-10 12:18:47 +02:00
Stefan Monnier
058bac45b2 cl-generic.el: Avoid an O(N^2) behavior
When N methods are defined, don't (re)build the dispatch
function each time since it takes O(N) time to build it.

* lisp/emacs-lisp/cl-generic.el (cl--generic-method): Add docstring.
(cl--generic): New `lazy-function` slot.
(cl--generic-make-function): Use it and delay building the dispatch
function until the next call.
[toplevel]: Simplify the bootstrap hacks a bit.
2026-01-09 22:34:32 -05:00
Stefan Monnier
6c818936e0 (cl--generic-build-combined-method): Fix lingering error (bug#80154)
The cycle detection could occasionally leave some lingering
cycle marker leading to bogus errors.  While we're here,
streamline the code, to eliminate an unneeded signal+condition-case.

* lisp/emacs-lisp/cl-generic.el (cl--generic-build-combined-method):
Delete error.
(cl--generic-build-combined-method): Rewrite.
2026-01-09 14:18:31 -05:00
Philip Kaludercic
e07e14a7be
Merge remote-tracking branch 'origin/master' 2026-01-09 20:14:11 +01:00
Philip Kaludercic
fb0d269a2a
Merge branch 'package-activate' 2026-01-09 20:07:18 +01:00
Philip Kaludercic
8575c31517
Remove definitions not relevant to startup from package-activate
(Bug#80079)
2026-01-09 20:07:11 +01:00
Philip Kaludercic
ab36f58922
Extract definitions from package.el used during activation
This change removes all definitions that we move to
package-activate.el in a parallel branch, and then merge back
together.  We do this to retain the file history of both files.

(Bug#80079)
2026-01-09 19:51:48 +01:00
Stefan Monnier
65090ec691 (project-files): Revert part of commit 6c832af157
* lisp/progmodes/project.el (project-files): Don't add `ignores` twice.
2026-01-09 13:51:33 -05:00
Philip Kaludercic
7eabec8c5d
; Prepare extraction of package.el's activation core
This change just renames package.el to package-core.el to
preserve the file history.  The original package.el will be
preserved in a seperate branch and merged back together.

(Bug#80079)
2026-01-09 19:46:49 +01:00
Mattias Engdegård
cdfb7354d6 Less stingy lisp-eval-depth supply for debugger
* src/eval.c (call_debugger, signal_or_quit):
Raise extra headroom to 200 levels.  The debugger is sometimes entered
via handler-bind so we raise the bar there as well (bug#80154).
2026-01-09 17:19:45 +01:00
Michael Albinus
d9cc684d10 * test/README: Specify, how to invoke "make". (Bug#80112) 2026-01-09 09:09:04 +01:00
Stefan Monnier
7905fc4a3d trace.el: Avoid inf-loops when tracing "core functions"
This makes it possible to trace at least some of the functions
used by the tracer, such as the cl-print functions.

* lisp/emacs-lisp/trace.el (trace--entry-message)
(trace--exit-message): Don't trace the tracing code.
2026-01-08 17:50:25 -05:00
João Távora
804f965577 Unobsolete and autoload M-x eglot-manual, mention it in manual
The only alternative I've found is

   M-: ( i n f o " ( e g l o t ) " ) RET

which isn't really very user friendly.

* lisp/progmodes/eglot.el (eglot-manual): Unobsolete.

* doc/misc/eglot.texi (Top): Mention M-x eglot-manual.

* etc/EGLOT-NEWS: Mention unobsoletion.
2026-01-08 08:36:50 +00:00
Michael Albinus
d5b9fc5579 ; Fix last entry in etc/NEWS 2026-01-07 18:49:16 +01:00
Stefan Monnier
b5b7504c73 (package-test-install-single): Fix test failure
* test/lisp/emacs-lisp/package-tests.el (package-test-install-single):
We signal an error only for interactive calls now.
2026-01-07 10:58:27 -05:00
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