mirror of
https://github.com/correl/doom-modeline.git
synced 2024-12-24 03:00:09 +00:00
Fix: update vcs.
This commit is contained in:
parent
c354cdde0c
commit
bd097590a2
1 changed files with 32 additions and 40 deletions
|
@ -613,48 +613,40 @@ directory, the file name, and its state (modified, read-only or non-existent)."
|
|||
;; vcs
|
||||
;;
|
||||
|
||||
(defvar-local doom-modeline--vcs nil)
|
||||
(defun doom-modeline--update-vcs ()
|
||||
"Update vsc status in mode-line."
|
||||
(setq doom-modeline--vcs
|
||||
(when (and vc-mode buffer-file-name)
|
||||
(let* ((backend (vc-backend buffer-file-name))
|
||||
(state (vc-state buffer-file-name backend)))
|
||||
(let ((face 'mode-line-inactive)
|
||||
(active (doom-modeline--active))
|
||||
(all-the-icons-default-adjust -0.1))
|
||||
(concat (if (display-graphic-p) " ")
|
||||
(cond ((memq state '(edited added))
|
||||
(if active (setq face 'doom-modeline-info))
|
||||
(doom-modeline-maybe-icon-octicon
|
||||
"git-compare"
|
||||
:face face
|
||||
:v-adjust -0.05))
|
||||
((eq state 'needs-merge)
|
||||
(if active (setq face 'doom-modeline-info))
|
||||
(doom-modeline-maybe-icon-octicon "git-merge" :face face))
|
||||
((eq state 'needs-update)
|
||||
(if active (setq face 'doom-modeline-warning))
|
||||
(doom-modeline-maybe-icon-octicon "arrow-down" :face face))
|
||||
((memq state '(removed conflict unregistered))
|
||||
(if active (setq face 'doom-modeline-urgent))
|
||||
(doom-modeline-maybe-icon-octicon "alert" :face face))
|
||||
(t
|
||||
(if active (setq face 'font-lock-doc-face))
|
||||
(doom-modeline-maybe-icon-octicon
|
||||
"git-branch"
|
||||
:face face
|
||||
:v-adjust -0.05)))
|
||||
" "
|
||||
(propertize (substring vc-mode (+ (if (eq backend 'Hg) 2 3) 2))
|
||||
'face (if active face))
|
||||
" "))))))
|
||||
(add-hook 'after-save-hook #'doom-modeline--update-vcs)
|
||||
(add-hook 'find-file-hook #'doom-modeline--update-vcs t)
|
||||
|
||||
(doom-modeline-def-segment vcs
|
||||
"Displays the current branch, colored based on its state."
|
||||
doom-modeline--vcs)
|
||||
(when (and vc-mode buffer-file-name)
|
||||
(let* ((backend (vc-backend buffer-file-name))
|
||||
(state (vc-state buffer-file-name backend)))
|
||||
(let ((face 'mode-line-inactive)
|
||||
(active (doom-modeline--active))
|
||||
(all-the-icons-default-adjust -0.1))
|
||||
(concat (if (display-graphic-p) " ")
|
||||
(cond ((memq state '(edited added))
|
||||
(if active (setq face 'doom-modeline-info))
|
||||
(doom-modeline-maybe-icon-octicon
|
||||
"git-compare"
|
||||
:face face
|
||||
:v-adjust -0.05))
|
||||
((eq state 'needs-merge)
|
||||
(if active (setq face 'doom-modeline-info))
|
||||
(doom-modeline-maybe-icon-octicon "git-merge" :face face))
|
||||
((eq state 'needs-update)
|
||||
(if active (setq face 'doom-modeline-warning))
|
||||
(doom-modeline-maybe-icon-octicon "arrow-down" :face face))
|
||||
((memq state '(removed conflict unregistered))
|
||||
(if active (setq face 'doom-modeline-urgent))
|
||||
(doom-modeline-maybe-icon-octicon "alert" :face face))
|
||||
(t
|
||||
(if active (setq face 'font-lock-doc-face))
|
||||
(doom-modeline-maybe-icon-octicon
|
||||
"git-branch"
|
||||
:face face
|
||||
:v-adjust -0.05)))
|
||||
" "
|
||||
(propertize (substring vc-mode (+ (if (eq backend 'Hg) 2 3) 2))
|
||||
'face (if active face))
|
||||
" ")))))
|
||||
|
||||
|
||||
;;
|
||||
|
|
Loading…
Reference in a new issue