1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00

Add xref-edit-mode (bug#80616)

Based on the existing grep-edit-mode code.

* lisp/progmodes/xref.el (xref-edit--prepare-buffer): New function.
(xref-edit-mode-map, xref-edit-mode-hook): New variables.
(xref-edit-mode, xref-change-to-xref-edit-mode)
(xref-edit-save-changes): New functions.
(xref--xref-buffer-mode-map): New binding ("e").

* doc/emacs/maintaining.texi (Identifier Search):
Mention xref-change-to-xref-edit-mode.

* etc/NEWS: Describe the addition.
This commit is contained in:
Dmitry Gutov 2026-03-31 19:30:33 +03:00
parent f898d94c7b
commit cda65ffa58
3 changed files with 102 additions and 0 deletions

View file

@ -2926,6 +2926,16 @@ matches of that regexp in the names of the identifiers with
@code{xref-query-replace-in-results}, but is more convenient when you
want to rename a single identifier specified by its name @var{from}.
@findex xref-change-to-xref-edit-mode
@cindex Xref Edit mode
@cindex mode, Xref Edit
Typing @kbd{e} in the @file{*xref*} buffer makes the buffer writable
and enters the Xref Edit mode. Similar to Occur Edit mode (@pxref{Other
Repeating Search}), you can edit the matching lines reported by
Xref backend and have those changes reflected in the buffer visiting the
originating file. Type @kbd{C-c C-c} to leave the Xref Edit mode and
return to the Xref mode.
@findex tags-search
@kbd{M-x tags-search} reads a regexp using the minibuffer, then
searches for matches in all the files in the selected tags table, one