Compare commits

...

4 Commits

3 changed files with 41 additions and 6 deletions

View File

@@ -49,7 +49,7 @@
^Smerge Mode^
^^--------------------------------------------------------------
_n_: next conflict _u_: keep upper _s_: swap
_p_: revious conflict _l_: keep lower _h_: highlight
_p_: prev conflict _l_: keep lower _h_: highlight
_e_: Ediff _b_: keep base _r_: resolve
_q_: quit _RET_: keep hunk@point _R_: revert

View File

@@ -1,6 +1,29 @@
;; *** Magit
;; TODO: add blamer.el (https://github.com/Artawower/blamer.el), currently fails to install (2023/05/08)
(when (fboundp 'defhydra)
(defhydra hydra-blame (:timeout 30.0 :exit nil)
"
^Blame Mode^
^^--------------------------------------------------------------
_n_: next chunk _M-w_: copy commit hash hash
_p_: prev chunk _c_: cycle style
_N_: next chunk same commit _RET_: show current commit
_P_: prev chunk same commit _q_: quit blame mode
^^--------------------------------------------------------------
Reach this hydra with <C-x B>, magit-blame mode must be active
^^--------------------------------------------------------------
"
("n" magit-blame-next-chunk nil)
("p" magit-blame-previous-chunk nil)
("N" magit-blame-next-chunk-same-commit nil)
("P" magit-blame-previous-chunk-same-commit nil)
("M-w" magit-blame-copy-hash nil)
("RET" magit-show-commit nil)
("c" magit-blame-cycle-style nil)
("q" nil nil :color blue)))
;; Not much to say about Magit
(use-package magit
@@ -16,11 +39,12 @@
(("C-c g" . magit-file-dispatch))
:hook
;; automatically fire up smerge hydra when visiting a buffer
;; containing merge conflict[s]. Hydra see init-ediff.el
(magit-diff-visit-file . (lambda ()
(hydra-smerge/body)))
(magit-diff-visit-file . (lambda () (hydra-smerge/body)))
// automatically fire up blame hydra, see definition above ont top
(magit-blame-mode . (lambda () (hydra-blame/body)))
:config
(magit-todos-mode)
@@ -131,7 +155,17 @@
(magit-restore-window-configuration)
(mapc #'kill-buffer buffers)))
(define-key magit-status-mode-map (kbd "q") #'tvd-kill-magit-buffers))
(define-key magit-status-mode-map (kbd "q") #'tvd-kill-magit-buffers)
(defun tvd-blame-mode()
(interactive)
(if (not magit-blame-mode)
(progn
(magit-blame)
(hydra-blame/body))))
(global-set-key (kbd "C-x B") 'tvd-blame-mode)
)
(use-package blamer

View File

@@ -198,6 +198,7 @@ targets."
:bind (;; C-c bindings in `mode-specific-map'
("C-x b" . consult-buffer)
("C-c C-j" . consult-imenu)
("s-s" . consult-line)
("C-x C-r" . consult-recent-file)) ;; replaces recentf
;; Enable automatic preview at point in the *Completions* buffer. This is