Commit graph

13468 commits

Author SHA1 Message Date
Martin Rudalics
a78bf76fb9 Revert recent additions of 'split-frame' and 'merge-frames'
* lisp/window-x.el (merge-frames, split-frame): Remove.
* doc/lispref/windows.texi (Changing Window Layouts): Remove
sections on 'split-frame' and 'merge-frames'.
* etc/NEWS: Remove announcement of 'split-frame' and
'merge-frames'.
2025-10-23 16:38:25 +02:00
Martin Rudalics
3b8cec55c4 Document and announce 'split-frame' and 'merge-frames'
* lisp/window-x.el (merge-frames): Rewrite doc-string.  Error out
when FRAME1 and FRAME2 are not distinct frames.
(split-frame): Rewrite doc-string.  Use 'user-error' instead of
'error'.
* doc/lispref/windows.texi (Changing Window Layouts): Document
'split-frame' and 'merge-frames'.
* etc/NEWS: Announce 'split-frame' and 'merge-frames'.
2025-10-23 11:14:03 +02:00
Eli Zaretskii
8fc068a15d ; Fix a recent documentation change
* doc/lispref/customize.texi (Variable Definitions): Restore
description of 'custom-initialize-delay'.  Fix indexing.
2025-10-23 07:46:12 +03:00
Stefan Monnier
287fb2fbad (custom-initialize-after-file): New function
Some global minor modes require initialization.  Those that are preloaded
currently abuse `custom-initialize-delay` for that, but it's suboptimal
and doesn't help those that aren't preloaded.
So introduce a new function to fill that need.
While at it, make `define-globalized-minor-mode` use it
automatically when useful.

* lisp/custom.el (custom-initialize-after-file-load): New function.
* lisp/tooltip.el (tooltip-mode):
* lisp/paren.el (show-paren-mode):
* lisp/rfn-eshadow.el (file-name-shadow-mode):
* lisp/epa-hook.el (auto-encryption-mode):
* lisp/minibuffer.el (minibuffer-regexp-mode, minibuffer-nonselected-mode):
* lisp/electric.el (electric-indent-mode): Use it instead of
`custom-initialize-delay` since the value does not depend on the
runtime context.
(electric-quote-mode): Don't use `custom-initialize-delay` since
the default value is nil anyway.

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Automatically add `:initialize` if needed.
* lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Remove `:initialize`,
now provided automatically.

* doc/lispref/customize.texi (Variable Definitions):
* doc/lispref/modes.texi (Defining Minor Modes): Document and Suggest
`custom-initialize-after-file-load` instead of `custom-initialize-delay`.
2025-10-22 17:12:10 -04:00
Stephen Berman
9a56cf9194 Improve Dired handling of file names with newlines (bug#79528)
* doc/emacs/dired.texi (Dired Enter): Update documentation of
Dired's display and handling of file names that contain newlines.
Document new user option 'dired-auto-toggle-b-switch'.

* etc/NEWS: Announce new warning and new user option.

* lisp/dired.el (dired-auto-toggle-b-switch): New user option.
(dired-internal-noselect): Pop up a warning if the Dired listing
displays a literal newline.
(dired-switches-escape-p): Take the 'ls' switch
'--quoting-style=escape' into account.
(dired-mode): Add 'dired--toggle-b-switch' to 'post-command-hook'.
(dired-move-to-end-of-filename): When the Dired listing includes a
file name containing a newline, this can result in no change in
the 'dired-filename' text property on the last file name, so in
this case take the position just before the final newline as the
end of the last file name to prevent a wrong-type-argument error.
(dired--filename-with-newline-p, dired--remove-b-switch)
(dired--toggle-b-switch, dired--set-auto-toggle-b-switch)
(dired--display-filename-with-newline-warning): New functions.
2025-10-22 00:06:03 +02:00
Elías Gabriel Pérez
4565870dfa hideshow: Add new option for control how the block should be hidden.
bug#79585

* doc/emacs/programs.texi (Hideshow):
* etc/NEWS: Document changes.

* lisp/progmodes/hideshow.el (hs-hide-behavior): New user option.
(hs-life-goes-on): Add 'save-excursion' and 'save-match-data'.
(hs-hide-block): Rework.
2025-10-20 20:57:17 +03:00
Michael Albinus
c024b9c661 Tramp cleanup
* doc/misc/tramp.texi (Configuration): Extend example.

* lisp/net/tramp.el (tramp-skeleton-write-region):
* lisp/net/tramp-cache.el (tramp-flush-file-upper-properties):
* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory):
Use `when-let*'	consequently.

* lisp/net/tramp-cmds.el (tramp-file-name-with-method):
Add :initialize and :set functions.
(tramp-set-file-name-with-method): New defun.
(with-tramp-file-name-with-method): Filter out enabled methods.

* lisp/net/tramp-compat.el: Add TODO.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test-cascaded-file-archive): Use "foo.zip".

* test/lisp/net/tramp-tests.el (tramp--test-instrument-test-case-p):
Extend check.
(tramp-test48-session-timeout): Adapt test.

* test/lisp/net/tramp-archive-resources/foo.zip: Renamed from outer.zip.
2025-10-20 14:42:12 +02:00
João Távora
61a05c3088 Eglot: expand on eglot-workspace-configuration sections (bug#79655)
* doc/misc/eglot.texi (Project-specific configuration): Clarify section.
2025-10-20 12:59:03 +01:00
Mattias Engdegård
d1b3eb7eec Add any and all (bug#79611)
* lisp/subr.el (all, any): New.
* test/lisp/subr-tests.el (subr-all, subr-any): New tests.
* doc/lispref/lists.texi (List Elements): Document.
* etc/NEWS: Announce.
2025-10-20 11:39:16 +02:00
Mattias Engdegård
cfe3c1c840 Add drop-while and take-while (bug#79611)
* lisp/subr.el (internal--effect-free-fun-arg-p)
(drop-while, take-while): New.
* test/lisp/subr-tests.el (subr-drop-while, subr-take-while): New tests.
* doc/lispref/lists.texi (List Elements): Document.
* etc/NEWS: Announce.
2025-10-20 11:38:42 +02:00
Eli Zaretskii
521e06d3ef Merge from origin/emacs-30
53aac6aecd ; Improve documentation of commands that split current wi...
2025-10-18 06:15:46 -04:00
Eli Zaretskii
0d8a31423a ; Fix documentation of a recent commit
* src/window.c (Fcombine_windows, Funcombine_window): Doc fixes.

* doc/lispref/windows.texi (Recombining Windows): Fix markup and
wording.
2025-10-18 12:26:28 +03:00
Martin Rudalics
ef2b032567 Add functions 'combine-windows' and 'uncombine-window'
* src/window.c (make_parent_window, Fcombine_windows)
(Funcombine_window): New functions.
(Fsplit_window_internal): Use make_parent_window.
* doc/lispref/windows.texi (Recombining Windows): Describe new
functions 'combine-windows' and 'uncombine-window'.
(Window Configurations): Explain "window clones".
* etc/NEWS: Mention new functions 'combine-windows' and
'uncombine-window'.
2025-10-18 10:33:10 +02:00
Eli Zaretskii
53aac6aecd ; Improve documentation of commands that split current window
* doc/emacs/sending.texi (Sending Mail):
* doc/emacs/dired.texi (Dired Enter, Dired Visiting):
* doc/emacs/maintaining.texi (Old Revisions)
(Change Log Commands, Looking Up Identifiers):
* doc/emacs/windows.texi (Displaying Buffers):
* doc/emacs/files.texi (Visiting): Add cross-references to where
user options are described which control how windows are split.

* lisp/mail/sendmail.el (mail-other-window):
* lisp/gnus/message.el (message-mail-other-window)
(message-news-other-window):
* lisp/replace.el (occur-mode-goto-occurrence-other-window):
* lisp/vc/vc.el (vc-revision-other-window):
* lisp/vc/vc-dir.el (vc-dir-find-file-other-window):
* lisp/progmodes/xref.el (xref-find-definitions-other-window):
* lisp/simple.el (compose-mail-other-window)
(clone-indirect-buffer-other-window):
* lisp/vc/add-log.el (add-change-log-entry-other-window):
* lisp/view.el (view-file-other-window)
(view-buffer-other-window):
* lisp/window.el (switch-to-buffer-other-window):
* lisp/files.el (find-file-other-window)
(find-file-read-only-other-window)
(find-alternate-file-other-window):
* lisp/dired.el (dired-other-window)
(dired-mouse-find-file-other-window)
(dired-find-file-other-window, dired-jump-other-window): Mention
in the doc strings how to control the way the current window is
split.
2025-10-18 10:47:29 +03:00
Eli Zaretskii
bd0a141d09 ; * doc/lispref/windows.texi (Window Hooks): Fix markup. 2025-10-17 13:41:15 +03:00
Martin Rudalics
3fd24aee7e Clarify buffer-local behavior of 'window-buffer-change-functions'
* doc/lispref/windows.texi (Window Hooks): Explain how to
discern calls for 'window-buffer-change-functions' where a
buffer was removed from the window from those where a buffer is
now shown in that window.
2025-10-17 10:24:53 +02:00
Stephen Gildea
90ec5ef01b Manual pages: use a showcase time-stamp-pattern
* doc/man/ebrowse.1:
* doc/man/emacs.1.in:
* doc/man/emacsclient.1:
* doc/man/etags.1:  Loosen the time-stamp-pattern used so that
it is not specific to each file.  These files now provide
readable examples that will work with most man pages.
2025-10-16 17:29:01 -07:00
Stefan Monnier
f37a150a5f doc/emacs/display.texi (Semantic Font Lock): Simplify 2025-10-15 15:21:06 -04:00
Michael Albinus
53fa2b7218 Add support for su-rs and sudo-rs programs
* doc/misc/tramp.texi (Inline methods): Add "surs" and "sudors" methods.

* etc/NEWS: Add optional "surs" and "sudors" Tramp methods.
Presentational fixes and improvements.

* lisp/net/tramp-cmds.el (tramp-file-name-with-method): Add "surs"
and "sudors" to :type.  Adapt :version.

* lisp/net/tramp-sh.el (tramp-enable-surs-method)
(tramp-enable-sudors-method): New defuns
(tramp-sh-handle-expand-file-name): Add "surs" and "sudors" in check.

* lisp/net/tramp.el (tramp-methods): Adapt docstring.

* lisp/comint.el (comint-password-prompt-regexp):
* test/lisp/comint-tests.el (comint-testsuite-password-strings):
Add su-rs and sudo-rs password prompts.
2025-10-15 10:30:29 +02:00
Stefan Monnier
7845936cbb (font-lock-defaults): Clarify the use of SYNTAX-ALIST (bug#79586)
* doc/lispref/modes.texi (Font Lock Basics):
* lisp/font-core.el (font-lock-defaults): Document when
SYNTAX-ALIST is used and how it interacts with syntactic fontification.
2025-10-14 21:51:04 -04:00
Jonas Bernoulli
0dd8138d3f
Update to Transient v0.10.1-8-g188ec9a1 2025-10-13 20:33:30 +02:00
Eli Zaretskii
00b92cd932 ; Improve documentation of semantic highlighting
* lisp/progmodes/elisp-mode.el (elisp)
(elisp-fontify-semantically, elisp-symbol-at-mouse)
(elisp-free-variable, elisp-special-variable-declaration)
(elisp-condition, elisp-major-mode-name, elisp-face)
(elisp-symbol-role, elisp-symbol-role-definition)
(elisp-function, elisp-non-local-exit, elisp-unknown-call)
(elisp-macro, elisp-special-form, elisp-throw-tag)
(elisp-feature, elisp-rx, elisp-theme, elisp-binding-variable)
(elisp-bound-variable, elisp-shadowing-variable)
(elisp-shadowed-variable, elisp-variable-at-point)
(elisp-warning-type, elisp-function-property-declaration)
(elisp-thing, elisp-slot, elisp-widget-type, elisp-type)
(elisp-group, elisp-nnoo-backend, elisp-ampersand)
(elisp-constant, elisp-defun, elisp-defmacro, elisp-defvar)
(elisp-defface, elisp-icon, elisp-deficon, elisp-oclosure)
(elisp-defoclosure, elisp-coding, elisp-defcoding)
(elisp-charset, elisp-defcharset, elisp-completion-category)
(elisp-completion-category-definition, elisp-add-help-echo)
(elisp-fontify-symbol-precedence-function): Add :version tags.

* lisp/emacs-lisp/elisp-scope.el: Fix references to meta-syntactic
variables in the commentary.
(elisp-scope-describe-symbol-role, coding, defcoding, charset)
(defcharset): Doc fixes.
(elisp-scope-safe-macros): Add :version tag.  Doc fix.

* doc/emacs/display.texi (Semantic Font Lock): Fix punctuation and
wording, improve cross-references and indexing.
2025-10-13 11:32:23 +03:00
Eshel Yaron
0816864231
Merge branch 'feature/elisp-fontify-semantically' 2025-10-12 17:12:48 +02:00
James Thomas
d1e173140d ; * doc/misc/gnus.texi (Optional Back End Functions): Add newer (bug#79484). 2025-10-12 12:44:47 +03:00
James Thomas
1ec7f8f9b2 ; * doc/misc/gnus.texi: Fix formatting (bug#79484). 2025-10-12 12:43:25 +03:00
Sean Whitton
2acd9702de ; Simplify last change slightly, improve wording, add xref. 2025-10-11 13:56:21 +01:00
Pedro Andres Aranda Gutierrez
1170c27746 ; use-package manual: Discuss defvar-keymap ':prefix t'
* doc/misc/use-package.texi (Binding to a keymap): Discuss
defvar-keymap ':prefix t' feature.
2025-10-11 13:53:13 +01:00
Eshel Yaron
0d7fc4516c
Document 'elisp-fontify-semantically' in the Emacs manual
* doc/emacs/display.texi (Semantic Font Lock): New node.
* doc/emacs/emacs.texi: Update menu.
* etc/NEWS: Update relevant entry.
* lisp/emacs-lisp/elisp-scope.el: Expand commentary.
* doc/misc/elisp-semantic-highlighting.org: Delete it.
2025-10-11 14:25:45 +02:00
Eli Zaretskii
dcea973c04 Fix MS-Windows tray notifications from different Emacs frames
* src/w32fns.c (EMACS_TRAY_NOTIFICATION_ID_INIT): Rename from
EMACS_TRAY_NOTIFICATION_ID; all users adjusted.
(last_tray_notification_id): New static variable.
(add_tray_notification): Advance 'last_tray_notification_id' for
each new notification; wrap around to the fixed initial value when
reached the maximum.  This allows Lisp programs track notifications
and remove them from the same frame from which they were created.
(Fw32_notification_notify, Fw32_notification_close): Doc fixes.

* doc/lispref/os.texi (Desktop Notifications): Update the
documentation of 'w32-notification-notify' and
'w32-notification-close'.

Bug#79400
2025-10-11 14:00:09 +03:00
Eli Zaretskii
c723760f28 Merge from origin/emacs-30
1895ba3ba3 ; Document %i format
85db0ac0d6 ; * doc/lispref/nonascii.texi (Explicit Encoding): Fix a ...
c119a3600e ; * doc/lispref/tips.texi (Documentation Tips): Document ...

Also fix trailing whitespace in test files.
2025-10-11 06:02:56 -04:00
Eli Zaretskii
c76da79e45 ; * doc/emacs/mini.texi (Minibuffer History): Improve indexing. 2025-10-11 12:47:04 +03:00
Spencer Baugh
443af6fe1d Allow creating a pipe process without a buffer
Previously, even passing :buffer nil to make-pipe-process would
create a buffer.  Now, if you explicitly call (make-pipe-process
:buffer nil), it will create a pipe process without a buffer,
just like all the other process creation functions.

* src/process.c (Fmake_pipe_process): Check for explicit :buffer
nil and don't make a buffer. (bug#79596)
* doc/lispref/processes.texi (Asynchronous Processes): Update.
* test/src/process-tests.el
(process-test-make-pipe-process-no-buffer): Add test.
2025-10-11 12:14:10 +03:00
Eli Zaretskii
1895ba3ba3 ; Document %i format
* src/editfns.c (Fformat): Doc fix.

* doc/lispref/strings.texi (Formatting Strings): Document %i.
2025-10-11 12:08:48 +03:00
Eli Zaretskii
85db0ac0d6 ; * doc/lispref/nonascii.texi (Explicit Encoding): Fix a typo (bug#79613). 2025-10-11 09:47:14 +03:00
Arash Esbati
340149c0a3 ; * doc/misc/reftex.texi (Builtin Label Environments): Fix typo. 2025-10-10 11:27:32 +02:00
Arash Esbati
f344f5c4bf Replace obsolete floatfig package with floatflt
* doc/misc/reftex.texi (Builtin Label Environments): Mention the
floatflt LaTeX package instead of the obsolete floatfig.

* lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
Replace obsolete floatfig entry with floatflt.  Add entry for
"floatingtable".
Fix type indicator for "tabwindow".
(reftex-default-label-alist-entries): Use floatflt as well.
2025-10-10 11:17:54 +02:00
Stefan Monnier
16be837bb7 modes.texi: Declare official support for a standard "abuse"
* doc/lispref/modes.texi (Search-based Fontification):
Explicitly mention the "abuse" of matchers that perform the
highlighting instead of matching.
2025-10-08 19:22:50 -04:00
Eli Zaretskii
c119a3600e ; * doc/lispref/tips.texi (Documentation Tips): Document \\+`foo'. 2025-10-08 09:38:38 +03:00
Sean Whitton
438d8f7351 Merge from origin/emacs-30
c7ab370067 ; * doc/lispref/control.texi (Conditionals): Grammar fix.
f3c29c1415 ; * doc/lispref/control.texi (Conditionals): Document SYM...
da47fa2f23 if-let*/when-let*/and-let*: Don't recommend (VALUEFORM) form
2025-10-07 18:04:20 +01:00
Sean Whitton
c95b33da9c Merge from origin/emacs-30
cd400326b2 ; Improve documentation of 'string-glyph-split'
2025-10-07 18:04:20 +01:00
Sean Whitton
c7ab370067 ; * doc/lispref/control.texi (Conditionals): Grammar fix. 2025-10-07 17:40:39 +01:00
Sean Whitton
f3c29c1415 ; * doc/lispref/control.texi (Conditionals): Document SYMBOL form. 2025-10-07 17:35:32 +01:00
Sean Whitton
da47fa2f23 if-let*/when-let*/and-let*: Don't recommend (VALUEFORM) form
* doc/lispref/control.texi (Conditionals):
* lisp/subr.el (if-let*): Document '(_ VALUEFORM)' instead of
'(VALUEFORM)'.
2025-10-07 17:35:06 +01:00
Eshel Yaron
186cdf599a
; * doc/misc/elisp-semantic-highlighting.org: Fix typos. 2025-10-07 12:09:31 +02:00
Sean Whitton
7f925b06ac defvar-keymap: New ':prefix t' abbreviation
* lisp/keymap.el (defvar-keymap): New ':prefix t' abbreviation.
* lisp/emacs-lisp/helper.el (Helper-help-map):
* lisp/vc/pcvs.el (cvs-mode-diff-map):
* lisp/vc/vc-hooks.el (vc-prefix-map):
* lisp/vcursor.el (vcursor-map): Use it.
* doc/lispref/keymaps.texi (Creating Keymaps):
* etc/NEWS: Document it.
2025-10-06 18:34:18 +01:00
Eshel Yaron
5944cd33dd
Add documentation about ELisp semantic highlighting 2025-10-06 16:59:00 +02:00
Martin Rudalics
1434bc97dc Run buffer-local window change functions in their buffers now
The buffer-local-versions of 'window-buffer-change-functions',
'window-size-change-functions',
'window-selection-change-functions' and
'window-state-change-functions' are now run with the respective
buffer temporarily current.  Also, the local version of
'window-buffer-change-functions' is run for the buffer removed
from the window too.

* src/window.c (run_window_change_functions_locally)
(run_window_change_functions_globally): New functions replacing
'run_window_change_functions_1'.
(run_window_change_functions): Run the buffer local versions of
these hooks in their respective buffers.  Run
'window-buffer-change-functions' for the buffer removed from the
window too.
(Vwindow_buffer_change_functions, Vwindow_size_change_functions)
(Vwindow_selection_change_functions)
(Vwindow_state_change_functions): Mention that the buffer-local
versions are run with their buffer temporarily current.
* doc/lispref/windows.texi (Window Hooks): Mention that
buffer-local-versions of window change functions are run with
their buffer temporarily current.  Also say that
'window-buffer-change-functions' will be run for removed buffer
too.
* etc/NEWS: Advertise changes for the buffer-local versions of
window change functions.
2025-10-06 10:27:27 +02:00
Eli Zaretskii
cd400326b2 ; Improve documentation of 'string-glyph-split'
* doc/lispref/display.texi (Size of Displayed Text):
* lisp/emacs-lisp/subr-x.el (string-glyph-split): Document a
caveat (bug#79576).
2025-10-05 11:04:34 +03:00
Sean Whitton
9ccef794a8 VC: New commands for cherry-picking (bug#79408)
* lisp/vc/diff-mode.el (diff-buffer-file-names): New function.
* lisp/vc/log-view.el (vc--pick-or-revert)
(vc--prompt-other-working-tree): Autoload.
(vc-parent-buffer-name, vc-log-short-style)
(vc-print-log-internal): Declare.
(log-view--pick-or-revert): New function.
(log-view-revision-cherry-pick, log-view-revision-revert): New
commands.
(log-view-mode-map, log-view-mode-menu): Bind them.
* lisp/vc/vc-dispatcher.el (vc-start-logentry): If
get-file-buffer returns nil, use the current buffer as the
parent buffer.
* lisp/vc/vc.el (diff-buffer-file-names, diff-reverse-direction):
Declare.
(vc--pick-or-revert): New function.
(vc-revision-cherry-pick, vc-revision-revert): New commands.
* lisp/vc/vc-hooks.el (vc-menu-map): Bind them.
* doc/emacs/maintaining.texi (VC Change Log, VC Undo)
(Copying Between Branches):
* etc/NEWS: Document the new commands.
2025-10-04 18:18:48 +01:00
Eli Zaretskii
5ee1e205e1 ; Improve the documentation of the last commit
* lisp/vc/log-view.el (log-view-copy-revision-as-kill):
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Improve wording of last commit.  (Bug#79493)
2025-10-04 17:18:12 +03:00
Sean Whitton
d0c63b8427 Improve log-view-copy-revision-as-kill
* lisp/vc/log-view.el (log-view-copy-revision-as-kill): Signal
user-error if there is no revision at point.
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Shorten docs for the new command.
2025-10-04 14:41:16 +01:00
Timo Myyrä
2ce33b66c5 New command log-view-copy-revision-as-kill
* lisp/vc/log-view.el (log-view-copy-revision-as-kill): New
command.
(log-view-mode-map): Bind it.
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Document it.
2025-10-04 14:40:03 +01:00
Sean Whitton
9deff2926b New command log-view-unmark-all-entries
* lisp/vc/log-view.el (log-view-unmark-all-entries): New
command.
(log-view-mode-map): Bind it.
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Document it.
2025-10-03 20:54:25 +01:00
Sean Whitton
70a24e3bb5 Merge from origin/emacs-30
0aa44112b6 ; * doc/emacs/maintaining.texi (VC Change Log): Missing a...
2025-10-03 20:51:18 +01:00
Sean Whitton
d5faebe8db Merge from origin/emacs-30
6a8fda1f33 Fix process name matching in 'tramp-process-running-p'
217fd4f09e ; * doc/lispref/modes.texi (Defining Minor Modes): Fix la...
2025-10-03 20:51:18 +01:00
Sean Whitton
a7bb2fa62a ; TRAMP docs: "cherry pick"->"cherry-pick" (see bug#79408). 2025-10-03 20:24:59 +01:00
Sean Whitton
0aa44112b6 ; * doc/emacs/maintaining.texi (VC Change Log): Missing annotations. 2025-10-03 16:01:26 +01:00
Sean Whitton
17ef2d64e4 ; * doc/emacs/vc1-xtra.texi (Other Working Trees): Better example. 2025-10-01 21:06:10 +01:00
Sean Whitton
b5cf0786a2 New command vc-kill-other-working-tree-buffers
* lisp/vc/vc.el (vc-kill-other-working-tree-buffers): New
command.
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind it.
* doc/emacs/vc1-xtra.texi (Other Working Trees):
* etc/NEWS: Document it.
2025-10-01 20:51:57 +01:00
Juri Linkov
3cdc615218 Improve documentation and customization of 'derived-mode' in buffer predicate
* doc/lispref/buffers.texi (Buffer List):
* lisp/subr.el (buffer-match-p):
Document that 'derived-mode' can be a list (bug#79481).

* lisp/wid-edit.el (buffer-predicate): Support a list for 'derived-mode'.
2025-09-27 20:56:54 +03:00
Paul Eggert
830272b306 Document coding system issues with system-*-locale 2025-09-27 09:31:41 -07:00
Eli Zaretskii
217fd4f09e ; * doc/lispref/modes.texi (Defining Minor Modes): Fix last change. 2025-09-27 17:09:44 +03:00
Eli Zaretskii
48fc9f67b7 Merge from origin/emacs-30
6d35c807e5 ; Improve documentation of globalized minor modes
704fab0452 ; Improve documentation of handling errors
307f465f7b ; * doc/lispref/text.texi (Suspicious Text): Fix suspicio...
6bedbafc7a ; * doc/lispref/text.texi (Suspicious Text): Indexing fix.
2025-09-27 05:56:48 -04:00
Eli Zaretskii
ade511e316 ; Improve documentation of 'defcustom' types
* doc/lispref/customize.texi (Simple Types): Document the
'buffer-predicate' type.  (Bug#79496)
2025-09-27 12:34:25 +03:00
Eli Zaretskii
6d35c807e5 ; Improve documentation of globalized minor modes
* doc/lispref/modes.texi (Defining Minor Modes): Document the
subtlety with ':init-value t' for globalized modes.
2025-09-27 12:22:42 +03:00
Eli Zaretskii
704fab0452 ; Improve documentation of handling errors
* doc/lispref/control.texi (Processing of Errors): Document that
pending input is discarded upon errors.  (Bug#79510)
2025-09-26 09:13:10 +03:00
Eli Zaretskii
bea8b09568 ; * doc/lispref/symbols.texi (Shorthands): Fix markup. 2025-09-23 09:00:57 +03:00
Stephen Berman
77ca60b48d Navigate *Completions* buffer based on 'completions-format'
This patch makes 'next-completion' and 'previous-completion' work
in the vertical completions format analogously to how they work in
the default horizontal format (bug#78959).  It also fixes wrapping
in the vertical format and confines navigation (including
wrapping) in column-wise movement in the vertical format to the
current line, analogously to how navigation (including wrapping)
in line-wise movement in the horizontal format is confined to the
current column.

* doc/emacs/mini.texi (Completion): Fix several typos and improve
wording is several places.
(Completion Commands): Document navigation of the *Completions*
buffer in the vertical format.  Document the difference between
format-sensitive movement and strictly column-wise or line-wise
movement.  Document 'minibuffer-complete-and-exit' and update the
documentation of 'minibuffer-completion-auto-choose' and
'minibuffer-choose-completion'.  Document the use of a numeric
prefix argument with the navigation commands.
(Completion Options): Rearrange and improve documentation of
'completions-sort', 'completions-format' and
'completion-auto-wrap', updating the latter to document the new
behavior.

* lisp/minibuffer.el (minibuffer-visible-completions-map): Rebind
"<left>" to 'minibuffer-previous-column-completion' and "<right>"
to 'minibuffer-next-column-completion'.
(minibuffer-next-completion): Add check for whether completions
format is vertical to decide whether to call
'next-line-completion' and replace calling 'next-completion' by
'next-column-completion'.
(minibuffer-next-column-completion)
(minibuffer-previous-column-completion): New commands.

* lisp/simple.el (completion-list-mode-map): Rebind "<left>" to
'previous-column-completion' and "<right>" to 'next-column-completion'.
(last-completion): Add handling for vertical completions format.
(completion--move-to-candidate-end): Always move point to the
position immediately after the last character of the completion
candidate.  This unifies the behavior, simplifies the
implementation and facilitates implementing the improved
navigation of the *Completions* buffer.
(previous-column-completion, next-column-completion): New
commands, replacing the previous definitions of
'previous-completion' and 'next-completion' to reflect their
column-wise operation.  Confine navigation (including wrapping) in
vertical format to the current line.
(previous-line-completion, next-line-completion): Implement
line-wise navigation (including wrapping) through all completions
in vertical format, not just those in the current column as in
horiztonal format.  Update doc strings.
(next-completion, previous-completion): Redefine to call
'{next,previous}-line-completion' when completions format is
vertical and '{next,previous}-column-completion' otherwise.

* test/lisp/minibuffer-tests.el
(completions-format-navigation--tests): New function providing a
template to define tests of the navigation and wrapping behavior
with specified numbers of completion candidates.
(completions-format-navigation-test-{2,3,4,5,10,15,16}): New tests.
2025-09-22 16:04:42 +02:00
Philipp Stephani
aeadaf7748 Fix minor incorrect statement about shorthands.
* doc/lispref/symbols.texi (Shorthands): Make documentation match
reality.  See symbol_char_span in src/lread.c.
2025-09-22 14:40:32 +02:00
Philipp Stephani
dac0040f8d ; * doc/lispref/symbols.texi (Shorthands): Add missing parenthesis. 2025-09-22 14:28:08 +02:00
Eli Zaretskii
307f465f7b ; * doc/lispref/text.texi (Suspicious Text): Fix suspicious address. 2025-09-22 10:59:17 +03:00
Eli Zaretskii
6bedbafc7a ; * doc/lispref/text.texi (Suspicious Text): Indexing fix. 2025-09-22 08:33:01 +03:00
Eli Zaretskii
7f6b68cd7c ; * doc/emacs/programs.texi (Hideshow): Fix last change. 2025-09-20 13:38:00 +03:00
Eli Zaretskii
66308637d7 ; Fix last change.
* etc/NEWS:
* doc/emacs/programs.texi (Hideshow): Fix wording and punctuation.
2025-09-20 13:06:17 +03:00
Elías Gabriel Pérez
071cdb66fd Add hideable indicators for hideshow. (Bug#79294)
* doc/emacs/programs.texi (Hideshow): Update documentation.
* etc/NEWS: Announce changes.
* lisp/progmodes/hideshow.el (hs-show-indicators)
(hs-indicator-type, hs-indicator-maximum-buffer-size): New user
options.
(hs-indicator-hide, hs-indicator-show): New icons.
(hs-block-positions, hs--make-indicators-overlays)
(hs-indicator-mouse-toggle-hidding, hs--add-indicators)
(hs--refresh-indicators): New functions.
(hs-hide-block-at-point): Use hs-block-positions.
(hs-inside-comment-p): Use 'get-char-property' instead of
'hs-overlay-at'.
(hs-minor-mode): Rework.
2025-09-20 12:58:31 +03:00
Eli Zaretskii
40adabe2ef Improve documentation of 'accept-process-output'
* doc/lispref/processes.texi (Accepting Output):
* src/process.c (Faccept_process_output): Document better the
meaning of the timeout of 'accept-process-output' a,d the fact
that it doesn't always return as soon as some output is available.
See https://lists.gnu.org/archive/html/emacs-devel/2025-08/msg00750.html
for more details.
2025-09-20 12:32:21 +03:00
Alan Mackenzie
ea01e59eb1 CC Mode: Don't indent a construct in a class after a template
This fixes bug#79438.

* lisp/progmodes/cc-align.el (c-lineup-class-field-cont): New
function.

* lisp/progmodes/cc-vars.el (c-offsets-alist): Change the
entry for class-field-cont from + to
c-lineup-class-field-cont.

* doc/misc/cc-mode.texi (Misc Line-Up): Add a new entry for
c-lineup-class-field-cont.
2025-09-19 20:51:45 +00:00
Eric Frederickson
29d46a2e75 * doc/misc/eshell.texi (Scripts): Improve wording for 'eshell-batch-file'. 2025-09-17 10:40:02 -07:00
Eric Frederickson
d4ee087eba ; * doc/misc/eshell.texi (Built-ins): Correct a typo. 2025-09-17 10:39:42 -07:00
Eli Zaretskii
e568f44b54 ; Improve recently-added documentation
* etc/NEWS:
* lisp/vc/vc.el (vc-apply-root-to-other-working-tree):
* doc/emacs/vc1-xtra.texi (Other Working Trees): Fix spelling and
wording of documentation of recent changes to VC.
2025-09-16 19:24:18 +03:00
Sean Whitton
208e80018a New commands to apply changes to other working trees
* lisp/vc/diff-mode.el (diff-apply-buffer): New TEST argument.
* lisp/vc/vc.el (diff-apply-buffer): Declare.
(vc-no-confirm-moving-changes): New user option.
(vc-apply-to-other-working-tree)
(vc-apply-root-to-other-working-tree): New commands.
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind them.
* doc/emacs/vc1-xtra.texi (Other Working Trees):
* etc/NEWS: Document them.
2025-09-16 14:30:02 +01:00
Michael Albinus
72c19d0f39 Improve check for netrc tokens
* doc/misc/auth.texi (Help for users): Mention also "#" inside tokens.

* lisp/auth-source.el (auth-source-netrc-create): Better check for
token format.

* test/lisp/auth-source-tests.el (auth-source-backend-parse-json):
New test.
(auth-source-test-netrc-create-secret): Extend test.
2025-09-15 11:43:52 +02:00
Eli Zaretskii
dd9f185bf6 ; Improve discoverability of tree-sitter related functionality
* doc/lispref/positions.texi (List Motion):
* doc/lispref/modes.texi (Major Mode Conventions, Major Modes)
(Parser-based Font Lock, Parser-based Indentation): Improve
indexing and cross-references to tree-sitter related stuff.
2025-09-14 09:53:16 +03:00
Michael Albinus
26ad23addb Introduc auth-source-ignore-non-existing-file
* lisp/auth-source.el (auth-source-ignore-non-existing-file):
Rename it from `auth-source-ignore-empty-file'.
(auth-source-backends-parser-file): Use it.

* doc/misc/auth.texi (Help for users):
* etc/NEWS:
* test/lisp/auth-source-tests.el (auth-source-validate-backend)
(auth-source-test-netrc-create-secret):
Use `auth-source-ignore-non-existing-file'.
2025-09-12 12:29:30 +02:00
Michael Albinus
d1221a427f Ignore non-existing or empty files in auth-sources
* doc/misc/auth.texi: Replace @code{"..."} by @t{"..."}.
(Help for users): Describe property lists format.  Explain, that
empty files in auth-sources are ignored when
auth-source-ignore-empty-file is non-nil.
(Help for developers): Add auth-source-creation-defaults to vindex.

* etc/NEWS: Introduce auth-source-ignore-empty-file.
Presentational fixes and improvements.

* lisp/auth-source.el (auth-source-ignore-empty-file): New defcustom.
(auth-source-backends-parser-file): Use it.  (Bug#9113)

* test/lisp/auth-source-tests.el (auth-source-validate-backend):
Let-bind `auth-source-ignore-empty-file'.
(auth-source-test-searches): Set file suffix.
(auth-source-test-netrc-create-secret): Adapt test.
2025-09-09 23:20:56 +02:00
Michael Albinus
744216c029 Merge from origin/emacs-30
56cdb65e54 ; * doc/emacs/mini.texi (Minibuffer History): Fix typo.
e65ebdf329 ; Improve documentation of isearch ion minibuffer
6544372764 * doc/misc/tramp.texi (Password handling): Fix default of...
96d9040341 Fix auth-source.el doc
2025-09-09 10:11:00 +02:00
Robert Pluim
56cdb65e54 ; * doc/emacs/mini.texi (Minibuffer History): Fix typo. 2025-09-08 15:14:04 +02:00
Eli Zaretskii
e65ebdf329 ; Improve documentation of isearch ion minibuffer
* doc/emacs/mini.texi (Minibuffer History):
* doc/emacs/search.texi (Repeat Isearch, Isearch Minibuffer):
Improve wording, cross-references, and indexing.  (Bug#79395)
2025-09-08 14:55:43 +03:00
Sean Whitton
15939846a0 Make C-x v w w work in Log View mode, to change working directory
* lisp/vc/diff-mode.el (diff-find-matching-buffer): Rename ...
* lisp/progmodes/project.el
(project-change-to-matching-directory): ... to here.  All uses
changed.
* lisp/vc/log-view.el (project-change-to-matching-directory):
Declare.
(log-view-mode): Use it.
* doc/emacs/vc1-xtra.texi (Other Working Trees): Document the
change.
2025-09-08 11:50:36 +01:00
Michael Albinus
6544372764 * doc/misc/tramp.texi (Password handling): Fix default of auth-sources. 2025-09-07 16:08:09 +02:00
Michael Albinus
96d9040341 Fix auth-source.el doc
* doc/misc/auth.texi (Help for users): Change variables to user
options where appropriate.  Use setopt for them.  Add Tramp link.
Fix example.  (Bug#9113)

* lisp/auth-source.el (auth-sources): Add :link.
2025-09-07 12:18:42 +02:00
Eli Zaretskii
4ac9e93e5e Merge from origin/emacs-30
aad5b676d1 ; * lisp/emacs-lisp/ring.el (ring-convert-sequence-to-rin...
ddd63891a4 ; * doc/misc/flymake.texi (Troubleshooting): Fix typo (bu...
8dcb802046 ; vc-hooks.el: Standardize terminology in header.
2025-09-06 05:53:08 -04:00
Eli Zaretskii
ddd63891a4 ; * doc/misc/flymake.texi (Troubleshooting): Fix typo (bug#79391). 2025-09-06 10:15:49 +03:00
Sean Whitton
684d091692 ; * doc/emacs/vc1-xtra.texi (Other Working Trees): New FIXME. 2025-09-04 11:02:35 +01:00
Jonas Bernoulli
5f70ff65a7
Update to Transient v0.10.0-8-g5efa5c6e 2025-09-03 17:11:44 +02:00
Eli Zaretskii
9c21c11277 ; Improve documentation of 'treesit-enabled-modes'
* lisp/treesit.el (treesit-enabled-modes): Doc fix.

* doc/emacs/modes.texi (Choosing Modes): Extend and improve
wording of a recently-added text.
2025-09-01 17:35:38 +03:00
Sean Whitton
838e8e4140 New project-find-matching-buffer-function for diff-mode
* lisp/vc/diff-mode.el (project-root): Declare.
(diff-find-matching-buffer): New function.
(diff-mode): Use it.
* doc/emacs/vc1-xtra.texi (Other Working Trees): Document
'C-x v w w' in diff-mode buffers.
2025-09-01 15:27:57 +01:00
Juri Linkov
07adb8b59d * doc/emacs/modes.texi (Choosing Modes): Document 'treesit-enabled-modes'. 2025-08-31 20:30:18 +03:00
Sean Whitton
8a284cbbc5 ; Fix `(emacs)Merge Bases'
Intended to be included in previous commit.
2025-08-30 15:54:32 +01:00
Eli Zaretskii
af4a5e2b4a Merge from origin/emacs-30
3d2a818679 * doc/misc/efaq-w32.texi (UTF-8 encoding): New section (b...
ec50d775ac ; * doc/misc/flymake.texi (Finding diagnostics): Fix a ty...
293e258a1b * doc/emacs/screen.texi (Mode Line): Fix reference.
8eb192c23d ; * admin/make-tarball.txt: Update the "Web pages" sectio...
2025-08-30 07:18:37 -04:00
Spencer Baugh
b610f36d44 Document and test 'let-alist' support for indexing
* etc/NEWS: Announce 'let-alist' support for indexing.
* test/lisp/emacs-lisp/let-alist-tests.el (let-alist-numbers):
Add a test for 'let-alist's support for indexing.
* doc/lispref/lists.texi (Association Lists): Document indexing
with 'let-alist'.  (Bug#66509)
2025-08-30 13:59:18 +03:00
Sean Whitton
29e673a77b New commands for outgoing diffs including uncommitted changes
* lisp/vc/vc.el (vc-root-diff-outgoing-base)
(vc-diff-outgoing-base): New commands (bug#62940).
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind them.
* doc/emacs/vc1-xtra.texi (Outgoing Base Diffs):
* etc/NEWS: Document them.
* doc/emacs/emacs.texi (Outgoing Base Diffs): New node.
2025-08-30 11:44:53 +01:00
Sean Whitton
14d20bff06 Document C-x v M D and C-x v M L in the manual
* doc/emacs/emacs.texi (Merge Bases):
* doc/emacs/vc1-xtra.texi (Merge Bases): New node.
2025-08-30 11:44:53 +01:00
Eli Zaretskii
98cd122776 ; * doc/lispref/edebug.texi (Edebug Views): Fix wording of last change. 2025-08-30 12:35:18 +03:00
Jens Schmidt
fdc6bb2caf Add edebug-bounce-to-previous-value
Command edebug-bounce-to-previous-value uses the previous value
observed while single-stepping or evaluating an expression to
bounce point in the outside current buffer to the buffer
position corresponding to that value.

* lisp/emacs-lisp/edebug.el (edebug-previous-value): Add
variable.
(edebug-compute-previous-result, edebug-eval-expression): Update
it.
(edebug-bounce-to-previous-value): Add command.
(edebug-mode-map): Add keybinding for the new command, replacing
the binding of "P" to edebug-view-outside.
(edebug-mode-menus): Add menu entry for the new command.
* doc/lispref/edebug.texi (Edebug Views): Add documentation.
* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el
(edebug-test-code-bounce-point): Add test code.
* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-bounce-outside-buffer)
(edebug-tests-bounce-outside-point)
(edebug-tests-bounce-outside-mark)
(edebug-tests-bounce-record-outside-environment)
(edebug-tests-should-have-bounced-to): Add infrastructure to
test bounces.
(edebug-tests-check-keymap): Update tests to new key bindings.
(edebug-tests-bounce-point)
(edebug-tests-bounce-to-previous-value)
(edebug-tests-bounce-to-previous-non-position): Add tests.
(edebug-tests-evaluation-of-current-buffer-bug-19611): Clean up
side effects.  (Bug#79288)
2025-08-30 12:30:21 +03:00
Eli Zaretskii
3d2a818679 * doc/misc/efaq-w32.texi (UTF-8 encoding): New section (bug#79296). 2025-08-30 12:23:42 +03:00
Sean Devlin
aa60f16e66 Add user option to inhibit Calc startup message (bug#79143)
* doc/misc/calc.texi (Customizing Calc): Document the new option.
* etc/NEWS: Document the new option.
* lisp/calc/calc.el (calc-inhibit-startup-message): New option to
inhibit Calc’s startup message.
(calc): Respect the option in Calc’s startup code.
* test/lisp/calc/calc-tests.el (ert): Require ert-x for
'ert-with-message-capture'.
(calc-inhibit-startup-message): Test the new user option.
2025-08-30 10:22:06 +03:00
Arash Esbati
62e0cde967 ; Delete unnecessary backslashes
* doc/misc/reftex.texi (Options - Creating Citations): Delete
unnecessary backslashes.
2025-08-28 11:50:26 +02:00
Eli Zaretskii
ec50d775ac ; * doc/misc/flymake.texi (Finding diagnostics): Fix a typo (bug#79325). 2025-08-28 08:58:17 +03:00
Michael Albinus
293e258a1b * doc/emacs/screen.texi (Mode Line): Fix reference. 2025-08-27 12:08:12 +02:00
Michael Albinus
29c35668d0 Extend info-xref-test-emacs-manuals, fix info reference
* doc/lispref/loading.texi (Autoload): Fix reference.

* test/lisp/info-xref-tests.el (info-xref-test-emacs-manuals):
Print output buffer.
2025-08-27 11:24:12 +02:00
Michael Albinus
9bde50d6fd ; Comment out tramp-hlo in tramp.texi
* doc/misc/tramp.texi (Frequently Asked Questions): Comment out
tramp-hlo.  It hasn't landed in GNU ELPA yet.
2025-08-25 20:13:02 +02:00
Jim Porter
9f33fb2258 ; * doc/misc/eshell.texi (Globbing): Fix typo and clarify (bug#79175). 2025-08-24 10:38:59 -07:00
Mattias Engdegård
308e3ab1db Disallow string data resizing (bug#79784)
Only allow string mutation that is certain not to require string data to
be resized and reallocated: writing bytes into a unibyte string, and
changing ASCII to ASCII in a multibyte string.

This ensures that mutation will never transform a unibyte string to
multibyte, that the size of a string in bytes never changes, and that
the byte offsets of characters remain the same.  Most importantly, it
removes a long-standing obstacle to reform of string representation and
allow for future performance improvements.

* src/data.c (Faset): Disallow resizing string mutation.
* src/fns.c (clear_string_char_byte_cache):
* src/alloc.c (resize_string_data):  Remove.
* test/src/data-tests.el (data-aset-string): New test.
* test/lisp/subr-tests.el (subr--subst-char-in-string):
Skip error cases.
* test/src/alloc-tests.el (aset-nbytes-change):
Remove test that is no longer relevant.
* doc/lispref/strings.texi (Modifying Strings):
* doc/lispref/sequences.texi (Array Functions):
* doc/lispref/text.texi (Substitution):  Update manual.
* etc/NEWS: Announce.
2025-08-24 10:28:27 +02:00
Eli Zaretskii
9ef78272f6 Merge from origin/emacs-30
b3ed4876b6 ; Improve documentation of Edebug
fdad3417dc ; Fix typo in 'cursor-type' widget
2025-08-23 10:30:47 -04:00
Eli Zaretskii
eabb5f450c Improve and clarify documentation of 'dired-click-to-select-mode'
* lisp/dired.el (dired-click-to-select-mode)
(dired-post-do-command):
* doc/emacs/dired.texi (Marks vs Flags): Improve documentation of
'dired-click-to-select-mode'.

(cherry picked from commit 90c44826f5)
2025-08-23 16:36:11 +03:00
Eli Zaretskii
90c44826f5 Improve and clarify documentation of 'dired-click-to-select-mode'
* lisp/dired.el (dired-click-to-select-mode)
(dired-post-do-command):
* doc/emacs/dired.texi (Marks vs Flags): Improve documentation of
'dired-click-to-select-mode'.
2025-08-23 16:33:45 +03:00
Jeremy Bryant
5d23fc9467 * doc/lispref/control.texi (cond* Macro): Update bind* entry
Update manual to match docstring of (bind*) clause, including
the qualifier `all subsequent clauses'.  (Bug#79246)
2025-08-23 16:03:46 +03:00
Spencer Baugh
aae9eddb58 flymake: stop trying to automatically fall back to margins
The code to automatically fallback to margins is not correct: it
relies implicitly on the buffer being displayed in a window
while flymake-mode is running.  If the buffer is created while
not displayed, we will always automatically fallback to margins,
which is incorrect.
Avoid the regression by simply disabling this code.  I'll try
again to fall back automatically in the future.  (Bug#79244)

* doc/misc/flymake.texi (Customizable variables): Remove section
about automatic fallback to margins.
* etc/NEWS: Un-announce removed feature.
* lisp/progmodes/flymake.el (flymake-indicator-type)
(flymake-mode): Stop automatically falling back to
margins. (bug#77313)
2025-08-23 14:44:35 +03:00
Eli Zaretskii
b3ed4876b6 ; Improve documentation of Edebug
* doc/lispref/edebug.texi (Edebug Execution Modes, Jumping)
(Edebug Misc, Breaks, Breakpoints, Global Break Condition)
(Source Breakpoints, Edebug Views, Edebug Eval, Eval List)
(Printing in Edebug, Trace Buffer, Coverage Testing)
(Checking Whether to Stop, Edebug Display Update)
(Edebug Recursive Edit, Edebug and Macros)
(Instrumenting Macro Calls, Specification List, Edebug Options):
Improve indexing and cross-references.
2025-08-23 13:44:23 +03:00
Michael Albinus
ce9def14c6 Minor tramp.texi changes
* doc/misc/tramp.texi (File name syntax): Describe port for IPv6 address.
(Traces and Profiles): Fix default value of tramp-debug-buffer-limit.
2025-08-22 14:08:52 +02:00
Rahguzar
1a549762ed Correctly document the format of tabulated-list-groups
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-groups):
Correct format in doc string (bug#79220).

* doc/lispref/modes.texi (Tabulated List Mode):
Correct format in manual.
2025-08-21 19:44:48 +03:00
Dmitry Gutov
c6bf09d5c3 ; Fix typo (wrong-type-argument not wrong-argument-type) 2025-08-21 04:06:44 +03:00
Sean Whitton
c60db19ee2 Rename some incoming & outgoing diff commands
* lisp/vc/vc.el (vc-fileset-diff-incoming)
(vc-fileset-diff-outgoing): Rename to ...
(vc-diff-incoming, vc-diff-outgoing): ... these.
All uses changed.
2025-08-20 13:11:14 +01:00
Sean Whitton
da3973b657 VC: New commands for incoming and outgoing fileset diffs
* lisp/vc/vc.el (vc-fileset-diff-incoming)
(vc-fileset-diff-outgoing): New commands.
(vc-root-diff-incoming): Refactor to call
vc-fileset-diff-incoming.
(vc-root-diff-outgoing): Refactor to call
vc-fileset-diff-outgoing.
* lisp/vc/vc-hooks.el (vc-incoming-prefix-map)
(vc-outgoing-prefix-map): Bind the new commands.
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Document the new commands.
2025-08-17 11:36:30 +01:00
Michael Albinus
6979bce0b2 Suppress Tramp session timeout if buffer is modified
* doc/misc/tramp.texi (Predefined connection information): A session
timeout is suppressed if there is a modified buffer, or a buffer
under auto-revert.
(Traces and Profiles): Tramp messages are written to the *Messages*
buffer when level is less than or equal to 3.

* lisp/net/tramp-sh.el (tramp-timeout-session): Do not timeout
when buffer is modified, or in auto-revert mode.

* test/lisp/net/tramp-tests.el (tramp-test48-session-timeout):
Extend test.
2025-08-17 11:19:01 +02:00
Michael Albinus
4a3b6daf76 Sync with Tramp 2.7.4-pre
* doc/misc/trampver.texi:
* lisp/net/trampver.el (tramp-version): Adapt Tramp versions.

* lisp/net/tramp-cmds.el (tramp-cleanup-connection):
Use read syntax #' for `tramp-timeout-session',

* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
* lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
Set "connected" property in time.

* lisp/net/tramp-sh.el (tramp-timeout-session):
Add ;;;###tramp-autoload cookie.

* lisp/net/tramp.el (tramp-barf-if-file-missing): Do not raise an
error when not connected.  (Bug#78572)
(tramp-file-name-handler): Do not force the backtrace.
(tramp-connectable-p): Check also, whether initial handshake is finished.
(tramp-skeleton-directory-files)
(tramp-skeleton-directory-files-and-attributes)
(tramp-skeleton-set-file-modes-times-uid-gid): Rearrange sending
`file-missing' error.
(tramp-handle-access-file, tramp-handle-unlock-file):
Use `tramp-connectable-p'.
(tramp-skeleton-file-name-all-completions): Filter out "" hits.
(Bug#79173)

* test/lisp/net/tramp-tests.el (project-mode-line-format)
(project-mode-line): Declare.
(tramp-test48-session-timeout): New test.
(tramp-test49-auto-load, tramp-test49-delay-load)
(tramp-test49-recursive-load, tramp-test49-remote-load-path)
(tramp-test50-without-remote-files, tramp-test51-unload): Rename.
2025-08-16 12:26:19 +02:00
Eli Zaretskii
46b22304b0 Update description of buffer-in-register
* doc/lispref/text.texi (Registers): Update register-in-buffer
form.  (Bug#79243)
2025-08-15 13:46:40 +03:00
Michael Albinus
7856dd557a Limit size of Tramp debug buffer
* doc/misc/tramp.texi (Traces and Profiles): Add
tramp-debug-buffer-limit to index.  Describe it.

* lisp/net/tramp-message.el (tramp-debug-buffer-limit): New defcustom.
(tramp-debug-message): Use it.  (Bug#79182)
2025-08-13 17:33:37 +02:00
JD Smith
7486e5c368 Implement new autoload macro expansion declare form
Currently, a hard-coded set of macros is automatically expanded
during generation of autoloads.  To allow user macros to request
such expansion, this implements a new declare form
`autoload-macro' (Bug#78995), with supported value `expand'.
For example, macros which wrap `define-minor-mode', can declare
`(autoload-macro expand)' to request that ;;;###autoload-adorned
calls to the macro are expanded during generation, such that an
autoload for the resulting function is created.

* lisp/emacs-lisp/byte-run.el (byte-run--set-autoload-macro):
Handle autoload-macro declare forms.
(macro-declarations-alist) Add handler for 'autoload-macro
declare forms.
(defmacro, defun):
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric, cl-defun)
(cl-iter-defun, cl-defmacro, cl-defstruct):
* lisp/emacs-lisp/easy-mmode.el
(define-minor-mode, define-globalized-minor-mode, iter-defun):
* lisp/emacs-lisp/inline.el (define-inline):
* lisp/emacs-lisp/pcase.el (pcase-defmacro):
Declare (autoload-macro expand) to request expansion of the
macro during autoload generation.

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--make-autoload):
Handle the `autoload-macro=expand' property for macros.  Load
the ;;;###autoload-containing file if an unknown symbol is
encountered in the car of the following form, to give packages a
chance to define their macros and request expansion.  Factor
list of special function-defining macros out as a constant
variable: `loaddefs--defining-macros'.

* doc/lispref/functions.texi (Declare Form):
* doc/lispref/loading.texi (Autoload): Document `autoload-macro'.
2025-08-10 18:14:23 -04:00
Sean Whitton
38c5742cba New command vc-working-tree-switch-project (bug#79024)
* lisp/vc/vc.el (vc-working-tree-switch-project): New command.
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind it to C-x v w s.
* doc/emacs/vc1-xtra.texi (Other Working Trees):
* etc/NEWS: Document it.
2025-08-10 12:20:42 +01:00
Dmitry Gutov
07eb39f113 Allow thread's buffer to be killed, by default
* src/thread.c (Fmake_thread): Add new argument (bug#76969).
(thread_set_error): New function, extracted from thread-signal.
(Fthread_buffer_disposition): Add getter.
(Fthread_set_buffer_disposition): And setter.
(thread_check_current_buffer): Check the values of threads'
buffer_disposition.
(thread_all_before_buffer_killed): New function.
(init_threads): Set buffer_disposition to nil for the main thread.
(syms_of_threads): Add new symbols and define the error.

* src/thread.h (thread_state): New field buffer_disposition.
(thread_all_before_buffer_killed): Declare.

* src/buffer.c (Fkill_buffer): Call thread_check_current_buffer
one more time after all hooks and after that call
thread_all_before_buffer_killed.

* src/comp.c (ABI_VERSION): Increase the value.

* test/src/thread-tests.el (thread-buffer-disposition-t)
(thread-buffer-disposition-nil)
(thread-buffer-disposition-silently)
(thread-set-buffer-disposition)
(thread-set-buffer-disposition-main-thread): New tests.

* doc/lispref/threads.texi (Basic Thread Functions): Document
buffer-disposition in make-thread and its getter and setter.

* etc/NEWS: Add entry.
2025-08-09 22:40:07 +03:00
Zach Shaftel
581447cd25 Improve Vprint_variable_mapping
* src/print.c (print_create_variable_mapping): Fix a typo,
`unreadeable-function' to `unreadable-function'. Add `symbols-bare'
as an override for `print-symbols-bare'.  (Bug#79161)
2025-08-09 15:34:51 +03:00
Michael Albinus
1fc4bb1fea Rename variables *-in-progress-p to *-in-progress
* doc/lispref/backups.texi (Reverting): Fix variable names
revert-buffer-in-progress and auto-revert-buffer-in-progress.

* etc/NEWS: Fix variable names revert-buffer-in-progress and
auto-revert-buffer-in-progress.
Presentational fixes and improvements.

* lisp/autorevert.el (auto-revert-buffer-in-progress): Rename.
(auto-revert-handler, auto-revert-buffer): Use renamed variables.

* lisp/dired-x.el (dired-omit-expunge):
Use `auto-revert-buffer-in-progress'.

* lisp/files.el (revert-buffer-in-progress): Rename.
(revert-buffer-in-progress-p): Declare obsolete.
(after-find-file, revert-buffer):
* lisp/saveplace.el (save-place-find-file-hook)
(save-place-dired-hook):
* lisp/vc/vc-git.el (vc-git-command, vc-git--out-ok):
* lisp/vc/vc.el (vc-diff-internal):
Use `revert-buffer-in-progress'.

* lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered): Suppress warning.
2025-08-09 14:21:23 +02:00
mattiasdrp
bd1362b686 Autoinsert: Allow condition to be a function
Currently a condition can only be a regexp or a major-mode symbol but
there's no real reason to not allow any predicate as a condition.
* doc/misc/autotype.texi: Document the new condition type in
'auto-insert-alist'.
* etc/NEWS: Announce the new condition type in 'auto-insert-alist'.
* lisp/autoinsert.el (auto-insert-alist): Add the new condition type to
the variable documentation.
(auto-insert): Change the way the condition is matched to allow for
custom predicates.
* test/lisp/autoinsert-tests.el
(autoinsert-tests-auto-insert-lambda/-nil): Add two tests for
lambdas (nil and t cases)
(autoinsert-tests-auto-insert-predicate/-nil): Add two tests for named
predicates (nil and t cases) (Bug#79178)
2025-08-09 13:35:48 +03:00
Eli Zaretskii
0c40940054 Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2025-08-08 14:41:26 +03:00
Eli Zaretskii
5d5a00e4ad Revert "Autoinsert: Allow condition to be a function"
This reverts commit 738a7bb494.
It caused regressions in autoinsert-tests, and causes
conceptual problems due to its design.  (Bug#79178)
2025-08-08 14:39:34 +03:00
Michael Albinus
be4be3eb09 Add auto-revert-buffer-in-progress-p
* doc/lispref/backups.texi (Reverting):
Add auto-revert-buffer-in-progress-p.

* etc/NEWS: Mention auto-revert-buffer-in-progress-p.

* lisp/autorevert.el (auto-revert-buffer-in-progress-p):
New autoloaded variable.
(auto-revert-buffer): Let-bind it.  (Bug#79145)

* lisp/dired-x.el (dired-omit-expunge): Suppress messages when in
auto-revert.
2025-08-08 13:26:16 +02:00
mattiasdrp
738a7bb494 Autoinsert: Allow condition to be a function
Currently a condition can only be a regexp or a major-mode symbol
but there's no real reason to not allow any predicate as a
condition.
* doc/misc/autotype.texi: Document the new condition type in
'auto-insert-alist'.
* etc/NEWS: Announce the new condition type in 'auto-insert-alist'.
* lisp/autoinsert.el (auto-insert-alist): Add the new condition
type to the variable documentation.
(auto-insert): Change the way the condition is matched to allow for
custom predicates.  (Bug#79178)
2025-08-07 17:36:45 +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
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
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
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
Jonas Bernoulli
17c54bed4b
Update to Transient v0.9.4-8-g6bc543d5 2025-08-01 19:38:56 +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
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
Paul Eggert
3797484608 Update from Gnulib by running admin/merge-gnulib 2025-07-29 15:06:14 -07:00
Sean Whitton
c403e9a18f ; * doc/emacs/vc1-xtra.texi (Other Working Trees): Expand text. 2025-07-28 20:17:09 +01:00
Eli Zaretskii
8ec2ddebdd ; Update documentation of GC in ELisp manual
* doc/lispref/internals.texi (Garbage Collection): Update default
values for GC-related thresholds.  (Bug#79074)
2025-07-28 16:14:44 +03:00
Robert Pluim
57a9798c22 Prefer "tls" to "ssl" in documentation
* doc/misc/gnus.texi (NNTP): Refer to 'nntp-open-tls-stream'.
(Direct Functions, Customizing the IMAP Connection): Add
commentary about desirability of STARTTLS.  Correct
documentation about use of GnuTLS.  Use 'tls in example.
* lisp/gnus/nnimap.el (nnimap-server-port): Mention 'tls in
preference to 'ssl.
* lisp/gnus/nntp.el (nntp-open-connection-function)
(nntp-never-echoes-commands): Document 'nntp-open-tls-stream' as
preferred to 'nntp-open-ssl-stream'.
2025-07-28 14:11:50 +02:00
Sean Whitton
068b324d99 * doc/emacs/vc1-xtra.texi (Other Working Trees): Extended example. 2025-07-27 20:24:53 +01:00
Paul Nelson
c3f30ee204 Add post-save actions for Rmail attachments
* lisp/mail/rmailmm.el (rmail-mime-save-action): New user
option.
(rmail-mime-save): Use it.
* doc/emacs/rmail.texi (Rmail Display): Document it (bug#78971).
2025-07-26 18:22:09 +03:00
Garklein
1bc338075d Add frame parameter which allows border transparency
The new 'borders-respect-alpha-background' frame parameter, when
set to 't', will make window dividers and internal borders
respect the 'alpha-background' frame parameter. This allows
transparent gaps between windows.
* doc/lispref/frames.texi (Font and Color Parameters):
Document the change.
* src/frame.c (frame_parm_table, syms_of_frame)
(gui_set_borders_respect_alpha_background):
* src/frame.h (struct frame): Add frame parameter.
* src/androidfns.c (x_create_frame, android_create_tip_frame)
(android_frame_parm_handlers):
* src/haikufns.c (haiku_create_frame, haiku_create_tip_frame)
(haiku_frame_parm_handlers):
* src/nsfns.m (ns_frame_parm_handlers, x_create_frame):
* src/w32fns.c (x_create_frame, w32_create_tip_frame)
(w32_frame_parm_handlers): Add dummy parameters for backends
that don't support opacity.
* src/pgtkfns.c (pgtk_frame_parm_handlers, x_create_frame)
(pgtk_create_tip_frame):
* src/pgtkterm.c (pgtk_draw_window_divider):
* src/xfns.c (x_create_frame, x_create_tip_frame)
(x_frame_parm_handlers)
* src/xterm.c (x_draw_window_divider)
(x_clear_under_internal_border): Implement parameter on backends
that support opacity.
2025-07-26 18:02:18 +03:00
Eli Zaretskii
ba53f3cb7c ; * doc/emacs/vc1-xtra.texi (Other Working Trees): Add cross-refs. 2025-07-26 16:16:19 +03:00
Sean Whitton
fcdf2061ea ; VC: Improve documentation of other working trees features. 2025-07-26 13:06:51 +01:00
Eli Zaretskii
ccc3068dae Merge from origin/emacs-30
a44e9139c2 loaddefs-generate--rubric: Note about committing ldefs-bo...
e4908623f2 ; Fix documentation of 'other-window'
5f3cbd62b1 ; * lisp/international/quail.el (quail-insert-kbd-layout)...
47deb38f21 ; face-font-family-alternatives, fixed-pitch: Comments.
dd29b0ab66 Fix Eshell call to 'string-suffix-p' when checking for tr...
cbfc095ed4 * etc/PROBLEMS: Describe how to work around screen reader...
8f00d36b63 (gnus)Scoring Tips: New tip regarding header continuation...
2025-07-26 06:58:12 -04:00
Eli Zaretskii
e4908623f2 ; Fix documentation of 'other-window'
* doc/lispref/windows.texi (Cyclic Window Ordering):
* lisp/window.el (other-window): Document ALL-FRAMES in interactive
invocations.
2025-07-26 11:36:16 +03:00
Jim Porter
2e53c7d08b Add new function 'dom-inner-text'
This replaces 'dom-text' and 'dom-texts', and is both more correct and
more efficient than them.

* lisp/dom.el (dom-text, dom-texts): Make obsolete in favor of...
(dom-inner-text--1, dom-inner-text): ... these new functions.  Update
callers.

* doc/lispref/text.texi (Document Object Model): Update documentation to
refer to 'dom-inner-text'.

* etc/NEWS: Announce this change.
2025-07-25 16:42:08 -07:00
Sean Whitton
50ffb29d0b VC: New support for other working trees
* lisp/vc/vc-git.el (vc-git--read-start-point): New function,
factored out of vc-git-create-tag.
(vc-git-create-tag): Use it.
(vc-git--worktrees, vc-git-known-other-working-trees)
(vc-git-add-working-tree, vc-git-delete-working-tree)
(vc-git-move-working-tree):
* lisp/vc/vc-hg.el (vc-hg-known-other-working-trees)
(vc-hg-add-working-tree, vc-hg--shared-p)
(vc-hg-delete-working-tree, vc-hg-move-working-tree): New
functions.
* lisp/vc/vc.el: Define API for known-other-working-tree,
add-working-tree, delete-working-tree and move-working-tree
backend functions.
(vc-dir-status-files): New function.
(project-current-directory-override): Declare.
(dired-rename-subdir): Autoload.
(vc-add-working-tree, vc-switch-working-tree)
(vc-delete-working-tree, vc-move-working-tree): New commands.
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind them under C-x v.

* doc/emacs/vc1-xtra.texi (Other Working Trees): New node.
* etc/NEWS: Announce the new commands.

* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--other-working-trees): New function.
(vc-test-git07-other-working-trees)
(vc-test-hg07-other-working-trees): New tests.

* lisp/ldefs-boot.el: Regenerate.
2025-07-25 19:34:04 +01:00
Sean Whitton
4187320263 ; * doc/emacs/vc-xtra.texi (Advanced VC Usage): Fix menu. 2025-07-25 18:59:46 +01:00
Sean Whitton
09e205fe60 Bind vc-rename-file to C-x v R
* lisp/vc/vc-hooks.el (vc-prefix-map): Bind vc-rename-file to
C-x v R.
* doc/emacs/files.texi (Copying and Naming):
* doc/emacs/vc1-xtra.texi (VC Delete/Rename, Revision Tags):
* etc/NEWS (bindings): Document the new binding.
2025-07-25 18:45:59 +01:00
Paul Eggert
eb9ec79c13 PATH defaults now act more like GNU and POSIX
When PATH is unset or empty, use the system default,
to be consistent with GNU/Linux and with POSIX.
If there is no system default do not default to "."
as that can be dangerous.
* src/callproc.c (init_callproc_1, init_callproc):
Default PATH to the null pointer, not the empty string.
* src/emacs.c (default_PATH): New function.
(find_emacs_executable, decode_env_path): Be consistent with POSIX
and with glibc about what to do when PATH is unset or empty.
2025-07-24 22:13:47 -07:00
Paul Eggert
6a08a9a54d ; Fix file name in "Loading Files" doc. 2025-07-24 22:13:47 -07:00
Michael Albinus
5a7a12d792 Add function exec-suffixes
* doc/lispref/processes.texi (Subprocess Creation):
Add function exec-suffixes.

* etc/NEWS: New function 'exec-suffixes'.
Presentational fixes and improvements.

* lisp/files-x.el (exec-suffixes): New defun.  (Bug#78886)

* lisp/files.el (executable-find): Use function `exec-suffixes'.

* lisp/net/tramp-integration.el
(tramp-connection-local-default-system-variables): Add also
`exec-suffixes'.

* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use
default values of `path-separator', `null-device' and
`exec-suffixes'.
(tramp-smb-connection-local-default-system-variables):
New defconst.  Add it to connection-local profiles.
2025-07-22 17:47:38 +02:00
Eli Zaretskii
5485bda523 Improve documentation of 'quit-window'
* lisp/window.el (quit-window): Mention 'quit-window-kill-buffer'.
(quit-window): Doc fix.

* doc/lispref/windows.texi (Quitting Windows):
* etc/NEWS: Improve documentation of 'quit-window-kill-buffer'.
2025-07-21 15:35:36 +03:00
Sean Whitton
8f00d36b63 (gnus)Scoring Tips: New tip regarding header continuation lines
* doc/misc/gnus.texi (Scoring Tips): New "Continuation lines
when scoring on other headers" tip.
2025-07-21 09:54:09 +01:00
Steven Allen
59575c32aa Add an example for the :authorizable `dbus-call-method' keyword
This was requested in bug#71969 over a year ago.

* doc/misc/dbus.texi (Synchronous Methods): Add example for
`dbus-call-method' with authorization.  (Bug#79062)
2025-07-21 09:50:33 +02:00
Michael Albinus
a86e33663e Update Tramp manual
* doc/misc/tramp.texi (Frequently Asked Questions): Add new items
for Tramp speed up.
2025-07-19 15:04:36 +02:00
Jim Porter
291cd2d341 Improve wording of messages and documentation for 'eww-readable'
* lisp/net/eww.el (eww-readable, eww-mode): Improve wording; avoid using
the word "content".

* doc/misc/eww.texi (Basics): Improve wording.
2025-07-18 18:45:12 -07:00
Paul Eggert
8a1d368b62 Port insert-file-contents dir behavior to Unix
* src/fileio.c (Finsert_file_contents): Port better to traditional
Unix platforms like Solaris, where in some cases 'read' can
succeed on directories.
2025-07-16 11:45:23 -07:00
Michael Albinus
4c9b376607 Improve autorevert-tests
* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.8.1-pre".

* lisp/autorevert.el (auto-revert-mode, auto-revert-tail-mode)
(auto-revert-notify-handler, auto-revert--end-lockout):
Use `auto-revert-buffer'.
(auto-revert-notify-handler): Rearrange setting current buffer.
(auto-revert-handler): Add debug message.  Rearrange check.
Cancel lockout timer if running.

* lisp/net/tramp.el (tramp-barf-if-file-missing)
(with-parsed-tramp-file-name, tramp-skeleton-file-truename):
* lisp/net/tramp-archive.el (with-parsed-tramp-archive-file-name):
* lisp/net/tramp-message.el (tramp-with-demoted-errors):
Fix debug declatation.

* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter): Do not
prepend remote prefix.

* test/lisp/autorevert-tests.el: Unify file notification libraries
"gio-monitor" and "gvfs-monitor-dir" to "gio".
(top): Set some Tramp related variables.
(auto-revert--timeout): Increase value.
(auto-revert--test-enabled-remote)
(auto-revert-test02-auto-revert-deleted-file): Do not check for
EMACS_HYDRA_CI environment variable.
(auto-revert--wait-for-revert): Fix regexp to search for.
(auto-revert--deftest-remote): Fix debug declatation.  Do not tag
:unstable.
(with-auto-revert-test): Fix debug declatation.  Adapt revert intervals.
(auto-revert-test*): Start with (file-notify-rm-all-watches).  Use
`buffer-string' and `string-match-p'.
(auto-revert-test00-auto-revert-mode): Unlock initial lockout.
(auto-revert-test01-auto-revert-several-files): Rearrange
temporary directory and file settings.
(auto-revert-test02-auto-revert-deleted-file): Adapt debug message.
(auto-revert-test03-auto-revert-tail-mode): Use `with-auto-revert-test'.
(auto-revert-test04-auto-revert-mode-dired):
Use `ert-with-temp-directory'.  Adapt prefix of tmpfile.
(auto-revert-test04-auto-revert-mode-dired)
(auto-revert-test05-global-notify, auto-revert-test06-write-file):
Wait for proper file modification.
(auto-revert-test--instrument-kill-buffer-hook): Fix debug message.
(auto-revert-test07-auto-revert-several-buffers): Use
`with-auto-revert-test.

* test/lisp/filenotify-tests.el: Unify file notification libraries
"gio-monitor" and "gvfs-monitor-dir" to "gio".
(file-notify--deftest-remote): Fix debug declatation.  Do not skip
for "gio".
(file-notify--test-with-actions): Fix debug declatation.

* test/lisp/net/tramp-tests.el (filenotify): Require.
(ert-remote-temporary-file-directory)
(tramp-test41-special-characters, tramp-test42-utf8)
(tramp-test45-asynchronous-requests): Do not check for
EMACS_HYDRA_CI environment variable.
(tramp-test46-file-notifications): New test.
2025-07-15 18:57:49 +02:00
Sean Whitton
c82a62fa36 ; Improve cross-referencing in some VC docs. 2025-07-15 12:43:44 +01:00
Sean Whitton
8fb0e33a10 ; Wording fixes in VC docs. 2025-07-15 12:43:31 +01:00
Eli Zaretskii
1e3d76af5a ; Fix documentation of a recent change
* doc/emacs/vc1-xtra.texi (VC Auto-Reverting): Fix wording and
cross-references.
* doc/emacs/emacs.texi (Top): Update @detailmenu.
2025-07-13 19:51:23 +03:00
Sean Whitton
85159f1dd0 ; Fixes to last change. 2025-07-13 15:24:55 +01:00
Michael Albinus
f1aa9482d1 tramp-file-name-with-method can be set connection-local
* doc/misc/tramp.texi (Ad-hoc multi-hops):
tramp-file-name-with-method can be set connection-local.

* etc/NEWS: tramp-file-name-with-method can be set connection-local.
Presentational fixes and improvements.

* lisp/net/tramp-cmds.el (tramp-get-file-name-with-method): New defun.
(with-tramp-file-name-with-method, tramp-file-name-with-sudo): Use it.
(tramp-dired-find-file-with-sudo): Fix docstring.
2025-07-13 15:48:54 +02:00
Sean Whitton
9d750c7e80 New global minor mode vc-auto-revert-mode
* lisp/vc/vc-hooks.el (auto-revert-mode): Declare.
(vc-auto-revert-mode): New global minor mode.
(vc-turn-on-auto-revert-mode-for-tracked-files): New function.
* lisp/vc/vc-dispatcher.el (auto-revert-mode)
(auto-revert-buffers): Declare.
(vc-resynch-window): Don't call vc-revert-buffer-internal when
auto-revert-mode will revert the buffer.  Call
auto-revert-buffers to ensure that this reversion happens in a
timely manner.
* lisp/vc/vc.el (vc-register): Apply vc-auto-revert-mode to
buffers visiting newly registered files.
* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Improve the generated docstring.
* doc/emacs/vc1-xtra.texi (VC Auto-Reverting):
* etc/NEWS: Document the new minor mode.
2025-07-13 12:51:04 +01:00
Eli Zaretskii
c6c64d6da3 Merge from origin/emacs-30
6dd8266bc4 ; * doc/emacs/custom.texi (Init File): Mention "M-x custo...
723cb4da47 ; Fix indexing in Emacs user manual
2025-07-12 05:25:03 -04:00
Eli Zaretskii
6dd8266bc4 ; * doc/emacs/custom.texi (Init File): Mention "M-x customize". 2025-07-12 12:01:05 +03:00
Elías Gabriel Pérez
f746762e74 New command 'mode-line-invisible-mode'
This new command allows hide the mode line in the current
buffer.  (Bug#78881)

* doc/emacs/display.texi (Optional Mode Line): Document feature.
* etc/NEWS: Announce changes.
* lisp/simple.el (mode-line-invisible--buf-state): New buffer
local variable.
(mode-line-invisible-mode): New minor mode.
2025-07-12 10:50:22 +03:00
Eli Zaretskii
a8b0f5adfa ; Fix documentation of last change (bug#78844)
* doc/lispref/elisp.texi (Top):
* doc/lispref/package.texi (Packaging): Fix menus.
(Package Information): Fix wording, indexing and markup.
2025-07-12 10:11:09 +03:00
Xiyue Deng
5c75ec6ae5 Add public interfaces for accessing builtin package info (Bug#78844)
* lisp/emacs-lisp/package.el (package-builtin-packages)
(package-builtin-package-version): New functions.
* doc/lispref/package.texi: Add a section 'Package Information' with
documentation for the new functions.
* etc/NEWS: Add entry for 'package-versioned-builtin-packages' and
'package-builtin-package-version'.
2025-07-12 10:03:50 +03:00
Sean Whitton
0814a93a04 ; Improve manual docs for incoming and outgoing diff commands 2025-07-11 09:29:12 +01:00
Eli Zaretskii
723cb4da47 ; Fix indexing in Emacs user manual
* doc/emacs/frames.texi (Creating Frames):
* doc/emacs/windows.texi (Pop Up Window): Fix indexing and
wording.  (Bug#78945)
2025-07-11 09:24:50 +03:00
Alan Third
2e3ee3e448 Update documentation and NEWS with SVG changes (bug#77841)
* doc/lispref/display.texi (SVG Images):
* etc/NEWS: Document changes to SVG foreground color handling.
2025-07-10 17:54:33 +01:00
Eli Zaretskii
115a4fd940 ; * doc/lispref/parsing.texi (Using Parser): Fix wording. 2025-07-09 15:43:00 +03:00
Yuan Fu
564b947745
Add a synchronous way to get parser change ranges (bug#78402)
This commit only adds the new function, the fix for the bug is
in the next commit.

* doc/lispref/parsing.texi (Using Parser): Add docs.
* lisp/treesit.el (treesit): Add shortdoc.
* src/treesit.c (treesit_get_affected_ranges): New function
extracted from treesit_call_after_change_functions.
(treesit_call_after_change_functions): Extract out.
(treesit_ensure_parsed): Return affected regions.
(Ftreesit_parser_changed_regions): New function that returns the
affected regions.
2025-07-08 23:39:36 -07:00
Sean Whitton
f85f3c30dd ; * doc/emacs/maintaining.texi (VC With A Merging VCS): Fix wording. 2025-07-07 15:30:50 +01:00
Sean Whitton
7a0bfa3ee7 vc-checkin: Check whether the fileset or patches have changed
* lisp/vc/vc-dispatcher.el (vc-finish-logentry): Delay popping
to vc-parent-buffer until after calling the log operation.
That way if the log operation exits early, the current buffer
remains *vc-log*.
(vc-dir-marked-files, dired-get-marked-files): Declare.
(vc-dispatcher--explicit-marks-p): New function.
* lisp/vc/vc.el (vc-checkin): Check the user isn't likely to be
surprised by what is included in the checkin.  Specifically,
check whether the fileset or patches implied by vc-parent-buffer
are unchanged.
* doc/emacs/maintaining.texi (VC With A Merging VCS): Explain
how the fileset or patch string is fixed once *vc-log* pops up.
2025-07-06 14:03:31 +01:00
Sean Whitton
67ddf21576 ; Move text about C-x v v from Diff mode buffers into main list
* doc/emacs/maintaining.texi (VC With A Merging VCS): Move text
about C-x v v from a Diff mode buffer into the bulleted list.
2025-07-06 14:03:31 +01:00
Eli Zaretskii
a4712609b7 Revert "New command 'mode-line-invisible-mode'"
This reverts commit 7e56ffd51b.
It caused failure to bootstrap.  (Bug#78881)
2025-07-05 13:29:46 +03:00
Eli Zaretskii
4288dc7751 Merge from origin/emacs-30
3f7787c979 ; * lisp/replace.el (query-replace-help): Fix help text (...
b10596a630 ; * lisp/emacs-lisp/warnings.el (warning-display-at-botto...
060f964906 Handle ts_node_type return NULL (bug#78938)
5bdacbe460 Improve documentation of 'warning-display-at-bottom'
30dae2ad23 Handle the case when ts_node_type returns NULL (bug#78938)
985ad1da76 ; * lisp/emacs-lisp/bytecomp.el (compilation-safety): Doc...
de18407f51 ; * doc/lispref/functions.texi (Mapping Functions): Fix w...
2025-07-05 06:02:36 -04:00
Eli Zaretskii
8855d27d0b Merge from origin/emacs-30
e51ff3ee66 ; * doc/lispref/threads.texi (Condition Variables): Fix w...
2025-07-05 05:57:36 -04:00
Elías Gabriel Pérez
7e56ffd51b New command 'mode-line-invisible-mode'
This new command allows hide the mode line in the current
buffer.  (Bug#78881)

* doc/emacs/display.texi (Optional Mode Line): Document feature.
* etc/NEWS: Announce changes.
* lisp/bindings.el (mode-line-invisible--buf-state): New buffer
local variable.
(mode-line-invisible-mode): New minor mode.
2025-07-05 11:33:26 +03:00
Eli Zaretskii
763c3cd081 ; * doc/emacs/maintaining.texi (VC Change Log): Fix wording and markup. 2025-07-04 16:32:00 +03:00
Eli Zaretskii
5bdacbe460 Improve documentation of 'warning-display-at-bottom'
* lisp/emacs-lisp/warnings.el (warning-display-at-bottom):
* doc/lispref/display.texi (Warning Options):
* doc/emacs/windows.texi (Temporary Displays):
* etc/NEWS: Improve documentation of 'warning-display-at-bottom'.
See https://lists.gnu.org/archive/html/emacs-devel/2025-07/msg00024.html
for more details.
2025-07-04 15:02:29 +03:00
Sean Whitton
af78b4d333 VC: New incoming & outgoing diff commands (bug#62940)
* lisp/vc/vc-hooks.el (vc-incoming-prefix-map)
(vc-outgoing-prefix-map): New keymaps.
(vc-use-incoming-outgoing-prefixes): New user option.
* lisp/vc/vc.el (vc-root-diff-incoming, vc-root-diff-outgoing):
New commands (bug#62940).
* doc/emacs/maintaining.texi (VC Change Log):
* etc/NEWS: Document the new commands and option.
2025-07-04 12:39:29 +01:00
Jonas Bernoulli
d8cdbc9f61
Update to Transient v0.9.3-8-gecd64f17 2025-07-01 18:23:32 +02:00
Roi Martin
0ac21120cf Update `fill-region-as-paragraph-semlf' to follow fill.el protocols
Update the `fill-region-as-paragraph-semlf' function to follow the
`fill-region-as-paragraph-function' protocol.  This allows us to
reimplement the `fill-paragraph-semlf' function using `fill-paragraph'
and `fill-region-as-paragraph-function'.
* lisp/textmodes/fill.el (fill-region-as-paragraph-semlf): Make this
function compatible with `fill-region-as-paragraph-function'.  Avoid
narrowing.
(fill-paragraph-semlf): Reimplement using `fill-paragraph' and
`fill-region-as-paragraph-function'.
* test/lisp/textmodes/fill-tests.el (fill-test-semlf-fill-region): Add
test.
(fill-test-fill-paragraph-semlf-fill-paragraph-function): Remove test.
(fill-test-fill-paragraph-semlf, fill-test-semlf)
(fill-test-fill-paragraph-semlf-justify, fill-test-semlf-justify)
(fill-test-fill-paragraph-semlf-sentence-end-double-space)
(fill-test-semlf-sentence-end-double-space)
(fill-test-fill-paragraph-semlf-fill-column, fill-test-semlf-fill-column)
(fill-test-fill-paragraph-semlf-punctuation-marks)
(fill-test-semlf-punctuation-marks, fill-test-fill-paragraph-semlf-twice)
(fill-test-semlf-twice, fill-test-fill-paragraph-semlf-fill-prefix)
(fill-test-semlf-fill-prefix)
(fill-test-fill-paragraph-semlf-indented-block)
(fill-test-semlf-indented-block, fill-test-fill-paragraph-semlf-revert)
(fill-test-semlf-revert, fill-test-fill-paragraph-semlf-emacs-lisp-mode)
(fill-test-semlf-emacs-lisp-mode, fill-test-fill-paragraph-semlf-c-mode)
(fill-test-semlf-c-mode, fill-test-fill-paragraph-semlf-org-mode)
(fill-test-semlf-org-mode, fill-test-fill-paragraph-semlf-markdown-mode)
(fill-test-semlf-markdown-mode): User shorter function names consistent
with erts file names.
* test/lisp/textmodes/fill-resources/semlf-fill-region.erts: Add test
data.
* test/lisp/textmodes/fill-resources/semlf-fill-paragraph-function.erts:
Delete file.
* test/lisp/textmodes/fill-resources/semlf-emacs-lisp-mode.erts: Remove
newlines around indented block.
* doc/lispref/text.texi (Filling): Highlight that
`fill-region-as-paragraph-function' changes the behavior of
`fill-paragraph'.
2025-06-30 17:33:43 -04:00
Eli Zaretskii
de18407f51 ; * doc/lispref/functions.texi (Mapping Functions): Fix wording (bug#78930). 2025-06-30 22:06:15 +03:00
Michael Albinus
bd04818e53 Adapt Tramp versions
* doc/misc/trampver.texi:
* lisp/net/trampver.el (tramp-version): Adapt Tramp versions.
2025-06-29 11:03:05 +02:00
Roi Martin
99ec286d78 Add variable `fill-region-as-paragraph-function'
Add the variable `fill-region-as-paragraph-function' to provide
a way to override how functions like `fill-region' fill text.
* doc/lispref/text.texi (Filling): Document
`fill-region-as-paragraph-function' variable.
* doc/emacs/text.texi (Fill Commands): Reference
`fill-region-as-paragraph-function' variable.
* lisp/textmodes/fill.el (fill-region-as-paragraph-function):
Add variable.
(fill-region-as-paragraph): Convert into
`fill-region-as-paragraph-function' wrapper.
(fill-region-as-paragraph-default): Rename old
`fill-region-as-paragraph' function.
(fill-region-as-paragraph-semlf): Update calls to
`fill-region-as-paragraph-default'.
(fill-region): Add reference to `fill-region-as-paragraph-function'
in doc string.
* test/lisp/textmodes/fill-tests.el (fill-test-fill-region): Add
test case for the `fill-region' function.
* test/lisp/textmodes/fill-resources/fill-region.erts: Add test
data.  (Bug#78816)
2025-06-29 07:33:24 +03:00
Eli Zaretskii
e51ff3ee66 ; * doc/lispref/threads.texi (Condition Variables): Fix wording. 2025-06-28 22:17:06 +03:00
Eli Zaretskii
131cde2f86 Merge from origin/emacs-30
6299eb0fe5 bug#78901: [PATCH] js-ts-mode: Fix auto-mode-alist regexp
982938363a Merge branch 'emacs-30' of git.sv.gnu.org:/srv/git/emacs ...
e68ad70af6 Fix 'insert-directory' in Turkish language-environment
f805f51373 Fix job control in remote shell
039ad15373 ; * doc/emacs/package.texi (Package Statuses): Clarify "n...
2025-06-28 06:57:19 -04:00
Maxim Cournoyer
08b0dd890f bug#78845: [PATCH 2/2] doc: Document desktop notifications for Gnus
* doc/misc/gnus.texi (Notifications): Add section.
2025-06-28 12:35:13 +03:00
Maxim Cournoyer
d04b5d2445 bug#78845: [PATCH 1/2] doc: Update Texinfo menus.
Generated from Emacs via M-x texinfo-all-menus-update, and dropping
changes made due to limitations of the tool.
2025-06-28 12:30:01 +03:00
Paul Eggert
dbdf761187 Update from Gnulib by running admin/merge-gnulib 2025-06-27 23:06:40 -07:00
Sean Whitton
0c0ac8d48a 'C-u C-x .' clears the fill prefix
* lisp/textmodes/fill.el (set-fill-prefix): When called
interactively with a prefix argument, clear the fill prefix,
just like how 'C-u C-x C-n' clears the goal column.
* doc/emacs/text.texi (Fill Prefix):
* etc/NEWS: Document the change.
2025-06-27 14:14:36 +01:00
Sean Whitton
d05b59c8be Improve discoverability of using dumb-emacs-ansi terminal type
* doc/emacs/misc.texi (Interactive Shell, Shell Options):
* lisp/comint.el (comint-terminfo-terminal): Mention setting
comint-terminfo-terminal to "dumb-emacs-ansi" when the system's
terminfo database contains a definition for that terminal type.
2025-06-25 16:21:54 +01:00
Sean Whitton
192066d3b9 Load site-start.el before early-init.el
* lisp/startup.el (command-line): Load site-start.el before
early-init.el.
(site-run-file):
* doc/lispref/os.texi (Startup Summary, Init File):
* etc/NEWS: Document the change.
2025-06-24 17:33:39 +01:00
Stefan Monnier
08fba517f6 (smerge-refine-shadow-cursor): New variable and face (bug#78806)
* lisp/vc/smerge-mode.el (smerge-refine-shadow-cursor): New variable
and face.
(smerge-refine-regions): Add `cursor-sensor-functions` property
to the covering overlays.
(smerge--refine-at-right-margin-p, smerge--refine-shadow-cursor):
New functions.
(smerge--refine-other-pos): New function, extracted from
`smerge-refine-exchange-point`.
(smerge-refine-exchange-point): Use it.
(smerge--refine-highlight-change): Add thin
highlighted space for insertion/deletion positions.

* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect):
Run functions for `moved` events.  Demote errors.
(cursor-sensor-mode): Adjust docstring accordingly.

* doc/lispref/text.texi (Special Properties) <cursor-sensor-functions>:
Mention the new `moved` direction.
2025-06-23 00:00:38 -04:00
Eli Zaretskii
039ad15373 ; * doc/emacs/package.texi (Package Statuses): Clarify "new". 2025-06-22 11:13:55 +03:00
Mattias Engdegård
eca2cc00b6 * doc/lispref/functions.texi (Closures): Rewrite outdated text. 2025-06-17 17:51:49 +02:00
Eli Zaretskii
336253ddd3 Merge from origin/emacs-30
df3fb94f09 Insert missing step to make use of directory tracking OSC...
1bed294958 * lisp/keymap.el (keymap-set): Refer to 'key-description'...
941158fc13 Support new tree-sitter grammar filename format (bug#78754)
888f846d37 Fix crash when evaluating "(signal nil 5)" (bug#78738)
51b9e92ab8 Merge branch 'emacs-30' of git.savannah.gnu.org:/srv/git/...
c0a913ea4f ; * doc/lispref/modes.texi (Font Lock Basics): Remove old...
37de076017 Adapt emba integration (don't merge)
2025-06-14 11:23:54 -04:00
Jacob S. Gordon
5bd9fa084d calc: Allow strings with character codes above Latin-1
The current behavior of the functions 'calc-display-strings',
'strings', and 'bstrings' is to skip any vector containing
integers outside the Latin-1 range (0x00-0xFF).  We introduce a
custom variable 'calc-string-maximum-character' to replace this
hard-coded maximum, and to allow vectors containing higher
character codes to be displayed as strings.  The default value
of 0xFF preserves the existing behavior.

* lisp/calc/calc.el (calc-string-maximum-character): Add custom
variable 'calc-string-maximum-character'.
* lisp/calc/calccomp.el (math-vector-is-string): Replace hard-coded
maximum with 'calc-string-maximum-character', and the 'natnump'
assertion with 'characterp'.  The latter guards against the
maximum being larger than '(max-char)', but not on invalid types of
the maximum such as strings.

* test/lisp/calc/calc-tests.el (calc-math-vector-is-string): Add
tests for 'math-vector-is-string' using different values of
'calc-string-maximum-character'.

* doc/misc/calc.texi (Quick Calculator, Strings, Customizing Calc):
Add variable definition for 'calc-string-maximum-character' and
reference thereof when discussing 'calc-display-strings'.
Generalize a comment about string display and availability of 8-bit
fonts.
(Bug#78528)
2025-06-14 17:07:19 +03:00
Philip Kaludercic
d97ddce0aa
* doc/misc/rcirc.texi: Rephrase recent addition
https://lists.gnu.org/archive/html/emacs-devel/2025-06/msg00184.html
2025-06-14 15:22:06 +02:00
Eli Zaretskii
d9aa098a32 ; * doc/misc/rcirc.texi (Configuration): Fix cross-reference. 2025-06-14 09:14:51 +03:00
Paul Nelson
fbb77abc81 Add simpler binds for calendar month/year navigation
* lisp/calendar/calendar.el (calendar-mode-map): Add keybindings
'{' and '}' for month navigation, '[' and ']' for year
navigation (bug#78753).
* doc/emacs/calendar.texi (Calendar Unit Motion): Document
them.
2025-06-12 09:33:05 +03:00
Sean Whitton
df3fb94f09 Insert missing step to make use of directory tracking OSC codes
* doc/emacs/misc.texi (Interactive Shell): Say to add
comint-osc-process-output to comint-output-filter-function.
2025-06-11 15:23:42 +01:00
Jim Porter
90c0c9a01e Clean up text properties in 'visual-wrap-prefix-mode'
Before refontifying a region, remove any text properties we care about
so that we don't end up with stray properties.  Additionally, make sure
to remove all the properties when deactivating the mode.

* lisp/emacs-lisp/subr-x.el (add-remove--display-text-property): New
function, extracted from...
(add-display-text-property): ... here.
(remove-display-text-property): New function.

* lisp/visual-wrap.el (visual-wrap--remove-properties): New function...
(visual-wrap-prefix-function, visual-wrap-prefix-mode): ... call it.

* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-remove-display-text-property): New test.

* test/lisp/visual-wrap-tests.el
(visual-wrap-tests/wrap-prefix-stickiness, visual-wrap-tests/cleanup):
New tests.

* doc/lispref/display.texi (Display Property): Document
'remove-display-text-property'.

* etc/NEWS: Announce 'remove-display-text-property' (bug#76018).
2025-06-10 22:09:26 -07:00
Jim Porter
24e6cd4233 Improve documentation for display property functions
Specifically, use the term "display specification" more consistently to
distinguish from "display property", which is the full value of the
'display' text property.

* src/xdisp.c (find_display_property): Rename PROP to SPEC.
(Fget_display_property): Rename PROP to SPEC and improve docstring.

* lisp/emacs-lisp/subr-x.el (add-display-text-property): Rename PROP to
SPEC and improve docstring.

* doc/lispref/display.texi (Display Property): Reword documentation to
more-consistently refer to display specifications.
2025-06-10 22:09:26 -07:00
Protesilaos Stavrou
7416595e2f
Update modus-themes to their version 4.8.0
* doc/misc/modus-themes.org (Preview theme colors):(Get a single color from the palette with ~modus-themes-get-color-value~):
(DIY Do not extend the region background, Note on SHR fonts): Fix some typos.
(Full support for packages or face groups): Include tmr in the
list of supported packages.
(Acknowledgements): Mention more people who have contributed to
the project in some capacity.

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el: Make small changes to the palette of each theme.

* etc/themes/modus-themes.el
(modus-themes-after-load-theme-hook): Reword the doc string
(modus-themes--rotate, modus-themes--rotate-p)
(modus-themes--next-in-rotation, modus-themes-rotate): Make
rotation optionally move in the opposite direction.
(modus-themes-faces): Tweak some faces.

Release notes: <https://protesilaos.com/codelog/2025-06-11-emacs-modus-themes-4-8-0/>.
2025-06-11 08:09:05 +03:00
Yuan Fu
0a629abfbb
Add new tactic to treesit-navigate-thing (bug#78703)
* doc/emacs/programs.texi (Moving by Defuns):
* doc/lispref/parsing.texi (User-defined Things): Describe the
new tactic.
* lisp/treesit.el (treesit-navigate-thing): Add new tactic.
2025-06-09 21:43:27 -07:00
Philip Kaludercic
1009e3d1fd
Support checking auth-source for NickServ password for rcirc
* doc/misc/rcirc.texi: Mention new feature.
* etc/NEWS: Mention new feature.
* lisp/net/rcirc.el (rcirc-authinfo): Update type and documentation.
(rcirc-authenticate): Handle a special type to indicate that the
password is stored via auth-source.
2025-06-09 15:13:38 +02:00
Sean Whitton
e58635a184 ; Document recent VC changes regarding file removal
* doc/emacs/maintaining.texi (VC With A Merging VCS)
(VC With A Locking VCS): Update text about 'C-x v v' with mixed
file statuses.
* etc/NEWS: Announce the recent improvements.
2025-06-09 11:51:48 +01:00
Eshel Yaron
86eb733aef
; Fix last change.
Thanks to Daniel Mendler <mail@daniel-mendler.de> for
pointing out my mistake in commit 4be63c85d2.
2025-06-08 21:58:18 +02:00
Eshel Yaron
4be63c85d2
; Document 'completion-table-with-metadata' in the ELisp manual
* doc/lispref/minibuf.texi (Programmed Completion): Document
'completion-table-with-metadata'.
2025-06-08 21:07:20 +02:00
Eli Zaretskii
c0a913ea4f ; * doc/lispref/modes.texi (Font Lock Basics): Remove old info (bug#78720). 2025-06-08 18:43:20 +03:00
Eli Zaretskii
58797a6735 Merge from origin/emacs-30
e4ba279b01 ; * doc/emacs/misc.texi (Network Security): Fix typo.
8fdb2d19b4 ; * lisp/treesit.el (treesit-beginning-of-defun): Doc fix...
2025-06-07 06:59:30 -04:00
Eli Zaretskii
bed490f0f2 ; Fix last change (bug#78396)
* lisp/paren.el (show-paren-not-in-comments-or-strings):
* etc/NEWS:
* doc/emacs/programs.texi (Matching): Fix wording and punctuation
in doc string, defcustom tags, manual, and NEWS.
2025-06-07 13:32:41 +03:00
Elías Gabriel Pérez
12397e3eb0 Add option for not highlight parens inside comments or strings
* lisp/paren.el (show-paren-not-in-comments-or-strings):
New user option.  (Bug#78396)
(show-paren-function): Enclose code in 'catch' function.
* etc/NEWS: Announce changes.
* doc/emacs/programs.texi (Matching): Document new option.
2025-06-07 13:23:31 +03:00
shipmints
13fa74b73c Add optional inherit argument to 'face-all-attributes' (bug#77945)
* lisp/faces.el (face-all-attributes): Add 'inherit' argument
and pass to 'face-attribute'.
2025-06-07 12:39:49 +03:00
Robert Pluim
e4ba279b01 ; * doc/emacs/misc.texi (Network Security): Fix typo. 2025-06-06 17:19:45 +02:00
Eli Zaretskii
5bf6585de2 ; Improve documentation of treesit nodes
* doc/lispref/parsing.texi (Retrieving Nodes): Fix and describe the
printed representation of treesit nodes.
2025-06-05 14:25:06 +03:00
Eli Zaretskii
bcf005fa77 Improve documentation of treesit "thing"
* src/treesit.c (syms_of_treesit):
* lisp/treesit.el (treesit-cycle-sexp-type):
(treesit-thing-at, treesit-thing-at-point): Doc fixes.

* doc/lispref/parsing.texi (User-defined Things): Improve
documentation of treesit "thing" and related functions; add
cross-references and indexing.
2025-06-05 10:30:44 +03:00
Jonas Bernoulli
680fa61b59
Update to Transient v0.9.1-7-gd7d2c1c2 2025-06-04 15:17:51 +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
8881dca81c ; * doc/lispref/searching.texi (Char Classes): Add speedup advice. 2025-05-29 19:02:13 +03: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
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
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
Eli Zaretskii
da174e4a15 ; Fix documentation of a recent commit
* etc/NEWS:
* doc/lispref/loading.texi (How Programs Do Loading): Document the
new variable and function.

* src/lread.c (load-path-filter-function):
* lisp/startup.el (load-path-filter-cache-directory-files)
(load-path-filter--cache): Doc fixes.
2025-05-24 10:23:11 +03:00
Michael Albinus
c526646d70 ; Sync with Tramp 2.7.3.30.2 (Do not merge to master)
* doc/misc/trampver.texi:
* lisp/net/trampver.el (tramp-version): Adapt Tramp versions.
2025-05-18 21:20:41 +02:00
Stephen Berman
913b4e1c97 Amend Electric Pair mode documentation
* doc/emacs/programs.texi (Matching): Restore to the documentation
of Electric Pair mode the description of the use of a prefix
argument, which was overwritten by merging changes from the
emacs-30 branch, and clarify the usage.
2025-05-18 09:39:02 +02:00
Mattias Engdegård
2606e3dd99 * doc/lispref/searching.texi (Rx Notation): Fix example (bug#76731)
The example purporting to match C comments was wrong.
Reported by Yue Yi, whose proposed remedy is used here.
2025-05-17 14:20:51 +02:00
Eli Zaretskii
bd57055a58 Merge from origin/emacs-30
299d3a4401 Fix saving abbrevs by 'abbrev-edit-save-buffer'
399d05332e ; Remove confusing text from ELisp manual
feecb1fbc6 ; * doc/emacs/cmdargs.texi (General Variables): More accu...
18e1aabbea ; Improve documentation of the -L command-line option
c80fbe3f23 typescript-ts-mode: align ternary-chain branches (bug#78187)
16bfbc6fe3 ; Tramp test fixes
f0ac271da3 ; Time Stamps doc: Clearer customize recipe
49c06df224 ; * doc/lispref/variables.texi (Default Value): Update.
cbea5997c0 ; * lisp/mh-e/mh-e.el: Commentary: link to The MH-E Manual
0bf956235e Improve Tramp test
eaf01d034c * lisp/autorevert.el (auto-revert-remote-files): Adapt do...
e32bb816ad ; Improve documentation of ls-lisp.el
2d5f243470 ; * lisp/emacs-lisp/comp.el (native-compile-prune-cache):...
bb73533165 Improve Electric Pair mode documentation (bug#78021)
2025-05-17 06:52:01 -04:00
Eli Zaretskii
399d05332e ; Remove confusing text from ELisp manual
* doc/lispref/variables.texi (Defining Variables): Remove outdated
confusing warning.  For the details, see
https://lists.gnu.org/archive/html/emacs-devel/2025-05/msg00332.html.
2025-05-17 12:35:29 +03:00