diff options
| author | Kevin Boulain <kevinboulain@gmail.com> | 2018-10-06 17:01:58 +0200 |
|---|---|---|
| committer | Kevin Boulain <kevinboulain@gmail.com> | 2018-10-06 18:40:02 +0200 |
| commit | 948bf699b23d3cb756a17f651a90b240facc166c (patch) | |
| tree | 319bc54ac267c60bf75fa973688eec99f3e22c43 /feebleline.el | |
| parent | 3eebf83bf868f8ce67cfdc779d08e28a6dcb8126 (diff) | |
magit-get-current-branch may not be bound or return anything
It's probably better to try to import the required packages than to
check if it is bound because the user may not load magit itself.
Also fallback on rev-parse to display something in case the branch
isn't available (for example, detached HEAD).
Diffstat (limited to 'feebleline.el')
| -rw-r--r-- | feebleline.el | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/feebleline.el b/feebleline.el index 4e2a640..e0d6f16 100644 --- a/feebleline.el +++ b/feebleline.el @@ -78,7 +78,7 @@ (defvar feebleline--msg-timer) (defvar feebleline/mode-line-format-previous) -(defface feebleline-git-branch-face '((t :foreground "#444444" :italic t)) +(defface feebleline-git-face '((t :foreground "#444444" :italic t)) "Example face for git branch." :group 'feebleline) @@ -118,6 +118,13 @@ (file-name-nondirectory (buffer-file-name)) (buffer-name))) +(defun feebleline-git-object () + "Current branch, when magit is available." + (when (and (require 'magit-git nil t) + (require 'magit-process nil t)) + (or (magit-get-current-branch) ; may return nil when not on a branch + (magit-rev-parse "--short" "HEAD")))) + (defun feebleline-file-modified-star () "Display star if buffer file was modified." (when (and (buffer-file-name) (buffer-modified-p)) "*")) @@ -139,7 +146,7 @@ (feebleline-file-directory ((face . feebleline-dir-face) (post . ""))) (feebleline-file-or-buffer-name ((face . font-lock-keyword-face) (post . ""))) (feebleline-file-modified-star ((face . font-lock-warning-face) (post . ""))) - (magit-get-current-branch ((face . feebleline-git-branch-face) (pre . " - "))) + (feebleline-git-object ((face . feebleline-git-face) (pre . " - "))) ;; (feebleline-project-name ((right-align . t))) )) |
