Configure undo-tree
This commit is contained in:
parent
ac288e5ad0
commit
a3050322ac
21
config.el
21
config.el
@ -161,6 +161,27 @@
|
|||||||
;; via ssh. This has to be added last so that it is the first element.
|
;; via ssh. This has to be added last so that it is the first element.
|
||||||
(add-to-list 'tramp-default-proxies-alist '("localhost" "\\`root\\'" nil)))
|
(add-to-list 'tramp-default-proxies-alist '("localhost" "\\`root\\'" nil)))
|
||||||
|
|
||||||
|
;; Configure undo-tree.
|
||||||
|
(after! undo-tree
|
||||||
|
;; Doom just gives up on the diff visualizer, because it is impossible to work
|
||||||
|
;; around undo-tree's window management opinions in a consistent way. For now,
|
||||||
|
;; hack it to work in some sensible way.
|
||||||
|
(defadvice! +undo-tree-visualizer-show-diff-a (fn &rest args)
|
||||||
|
"Display the undo-tree diff buffer underneath undo-tree's parent buffer."
|
||||||
|
:around #'undo-tree-visualizer-show-diff
|
||||||
|
(defadvice! +undo-tree-visualizer-diff-split-window-a (&rest _)
|
||||||
|
"Hack `split-window' to open the diff window where we want it."
|
||||||
|
:filter-args #'split-window
|
||||||
|
(list (get-buffer-window undo-tree-visualizer-parent-buffer) nil 'below))
|
||||||
|
(apply fn args)
|
||||||
|
(advice-remove 'split-window #'+undo-tree-visualizer-diff-split-window-a))
|
||||||
|
(setq
|
||||||
|
;; Don't keep persistent history - that's what git is for.
|
||||||
|
undo-tree-auto-save-history nil
|
||||||
|
;; This is nice, but this variables turns nil for some reason after leaving
|
||||||
|
;; undo-tree. A more consistent experience is to just toggle it with "d".
|
||||||
|
undo-tree-visualizer-diff nil))
|
||||||
|
|
||||||
;; The only thing I actually missed from helm.
|
;; The only thing I actually missed from helm.
|
||||||
(map! (:when (featurep! :completion vertico)
|
(map! (:when (featurep! :completion vertico)
|
||||||
:map vertico-map
|
:map vertico-map
|
||||||
|
Loading…
Reference in New Issue
Block a user