diff options
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ravi-init-vc.el | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/lisp/ravi-init-vc.el b/lisp/ravi-init-vc.el index badb6a4..c480f05 100644 --- a/lisp/ravi-init-vc.el +++ b/lisp/ravi-init-vc.el @@ -130,5 +130,44 @@ (add-hook 'ediff-after-setup-windows-hook 'my-ediff-after-setup 'append) (add-hook 'ediff-quit-hook 'my-ediff-quit))) +(use-package smerge-mode + :config + (defhydra unpackaged/smerge-hydra + (:color pink :hint nil :post (smerge-auto-leave)) + " +^Move^ ^Keep^ ^Diff^ ^Other^ +^^-----------^^-------------------^^---------------------^^------- +_n_ext _b_ase _<_: upper/base _C_ombine +_p_rev _u_pper _=_: upper/lower _r_esolve +^^ _l_ower _>_: base/lower _k_ill current +^^ _a_ll _R_efine +^^ _RET_: current _E_diff +" + ("n" smerge-next) + ("p" smerge-prev) + ("b" smerge-keep-base) + ("u" smerge-keep-upper) + ("l" smerge-keep-lower) + ("a" smerge-keep-all) + ("RET" smerge-keep-current) + ("\C-m" smerge-keep-current) + ("<" smerge-diff-base-upper) + ("=" smerge-diff-upper-lower) + (">" smerge-diff-base-lower) + ("R" smerge-refine) + ("E" smerge-ediff) + ("C" smerge-combine-with-next) + ("r" smerge-resolve) + ("k" smerge-kill-current) + ("ZZ" (lambda () + (interactive) + (save-buffer) + (bury-buffer)) + "Save and bury buffer" :color blue) + ("q" nil "cancel" :color blue)) + :hook (magit-diff-visit-file-hook . (lambda () + (when smerge-mode + (unpackaged/smerge-hydra/body))))) + (provide 'ravi-init-vc) ;;; ravi-init-vc.el ends here |
