aboutsummaryrefslogtreecommitdiffstats
path: root/etc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Rename VC outgoing and incoming log commands to include "-root-"HEADmasterSean Whitton40 min.1-4/+4
| | | | | | | | | | * lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Rename ... (vc-root-log-incoming, vc-root-log-outgoing): ... to these. All uses changed. Leave behind obsolete function aliases. * lisp/emacs-lisp/package-vc.el (package-vc-log-incoming): Rename ... (package-vc-root-log-incoming): ... to this. All uses changed. Leave behind obsolete function alias.
* ; * etc/tutorials/TUTORIAL.fr: fix mistakeBastien Guerry22 hours1-1/+1
| | | | Reported-by: Ronan Plantec <rplantec@laposte.net>
* Add frame identifiers (bug#80138)Stéphane Marks29 hours1-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A unique frame id is assigned to a new or cloned frame, and reused on an undeleted frame. The id facilitates unambiguous identification among frames that share identical names or titles, deleted frames where a live frame object no longer exists that we can resurrect by id, for example via 'tab-bar-undo-close-tab'. It also aids debugging at the C level using the frame struct member id. Rewrite 'clone-frame' and 'undelete-frame' to not let bind variables that 'make-frame' uses to avoid conflicts with nested 'make-frame' calls, for example via 'after-make-frame-functions'. * lisp/frame.el (clone-frame, undelete-frame): Use 'frame--purify-parameters' to supply parameters explicitly. (undelete-frame--save-deleted-frame): Save frame id for restoration. (undelete-frame): Restore frame id. (frame--purify-parameters): New defun. (make-frame): Assign a new id for a new or cloned frame, reuse for undeleted frame. * src/frame.h (struct frame): Add id member. (frame_next_id): New extern. * src/frame.c (frame_next_id): New global counter. (frame_set_id, frame_set_id_from_params): New function. (Fframe_id): New DEFUN. (syms_of_frame <Sframe_id>): New defsubr. (syms_of_frame <Qinternal_id>): New DEFSYM. (syms_of_frame <frame_internal_parameters>): Add 'Qinternal_id'. * src/androidfns.c (Fx_create_frame): * src/haikufns.c (Fx_create_frame): * src/nsfns.m (Fx_create_frame): * src/pgtkfns.c (Fx_create_frame): * src/w32fns.c (Fx_create_frame): * src/xfns.c (Fx_create_frame): Call 'frame_set_id_from_params'. * doc/lispref/frames.texi: Add documentation. * etc/NEWS: Announce frame id.
* Eglot: release version 1.21João Távora3 days1-0/+6
| | | | | | * lisp/progmodes/eglot.el (Version): Bump to 1.21. * etc/EGLOT-NEWS: Announce new version.
* Eglot: release version 1.20João Távora3 days1-1/+1
| | | | | | * lisp/progmodes/eglot.el (Version): Bump to 1.20. * etc/EGLOT-NEWS: Announce new version.
* Eglot: add new command 'eglot-momentary-inlay-hints'João Távora3 days1-0/+9
| | | | | | | | | | * doc/misc/eglot.texi (Eglot Commands) (Customization Variables): Advertise eglot-momentary-inlay-hints. * etc/EGLOT-NEWS: Advertise new command. * lisp/progmodes/eglot.el (eglot--momentary-hints-data): New variable. (eglot-momentary-inlay-hints): New command.
* Eglot: spectacular optimization in files with many diagnosticsJoão Távora3 days1-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a large (or simply long) file with many diagnostics, calling eglot-range-region repeteadly constantly throws Emacs for a spin around the buffer, since each diagnostics comes annotated with a (line/col): LSP range spec that is reasonably expensive to translate into Elisp point positions. A much faster approach for such large lists is to first sort all the objects containing ranges by their start lines and then do a single pass of the buffer, moving lines by delta. By much faster, I do mean spectacularly (100x) faster. A long python with 7000 "ruff" diagnostics, before the change, typical editor operations (add/delete words) are impossible. 14053 84% - jsonrpc-connection-receive 14052 84% - #<byte-code-function B94> 14052 84% - apply 14052 84% - eglot-handle-notification 14052 84% - applyn 14052 84% - #<byte-code-function 6DB> 14052 84% - eglot--flymake-handle-push 12295 74% - eglot--flymake-make-diag 12218 73% + eglot-range-region 50 0% + eglot--check-object 12 0% plist-member 3 0% flymake-make-diagnostic After the change: 99 1% - jsonrpc-connection-receive 99 1% - #<byte-code-function 0EE> 99 1% - apply 99 1% - eglot-handle-notification 99 1% - apply 99 1% - #<byte-code-function E84> 99 1% - eglot--flymake-handle-push 99 1% - eglot--call-with-ranged 99 1% - #<byte-code-function 2C6> 99 1% - eglot-move-to-utf-16-linepos 99 1% line-end-position * lisp/progmodes/eglot.el (eglot-move-to-linepos-function): Forward declare. (eglot--call-with-ranged, eglot--collecting-ranged): New helpers. (eglot--flymake-report-1) (eglot--imenu-SymbolInformation): Use eglot--collecting-ranged. (eglot--imenu-DocumentSymbol): Could use eglot--collecting-ranged. * etc/EGLOT-NEWS: Mention it
* Eglot: document LSP server multiplexer supportJoão Távora3 days1-0/+14
| | | | | | | | | | | | | | | | | | | | This documents how to use LSP multiplexer programs like Rassumfrassum to connect multiple language servers to a single buffer. * doc/misc/eglot.texi (Top): Add "Multi-server support" menu entry. (Multi-server support): New chapter. (Using Rassumfrassum, Design rationale): New sections documenting how to use the Rassumfrassum multiplexer program with Eglot, with practical examples for C++, Python, and multi-language files. (Performance): Mention Rassumfrassum as solution for JSONRPC traffic performance issues. (Reporting bugs): Add guidance for troubleshooting multiplexer-related bugs. Improve project description guidance. Fix various typos. * lisp/progmodes/eglot.el (eglot-server-programs): Add a couple of rass entries. * etc/EGLOT-NEWS: Announce support for LSP server multiplexers via Rassumfrassum.
* hideshow: Reword documentation (bug#80116)Elías Gabriel Pérez4 days1-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * etc/NEWS: Reword entry. * lisp/progmodes/hideshow.el: Reword Commentary Header. (hs-block-start-mdata-select, hs-block-end-regexp) (hs-c-start-regexp, hs-forward-sexp-function) (hs-adjust-block-beginning-function) (hs-adjust-block-end-function, hs-find-block-beginning-function) (hs-find-next-block-function) (hs-looking-at-block-start-predicate) (hs-inside-comment-predicate): Reword docstrings. (hs-block-positions): Reword docstring, and move 'hs-adjust-block-beginning-function' so that it is not affected by 'pos-eol'. (hs-find-block-beg-fn--default): Use 0 instead of 'hs-block-start-mdata-select'. * lisp/treesit.el (treesit-hs-find-block-beginning): Update code.
* Update cursor display using Xterm escape sequencesJared Finder4 days1-0/+9
| | | | | | | | | | | | | | * lisp/term/xterm.el (xterm-update-cursor): New user option. (xterm--init): Use it. (xterm--post-command-hook): New function for all xterm functionality installed in 'post-command-hook'. (xterm--init-frame-title): Install it. (xterm--init-update-cursor, xterm--set-cursor-type) (xterm--update-cursor-type, xterm--update-cursor-color): New functions. (xterm--cursor-type-to-int): New constant. * doc/emacs/display.texi (Cursor Display): * etc/NEWS: Document the new feature.
* Bind 'apropos-user-option' to C-h uPhilip Kaludercic4 days1-0/+5
| | | | | | * doc/emacs/help.texi: Adjust documentation. * etc/NEWS: Mention change. * lisp/help.el (help-map): Add binding.
* Allow 'package-isolate' to fetch missing packagesPhilip Kaludercic4 days1-0/+5
| | | | | | | * lisp/emacs-lisp/package.el (package-isolate): Fetch missing packages and make them available in the new Emacs process, but not the current one. * etc/NEWS: Mention change.
* Allow reviewing packages before installaionPhilip Kaludercic4 days1-0/+8
| | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (package-review-policy) (package-review-directory, package-review-diff-command): Add new options. (package--review-p): Add new function to consult 'package-review-policy'. (package-review): Add new function. (package-unpack): Use new functions. (package-install-from-archive): Return package descriptors of installed packages. (package-download-transaction): Handle failure of a incomplete transaction. (package-install): Report if a package installation failed. (package-upgrade): Anticipate a failed package transaction by not deleting a package beforehand. (package-install-from-buffer): Handle the failure to download dependencies or a rejection during the actual package review. * doc/emacs/package.texi: Document feature. * etc/NEWS: Mention new feature.
* Unobsolete and autoload M-x eglot-manual, mention it in manualJoão Távora6 days1-0/+5
| | | | | | | | | | | | | | The only alternative I've found is M-: ( i n f o " ( e g l o t ) " ) RET which isn't really very user friendly. * lisp/progmodes/eglot.el (eglot-manual): Unobsolete. * doc/misc/eglot.texi (Top): Mention M-x eglot-manual. * etc/EGLOT-NEWS: Mention unobsoletion.
* ; Fix last entry in etc/NEWSMichael Albinus7 days1-1/+0
|
* ; Fix typoMichael Albinus7 days1-1/+1
|
* shadowfile.el uses eqhemeral buffer names nowMichael Albinus7 days1-0/+5
| | | | | | | | * etc/NEWS: shadowfile.el uses eqhemeral buffer names now. * lisp/shadowfile.el (shadow-find-file-noselect): New function. (shadow-read-files, shadow-write-info-file) (shadow-write-todo-file): Use it.
* External Tramp methods can be used in multi-hopsMichael Albinus8 days1-17/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | * doc/misc/tramp.texi (External methods): Mention, how external methods are used for multi-hops. (Ad-hoc multi-hops): Change requirement of method. * doc/misc/trampver.texi: * lisp/net/trampver.el: Change version to "2.8.2-pre". * etc/NEWS: External Tramp methods can be used in multi-hops. Presentational fixes and improvements. * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory): Check for `tramp-method-out-of-band-p' explicitly. Don't flush directory properties. (tramp-method-out-of-band-p): There shouldn't be a multi-hop. * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory): Don't flush directory properties. * lisp/net/tramp.el (tramp-methods): Adapt docstring. (tramp-barf-if-file-missing) (with-parsed-tramp-file-name): Adapt debug spec. (tramp-skeleton-copy-directory): Flush directory properties. (tramp-add-hops): Check for `tramp-login-args' property.
* New function 'window-cursor-info'RadioNoiseE11 days1-0/+6
| | | | | | | * src/window.c (Fwindow_cursor_info): New function. (syms_of_window): Defsubr it. * doc/lispref/windows.texi (Window Point): Document it. * etc/NEWS: Announce new function. (Bug#80023)
* ; Mention in PROBLEMS the issue with XIM character-selection windowEli Zaretskii11 days1-0/+13
| | | | | * etc/PROBLEMS: Describe the annoying XIM popup window. Suggested by Francesco Potortì <pot@potorti.it>. (Bug#79423)
* Add frame parameters 'cloned-from' and 'undeleted' (bug#80104)Stéphane Marks11 days1-0/+12
| | | | | | | | | | | | * lisp/frame.el (clone-frame): Set the frame parameter 'cloned-from'. (undelete-frame): Set the frame parameter 'undeleted'. * src/frame.c (syms_of_frame): <Qcloned_from> <Qundeleted>: New DEFSYM. (syms_of_frame): Add 'Qcloned_from' and 'Qundeleted' to 'frame_internal_parameters'. * doc/lispref/frames.texi: Document these frame parameters. * etc/NEWS: Announce the new frame parameters.
* ; Fix documentation of recent treesit changesEli Zaretskii12 days1-1/+1
| | | | | | | * etc/NEWS: * src/treesit.c (Ftreesit_query_eagerly_compiled_p): * doc/lispref/parsing.texi (Pattern Matching): Fix documentation of the recent treesit-related changes. (Bug#80108)
* Compile queries in treesit-f-l-recompute-features (bug#80108)Yuan Fu12 days1-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The direct cause of the problem in the bug report is that when user runs treesit-font-lock-recompute-features to add the emacs-devel feature in c-ts-mode's mode hook, the added query for emacs-devel aren't compiled. This change consists of two parts: 1. The immediate fix: validate and compile queries in treesit-font-lock-recompute-features. 2. To make it more fool-proof, change treesit-font-lock-rules back to compile the queries and make treesit--compile-query-with-cache support compiled queries. This way, as long as the query goes through treesit-font-lock-rules, it'll be compiled eventually and not cause slow-down. I had to add some c-level functions, but they're kind of overdue anyway, so I don't have any problem adding them to the API. * lisp/treesit.el (treesit--compile-query-with-cache): Support compiled queries. (treesit-font-lock-rules): Compile the queries (but not eagerly). (treesit-font-lock-recompute-features): Validate and compile queries. (treesit-major-mode-setup): Remove call to treesit-validate-and-compile-font-lock-rules since it's now called in treesit-font-lock-recompute-features. * src/treesit.c (Ftreesit_query_eagerly_compiled_p): (Ftreesit_query_source): New functions. * doc/lispref/parsing.texi (Pattern Matching): Add manual entries for the new functions.
* ; * etc/themes/modus-themes.el: Update comment.Eshel Yaron12 days1-5/+4
| | | | | See discussion here https://lists.gnu.org/archive/html/emacs-devel/2026-01/msg00011.html
* ; Add 2026 to copyright years.Sean Whitton13 days168-183/+183
|
* Factor out undo-ignore-read-only (bug#80049)Sean Whitton14 days1-0/+8
| | | | | | | | | | | | * lisp/vc/diff-mode.el (diff-undo): Rename to undo-ignore-read-only. (diff-mode-shared-map): Update "<remap> <undo>" binding. * lisp/simple.el (undo-ignore-read-only): Rename from diff-undo. * lisp/dired.el (dired-undo): * lisp/proced.el (proced-undo): Call it. New numeric prefix argument to specify a repeat count. * doc/emacs/dired.texi (Marks vs Flags): * etc/NEWS: Document the change.
* Update Modus themes to their version 5.2.0Protesilaos Stavrou2025-12-315-254/+712
| | | | Release notes: <https://protesilaos.com/codelog/2025-12-31-emacs-modus-themes-5-2-0/>.
* * lisp/vc/vc-hooks.el (vc-prefix-map): Move 'B' to 'o' (bug#80037).Sean Whitton2025-12-291-1/+1
|
* New commands vc-print-change-log & vc-print-root-change-logSean Whitton2025-12-291-0/+13
| | | | | | | | | | * lisp/vc/vc.el (vc--read-branch-to-log): Call vc-deduce-fileset. Don't wrap return value in a list. (vc-print-fileset-branch-log, vc-print-root-branch-log): Adjust calls to vc--read-branch-to-log. (vc-print-change-log, vc-print-root-change-log): New commands (bug#80037). * etc/NEWS: Announce them.
* ; * etc/yow.lines: remove dummy database for removed yow.elMattias Engdegård2025-12-291-0/+0
|
* track-changes.el (track-changes-undo-only): New varStefan Monnier2025-12-281-0/+4
| | | | | | | | | | | | | * lisp/emacs-lisp/track-changes.el (track-changes-undo-only): New var. (track-changes-fetch): Bind it. (track-changes--state): New slot `undo`. (track-changes--after): Set it. * lisp/vc/diff-mode.el (diff--track-changes-function): Use the new var. * doc/lispref/text.texi (Tracking changes): Mention `track-changes-undo-only`.
* New command 'C-x v b l'Sean Whitton2025-12-281-0/+5
| | | | | | | | | | | | * lisp/vc/vc.el (vc--read-branch-to-log): New function. (vc-print-root-branch-log): Rewrite to use vc--read-branch-to-log and vc--with-backend-in-rootdir. (vc-print-fileset-branch-log): New command. * lisp/vc/vc-dir.el (vc-dir-mode-map): * lisp/vc/vc-hooks.el (vc-prefix-map): (vc-menu-map): Bind it. * doc/emacs/maintaining.texi (VC Change Log): * etc/NEWS: Document it.
* Move 'C-x v b l' to 'C-x v b L', rename commandSean Whitton2025-12-281-0/+14
| | | | | | | | | | | | | * lisp/vc/vc-dir.el (vc-dir-mode-map): * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Replace bindings of 'b l' with 'b L'. * lisp/vc/vc.el (vc-print-root-branch-log): Rename from 'vc-print-branch-log'. All uses changed. (vc-print-branch-log): New obsolete alias. * doc/emacs/maintaining.texi (VC Change Log) (VC Directory Commands): * doc/emacs/vc1-xtra.texi (Editing VC Commands): * etc/NEWS: Document the change.
* lisp-indent-local-overrides: New variableJonas Bernoulli2025-12-271-0/+4
|
* December 2025 spelling fixesPaul Eggert2025-12-267-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some of the fixes are to continue to use American rather than British spelling. * doc/misc/modus-themes.org (my-modus-themes-engraved-faces): Fix misspelled ‘:foreground’s. * etc/themes/modus-themes.el (modus-themes-faces): Fix misspelled ‘modus-themes-bold’. * lisp/emacs-lisp/rx.el (rx--normalize-char-pattern): Rename from rx--normalise-char-pattern. (rx--optimize-or-args): Rename from rx--optimise-or-args. * lisp/frame.el (frame--special-parameters): Fix misspelled "right-divider-width". * lisp/net/tramp.el (tramp-fingerprint-prompt-regexp): Use American spelling “centered”, to match current libfprintf. * lisp/org/org-fold-core.el (org-fold-core--optimize-for-huge-buffers): Rename from org-fold-core--optimise-for-huge-buffers. (org-fold-core-update-optimization): Rename from org-fold-core-update-optimisation, leaving an alias behind. (org-fold-core-remove-optimization): Rename from org-fold-core-remove-optimisation, leaving an alias behind. * lisp/org/org.el (org-advertized-archive-subtree): This alias is now obsolete. * lisp/play/zone.el (zone-ignored-buffers): Fix misspelling of ‘zone--buffer-encrypted-p’. * lisp/progmodes/csharp-mode.el (csharp-ts-mode-faces): Fix misspelling of ‘csharp’ group. * lisp/vc/vc.el (vc-clonable-backends-custom-type): Rename from vc-cloneable-backends-custom-type, leaving an alias behind. * test/lisp/emacs-lisp/bytecomp-tests.el: (bytecomp-tests--warn-arity-non-compiled-callee): Rename from bytecomp-tests--warn-arity-noncompiled-callee. (bytecomp-test-defface-spec): Reword a deliberate misspelling of “default” that is so common I don’t want it to pollute the spelling dictionary. * test/lisp/emacs-lisp/package-vc-tests.el: (package-vc-tests-preserve-artifacts): Rename from package-vc-tests-preserve-artifacts. * test/lisp/eshell/em-prompt-tests.el: (em-prompt-test/forward-backward-paragraph-1): Reword a deliberate misspelling of “goodbye” that is so common I don’t want it to pollute the spelling dictionary.
* * lisp/tab-bar.el (tab-bar-merge-tabs): New command.Juri Linkov2025-12-241-0/+5
| | | | | (merge-tabs): Alias for 'tab-bar-merge-tabs'. https://lists.gnu.org/archive/html/emacs-devel/2025-12/msg00721.html
* Add functions to set frame size and position in one compound stepMartin Rudalics2025-12-221-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/frame.el (set-frame-size-and-position): New function. * src/frame.c (adjust_frame_size): Handle requests to set size and position. (Fset_frame_size_and_position_pixelwise): New function. * src/gtkutil.c (xg_frame_set_size_and_position): New function. (xg_wm_set_size_hint): Handle any non-NorthWestGravity values for child frames only. Some GTK implementations don't like them. * src/gtkutil.h (xg_frame_set_size_and_position.): Add external declaration. * src/termhooks.h (set_window_size_and_position_hook): New hook. * src/w32term.c (w32_set_window_size_and_position): New function. (w32_create_terminal): Make it the Microsoft Windows API set_window_size_and_position_hook. * src/xterm.c (x_set_window_size_and_position_1) (x_set_window_size_and_position): New functions. (x_create_terminal): Make x_set_window_size_and_position the set_window_size_and_position_hook for the X protocol. * src/xterm.h (x_set_window_size_and_position): Add external declaration. * etc/NEWS: Announce new functions.
* Add binary format specifications '%b' and '%B'Jacob S. Gordon2025-12-221-0/+4
| | | | | | | | | | | | | | | | These produce the binary representation of a number. '%#b' and '%#B' prefix with '0b' and '0B', respectively. (bug#79990) * etc/NEWS: Announce change. * doc/lispref/strings.texi (Formatting Strings): Describe new format specs and add to comment on reconstructing the value with 'read'. * src/editfns.c (format): Update doc string. (styled_format): Add support for '%b' and '%B'. To remain portable, avoid use of 'sprintf' by converting by hand. * test/src/editfns-tests.el (format-binary-zero, format-binary-floats) (format-binary-nonzero-integers): Add tests. (read-large-integer): Add binary test cases. Co-authored-by: Paul Eggert <eggert@cs.ucla.edu>
* Remove binary-as-unsigned (bug#79990)Paul Eggert2025-12-211-0/+6
| | | | | | This experimental variable caused more trouble than it cured: it was rarely used, and when used it tended to be used incorrectly. * src/editfns.c (binary-as-unsigned): Remove. All uses removed.
* System GUI taskbar and progress reporter hooks (bug#79859)Stéphane Marks2025-12-211-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement system GUI taskbar/dock/launcher icon badge, icon progress indicator, icon attention alert features for D-Bus platforms (tested on KDE and GNOME), NS (macOS/GNUstep), MS-Windows. Add 'progress-reporter-update-functions' abnormal hook to facilitate taskbar progress display, and other custom progress reporters. The default function list is 'progress-reporter-echo-area' which is backward compatible. * lisp/subr.el (progress-reporter-update-functions): New defvar. (progress-reporter-echo-area): New defun. (progress-reporter-do-update): Run progress-reporter-update-functions for both numerical and pulsing reporters. (progress-reporter-done): Run progress-reporter-done-functions. * lisp/system-taskbar.el: New file. * src/nsfns.m (Fns_badge, Fns_progress_indicator) (Fns_request_user_attention): New function. (syms_of_nsfns): Add defsubr Sns_badge, Sns_request_user_attention, Sns_progress_indicator. Add DEFSYM Qinformational, Qcritical. * src/w32fns.c (rgb_list_to_colorref, Fw32_badge) (Fw32_request_user_attention, Fw32_progress_indicator): New function. (syms_of_w32fns): Add defsubr Sw32_badge, Sw32_progress_indicator, Sw32_request_user_attention. Add DEFSYM Qinformational, Qcritical. * doc/emacs/frames.texi: User documentation. * doc/lispref/os.texi: Programmer documentation. * etc/NEWS: Announce system-taskbar-mode. Announce progress reporter callback enhancements.
* Add query-replace-read-transpose-from-toJens Schmidt2025-12-201-0/+6
| | | | | | | | | | | | | Provide a command to easily swap FROM and TO arguments in a query replace operation. * lisp/replace.el (query-replace-read-transpose-from-to): New function. (query-replace-read-map): New keymap. (query-replace-read-from): Use new keymap to read from minibuffer. (read-regexp-map): Inherit from 'query-replace-read-map'. (query-replace-read-from, query-replace-read-to): Fix parameter references in doc strings. * etc/NEWS: Document the change. (Bug#79835)
* hideshow: Support nested comment block in 'hs-hide-level-recursive'Elías Gabriel Pérez2025-12-201-0/+5
| | | | | | | | | | | | bug#80009 * doc/emacs/programs.texi (Hideshow): Update documentation. * lisp/progmodes/hideshow.el (hs-hide-level-recursive): Rework. (hs-get-first-block-on-line): Minor changes. (hs--add-indicators, hs-hide-comments-when-hiding-all) (hs-minor-mode-menu, hs-hide-level, hs-cycle): Update code. * test/lisp/progmodes/hideshow-tests.el (hideshow-hide-levels-with-comments-1): New test.
* hi-lock: Use active region for default values in more placesRudolf Adamkovič2025-12-201-0/+8
| | | | | | | | | | | | | * lisp/hi-lock.el (hi-lock-line-face-buffer, hi-lock-face-buffer) (hi-lock-face-phrase-buffer): Use the new function `hi-lock-read-regexp' to read font-lock patterns, mirroring `hi-lock-read-face-name' used to read face names. For end users, all three functions now get the default value from the active region, rather than just `hi-lock-face-buffer'. (hi-lock-read-regexp): Extract font-lock pattern reading functionality from `hi-lock-face-buffer' into this function, to mirror how faces are read with `hi-lock-read-face-name' and to promote reuse. (Bug#79976)
* ; Eglot: mention relativePatternSupport in /etc/EGLOT-NEWSJoão Távora2025-12-191-0/+7
| | | | | * etc/EGLOT-NEWS (Changes to upcoming Eglot): Mention relativePatternSupport.
* ; * etc/NEWS: Fix last change.Sean Whitton2025-12-181-3/+3
|
* Make VC-Dir's 'd' able to delete unregistered filesSean Whitton2025-12-181-0/+7
| | | | | | | | | | * lisp/vc/vc.el (vc-delete-file): Simplify. * lisp/vc/vc-dir.el (vc-dir-delete-file): Handle deleting unregistered files, too. (vc-dir-menu-map, vc-dir-mode-map): Replace bindings for vc-dir-clean-files with ones for vc-dir-delete-file. * doc/emacs/maintaining.texi (VC Directory Commands): * etc/NEWS: Document the bindings change.
* New M-RET, M-p, M-n commands in Log View modeSean Whitton2025-12-171-0/+10
| | | | | | | | | * lisp/vc/log-view.el (log-view-msg-and-diff-next) (log-view-msg-and-diff-prev, log-view-display-entry-and-diff): New commands. (log-view-mode-map): Bind them. * doc/emacs/maintaining.texi (VC Change Log): * etc/NEWS: Document them.
* ; * etc/NEWS: Elisp -> Lisp.Sean Whitton2025-12-171-2/+2
|
* New bookmark-after-load-file-hook (bug#80003)Stéphane Marks2025-12-171-0/+6
| | | | | | | * lisp/bookmark.el (bookmark-after-load-file-hook): New defcustom (bug#80003). (bookmark-load): Call the new hook. * etc/NEWS: Announce the new hook.
* ; lisp/saveplace.el, etc/NEWS: Refinements to bug#75837.Stéphane Marks2025-12-171-9/+7
|