mirror of
https://codeberg.org/scip/dot-emacs.git
synced 2026-10-08 00:54:18 +02:00
45 lines
1.4 KiB
EmacsLisp
45 lines
1.4 KiB
EmacsLisp
|
|
;; -*- lexical-binding: nil; -*-
|
||
|
|
|
||
|
|
;; *** Smerge Config
|
||
|
|
|
||
|
|
;; smerge-mode is being issued during editing of conflicts from magit,
|
||
|
|
;; however, I hate its default prefix, but don't have any practical
|
||
|
|
;; prefixes left AND am using it far too rare to deserve its own
|
||
|
|
;; prefix. So just a hydra will do.
|
||
|
|
|
||
|
|
(when (fboundp 'defhydra)
|
||
|
|
(defhydra hydra-smerge (:exit nil)
|
||
|
|
"
|
||
|
|
^Smerge Mode^
|
||
|
|
^^--------------------------------------------------------------
|
||
|
|
_n_: next conflict _u_: keep upper _s_: swap
|
||
|
|
_p_: prev conflict _l_: keep lower _h_: highlight
|
||
|
|
_e_: Ediff _b_: keep base _r_: resolve
|
||
|
|
_q_: quit _RET_: keep hunk@point _R_: revert
|
||
|
|
|
||
|
|
^^--------------------------------------------------------------
|
||
|
|
Reach this hydra with <C-x m>
|
||
|
|
^^--------------------------------------------------------------
|
||
|
|
|
||
|
|
"
|
||
|
|
|
||
|
|
("n" smerge-next nil)
|
||
|
|
("p" smerge-prev nil)
|
||
|
|
("u" smerge-keep-upper nil)
|
||
|
|
("l" smerge-keep-lower nil)
|
||
|
|
("b" smerge-keep-base nil)
|
||
|
|
("RET" smerge-keep-current nil)
|
||
|
|
("h" smerge-refine nil)
|
||
|
|
("s" smerge-swap nil)
|
||
|
|
("r" smerge-resolve nil)
|
||
|
|
("R" undo-tree-undo nil)
|
||
|
|
("e" smerge-ediff nil :color blue)
|
||
|
|
("q" nil nil :color blue))
|
||
|
|
|
||
|
|
(global-set-key (kbd "C-x m") 'hydra-smerge/body)
|
||
|
|
(defalias 'merge 'hydra-smerge/body))
|
||
|
|
|
||
|
|
|
||
|
|
(provide 'init-smerge)
|
||
|
|
;;; init-smerge.el ends here
|