ui/doom-modeline: minor refactoring
This commit is contained in:
parent
85e5ac4514
commit
7553f83b04
1 changed files with 10 additions and 13 deletions
|
@ -177,9 +177,8 @@ active."
|
||||||
(defsubst active ()
|
(defsubst active ()
|
||||||
(eq (selected-window) +doom-modeline-current-window))
|
(eq (selected-window) +doom-modeline-current-window))
|
||||||
|
|
||||||
;; Inspired from `powerline's `pl/make-xpm'.
|
|
||||||
(defun +doom-modeline--make-xpm (face width height)
|
(defun +doom-modeline--make-xpm (face width height)
|
||||||
"Create an XPM bitmap."
|
"Create an XPM bitmap. Inspired by `powerline''s `pl/make-xpm'."
|
||||||
(propertize
|
(propertize
|
||||||
" " 'display
|
" " 'display
|
||||||
(let ((data (make-list height (make-list width 1)))
|
(let ((data (make-list height (make-list width 1)))
|
||||||
|
@ -211,12 +210,12 @@ active."
|
||||||
(buffer-file-truename (or buffer-file-truename "")))
|
(buffer-file-truename (or buffer-file-truename "")))
|
||||||
(propertize
|
(propertize
|
||||||
(pcase +doom-modeline-buffer-file-name-style
|
(pcase +doom-modeline-buffer-file-name-style
|
||||||
('truncate-upto-project (+doom-modeline--buffer-file-name 'shrink))
|
(`truncate-upto-project (+doom-modeline--buffer-file-name 'shrink))
|
||||||
('truncate-upto-root (+doom-modeline--buffer-file-name-truncate))
|
(`truncate-upto-root (+doom-modeline--buffer-file-name-truncate))
|
||||||
('truncate-all (+doom-modeline--buffer-file-name-truncate t))
|
(`truncate-all (+doom-modeline--buffer-file-name-truncate t))
|
||||||
('relative-to-project (+doom-modeline--buffer-file-name-relative))
|
(`relative-to-project (+doom-modeline--buffer-file-name-relative))
|
||||||
('relative-from-project (+doom-modeline--buffer-file-name-relative 'include-project))
|
(`relative-from-project (+doom-modeline--buffer-file-name-relative 'include-project))
|
||||||
('file-name (propertize (file-name-nondirectory buffer-file-name)
|
(`file-name (propertize (file-name-nondirectory buffer-file-name)
|
||||||
'face
|
'face
|
||||||
(let ((face (or (and (buffer-modified-p)
|
(let ((face (or (and (buffer-modified-p)
|
||||||
'doom-modeline-buffer-modified)
|
'doom-modeline-buffer-modified)
|
||||||
|
@ -695,7 +694,7 @@ Returns \"\" to not break --no-window-system."
|
||||||
;; Bootstrap
|
;; Bootstrap
|
||||||
;;
|
;;
|
||||||
|
|
||||||
(doom-set-modeline 'main t)
|
(doom-set-modeline 'main t) ; set default modeline
|
||||||
|
|
||||||
(add-hook 'doom-init-theme-hook #'+doom-modeline|init)
|
(add-hook 'doom-init-theme-hook #'+doom-modeline|init)
|
||||||
(add-hook 'doom-scratch-buffer-hook #'+doom-modeline|set-special-modeline)
|
(add-hook 'doom-scratch-buffer-hook #'+doom-modeline|set-special-modeline)
|
||||||
|
@ -704,15 +703,13 @@ Returns \"\" to not break --no-window-system."
|
||||||
(add-hook 'image-mode-hook #'+doom-modeline|set-media-modeline)
|
(add-hook 'image-mode-hook #'+doom-modeline|set-media-modeline)
|
||||||
(add-hook 'circe-mode-hook #'+doom-modeline|set-special-modeline)
|
(add-hook 'circe-mode-hook #'+doom-modeline|set-special-modeline)
|
||||||
|
|
||||||
;; TODO Refactor me
|
;; Ensure modeline is inactive when Emacs is unfocused (and active otherwise)
|
||||||
(defvar +doom-modeline-remap-face-cookie nil)
|
(defvar +doom-modeline-remap-face-cookie nil)
|
||||||
(defun +doom-modeline|focus ()
|
(defun +doom-modeline|focus ()
|
||||||
(require 'face-remap)
|
|
||||||
(when +doom-modeline-remap-face-cookie
|
(when +doom-modeline-remap-face-cookie
|
||||||
(face-remap-remove-relative +doom-modeline-remap-face-cookie)))
|
|
||||||
|
|
||||||
(defun +doom-modeline|unfocus ()
|
|
||||||
(require 'face-remap)
|
(require 'face-remap)
|
||||||
|
(face-remap-remove-relative +doom-modeline-remap-face-cookie)))
|
||||||
|
(defun +doom-modeline|unfocus ()
|
||||||
(setq +doom-modeline-remap-face-cookie (face-remap-add-relative 'mode-line 'mode-line-inactive)))
|
(setq +doom-modeline-remap-face-cookie (face-remap-add-relative 'mode-line 'mode-line-inactive)))
|
||||||
|
|
||||||
(add-hook 'focus-in-hook #'+doom-modeline|focus)
|
(add-hook 'focus-in-hook #'+doom-modeline|focus)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue