diff options
author | João Távora <joaotavora@gmail.com> | 2023-09-01 00:48:25 +0100 |
---|---|---|
committer | João Távora <joaotavora@gmail.com> | 2023-09-01 01:00:19 +0100 |
commit | ed5ccf9da227d0a9f22ce45eff6382feb8979912 (patch) | |
tree | 9b52f771b31f012fcf163e85fd4e0b7940014755 /lisp/emacs-lisp | |
parent | fad48a20e665e6b5b51c417e9c04946517a2aa2f (diff) | |
download | emacs-ed5ccf9da227d0a9f22ce45eff6382feb8979912.tar.gz emacs-ed5ccf9da227d0a9f22ce45eff6382feb8979912.tar.bz2 emacs-ed5ccf9da227d0a9f22ce45eff6382feb8979912.zip |
Eglot: revamp confirmation model for server-proposed edits
bug#60338
The variable 'eglot-confirm-server-edits' replaces the obsolete
'eglot-confirm-server-initiated-edits' and brings about a new
confirmation model, making it possible to have only certain commands
require user confirmation. This was achieved careful usage of the
'this-command' and 'last-command' variables.
There are now two types of confirmation: the usual
minibuffer summary and a temporary 'diff-mode' buffer to display the
proposed changes, so the user can apply them one by one.
Thanks to Philip Kaludercic for the diff-mode idea and implementation.
Co-authored-by: Philip Kaludercic <philipk@posteo.net>
* doc/misc/eglot.texi (Eglot Variables): Describe
'eglot-confirm-server-edits'.
* etc/EGLOT-NEWS (latest): Mention change.
* lisp/progmodes/eglot.el (diff-mode): Require it.
(eglot-confirm-server-initiated-edits): Obsolete it.
(eglot-confirm-server-edits): New variable.
(eglot-handle-request workspace/applyEdit): Use 'last-command'
(eglot-execute t t): Use 'this-command'.
(eglot--apply-workspace-edit): Rework.
(eglot-rename): Use 'this-command'.
Diffstat (limited to 'lisp/emacs-lisp')
0 files changed, 0 insertions, 0 deletions