Skip to content

Commit

Permalink
refactor: move smerge to me-builtin
Browse files Browse the repository at this point in the history
  • Loading branch information
abougouffa committed Jul 24, 2023
1 parent 5d8ed44 commit c6dca7e
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 48 deletions.
49 changes: 49 additions & 0 deletions core/me-builtin.el
Original file line number Diff line number Diff line change
Expand Up @@ -804,6 +804,55 @@
(when (window-configuration-p +ediff--saved-window-config)
(set-window-configuration +ediff--saved-window-config)))))

(use-package smerge-mode
:straight (:type built-in)
:commands +smerge-hydra/body
:init
(+map! "gm" '(+smerge-hydra/body :wk "sMerge"))
:config
(with-eval-after-load 'hydra
(defhydra +smerge-hydra (:hint nil
:pre (if (not smerge-mode) (smerge-mode 1))
;; Disable `smerge-mode' when quitting hydra if
;; no merge conflicts remain.
:post (smerge-auto-leave))
"
[smerge]
Movement Keep Diff Other │
╭─────────────────────────────────────────────────────────╯
│ ^_g_^ [_b_] base [_<_] upper/base [_C_] Combine
│ ^_C-k_^ [_u_] upper [_=_] upper/lower [_r_] resolve
│ ^_k_ ↑^ [_l_] lower [_>_] base/lower [_R_] remove
│ ^_j_ ↓^ [_a_] all [_H_] hightlight [_n_] next in project
│ ^_C-j_^ [_RET_] current [_E_] ediff
│ ^_G_^ [_q_] quit
╰─────────────────────────────────────────────────────╯
"
("g" (progn (goto-char (point-min)) (smerge-next)))
("G" (progn (goto-char (point-max)) (smerge-prev)))
("C-j" smerge-next)
("C-k" smerge-prev)
("j" next-line)
("k" previous-line)
("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)
("H" smerge-refine)
("E" smerge-ediff)
("C" smerge-combine-with-next)
("r" smerge-resolve)
("R" smerge-kill-current)
;; Often after calling `smerge-vc-next-conflict', the cursor will land at
;; the bottom of the window
("n" (progn (smerge-vc-next-conflict) (recenter-top-bottom (/ (window-height) 8))))
("q" nil :color blue))))

(use-package octave
:straight (:type built-in)
:mode ("\\.m\\'" . octave-mode)
Expand Down
48 changes: 0 additions & 48 deletions modules/me-vc.el
Original file line number Diff line number Diff line change
Expand Up @@ -129,54 +129,6 @@
:init
:mode ("/.dockerignore\\'" . gitignore-mode))

(use-package smerge-mode
:straight t
:commands +smerge-hydra/body
:init
(+map! "gm" '(+smerge-hydra/body :wk "sMerge"))
:config
(defhydra +smerge-hydra (:hint nil
:pre (if (not smerge-mode) (smerge-mode 1))
;; Disable `smerge-mode' when quitting hydra if
;; no merge conflicts remain.
:post (smerge-auto-leave))
"
[smerge]
Movement Keep Diff Other │
╭─────────────────────────────────────────────────────────╯
│ ^_g_^ [_b_] base [_<_] upper/base [_C_] Combine
│ ^_C-k_^ [_u_] upper [_=_] upper/lower [_r_] resolve
│ ^_k_ ↑^ [_l_] lower [_>_] base/lower [_R_] remove
│ ^_j_ ↓^ [_a_] all [_H_] hightlight [_n_] next in project
│ ^_C-j_^ [_RET_] current [_E_] ediff
│ ^_G_^ [_q_] quit
╰─────────────────────────────────────────────────────╯
"
("g" (progn (goto-char (point-min)) (smerge-next)))
("G" (progn (goto-char (point-max)) (smerge-prev)))
("C-j" smerge-next)
("C-k" smerge-prev)
("j" next-line)
("k" previous-line)
("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)
("H" smerge-refine)
("E" smerge-ediff)
("C" smerge-combine-with-next)
("r" smerge-resolve)
("R" smerge-kill-current)
;; Often after calling `smerge-vc-next-conflict', the cursor will land at
;; the bottom of the window
("n" (progn (smerge-vc-next-conflict) (recenter-top-bottom (/ (window-height) 8))))
("q" nil :color blue)))

(use-package repo
:straight t
:preface
Expand Down

0 comments on commit c6dca7e

Please sign in to comment.