diff options
author | bd <bdunahu@operationnull.com> | 2024-12-19 01:36:13 -0500 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2024-12-19 01:36:13 -0500 |
commit | 6ace355721c76ca3dc91819079809178a5b75822 (patch) | |
tree | 036054eca1a170f1adeab4f978bebeaa2f60e1bb /.config/emacs/modules/bd--modeline.el | |
parent | ef5051ce34fd2639a85dd1532651109adcd00476 (diff) |
Color active modeline more, add more modeline utilities
Diffstat (limited to '.config/emacs/modules/bd--modeline.el')
-rw-r--r-- | .config/emacs/modules/bd--modeline.el | 70 |
1 files changed, 48 insertions, 22 deletions
diff --git a/.config/emacs/modules/bd--modeline.el b/.config/emacs/modules/bd--modeline.el index 35c486e..4101feb 100644 --- a/.config/emacs/modules/bd--modeline.el +++ b/.config/emacs/modules/bd--modeline.el @@ -19,46 +19,72 @@ mode-line-modes)) (global-set-key (kbd "C-c ,") 'minor-mode-blackout-mode) -(defface bd/bold-shadow - `((t :inherit shadow - :bold t)) - "Shadow with bold.") - (defvar-local bd/buffer-identification-mode-line - '(:eval (format "%s" (propertize (buffer-name) 'face 'bd/bold-shadow))) + '(:eval (format "%s" (propertize (buffer-name) 'face + (if (mode-line-window-selected-p) + 'font-lock-keyword-face + 'mode-line-inactive)))) "Formats the modeline-buffer-name.") -;;;; pos -(column-number-mode) -(setopt mode-line-position-column-line-format '(" %l:%c ")) +(defvar-local bd/project-mode-line + '(:eval + (when-let ((project (project-current)) + ;; TODO remove; see what happens + (exwm? (not (equal major-mode 'exwm-mode)))) + (let ((last-coding-system-used last-coding-system-used)) + (format "%s " + (propertize + (project-name project) + 'face 'shadow + 'mouse-face 'mode-line-highlight + 'help-echo "mouse-1: Project menu" + 'local-map project-mode-line-map)))))) + +(column-number-mode 1) +(setopt mode-line-position-column-line-format '("%l:%c") + mode-line-percent-position nil) (defvar-local bd/line-position '(:eval (when (mode-line-window-selected-p) - ;; remove the percentage - (cdr mode-line-position)))) + mode-line-position))) -;;;; git (defvar-local bd/vc-mode-line '(:eval (when vc-mode - (format "-- %s" + (format "%s " (propertize (cadr (split-string vc-mode "[:-]")) 'face 'shadow)))) "Formats the checked out git repository.") +(defvar-local bd/modeline-window-dedicated + '(:eval + (when (window-dedicated-p) + (format "%s -- " + (propertize "LK" 'face 'font-lock-comment-face)))) + "Indicator for dedicated window.") (dolist (construct '(bd/buffer-identification-mode-line - bd/vc-mode-line)) + bd/project-mode-line + bd/vc-mode-line + bd/line-position + bd/modeline-window-dedicated)) (put construct 'risky-local-variable t)) +(setopt mode-line-right-align-edge 'right-margin) (setq-default mode-line-format - (list - mode-line-front-space - bd/buffer-identification-mode-line - " -- " - mode-line-modes - bd/vc-mode-line - " -- " - bd/line-position)) + '("%e" + mode-line-front-space + bd/project-mode-line + bd/buffer-identification-mode-line + " -- " + mode-line-modes + "-- " + bd/line-position + mode-line-format-right-align + bd/modeline-window-dedicated + bd/vc-mode-line + mode-line-mule-info + mode-line-modified + )) (provide 'bd--modeline) |