1 ;;; bandali-magit.el --- bandali's magit configuration -*- lexical-binding: t; -*-
3 ;; Copyright (C) 2018-2020 Amin Bandali
5 ;; Author: Amin Bandali <bandali@gnu.org>
8 ;; This program is free software; you can redistribute it and/or modify
9 ;; it under the terms of the GNU General Public License as published by
10 ;; the Free Software Foundation, either version 3 of the License, or
11 ;; (at your option) any later version.
13 ;; This program is distributed in the hope that it will be useful,
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ;; GNU General Public License for more details.
18 ;; You should have received a copy of the GNU General Public License
19 ;; along with this program. If not, see <https://www.gnu.org/licenses/>.
27 (csetq transient-history-file
(b/var
"transient/history.el")
28 transient-levels-file
(b/etc
"transient/levels.el")
29 transient-values-file
(b/etc
"transient/values.el"))
30 (with-eval-after-load 'magit
31 (declare-function magit-add-section-hook
"magit-section"
32 (hook function
&optional at append local
))
33 (magit-add-section-hook 'magit-status-sections-hook
37 ;; (magit-add-section-hook 'magit-status-sections-hook
38 ;; 'magit-insert-ignored-files
39 ;; 'magit-insert-untracked-files
41 (declare-function magit-display-buffer-fullframe-status-v1
42 "magit-mode" (buffer))
44 magit-diff-refine-hunk t
45 magit-repository-directories
'(("~/.emacs.d/" .
0)
47 ;; magit-completing-read-function 'magit-ido-completing-read
48 magit-display-buffer-function
49 #'magit-display-buffer-fullframe-status-v1
)
50 (nconc magit-section-initial-visibility-alist
51 '(([unpulled status
] . show
)
52 ([unpushed status
] . show
)))
53 (custom-set-faces '(magit-diff-file-heading ((t (:weight normal
)))))
55 (with-eval-after-load 'magit-extras
57 magit-pop-revision-stack-format
58 (pcase-let ((`(,pt
,_eob
,index-regexp
)
59 (default-value 'magit-pop-revision-stack-format
)))
60 `(,pt
"[%N: %h]: %ci\n %s
61 https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=%H"
63 ;; global key bindings
64 (global-set-key (kbd "C-x g") #'magit-status
)
65 (global-set-key (kbd "C-c g b") #'magit-blame-addition
)
66 (global-set-key (kbd "C-c g l") #'magit-log-buffer-file
)
67 (global-set-key (kbd "C-c g y") #'magit-pop-revision-stack
)
69 (provide 'bandali-magit
)
70 ;;; bandali-magit.el ends here