Buttonize major mode in modeline

This commit is contained in:
Case Duckworth 2021-08-28 00:23:56 -05:00
parent 61777b71bd
commit 47df2733de
2 changed files with 30 additions and 2 deletions

View File

@ -1700,7 +1700,7 @@ successive invocations."
acdw-modeline/winum
acdw-modeline/minions
acdw-modeline/narrowed
simple-modeline-segment-major-mode)))
acdw-modeline/major-mode)))
;; I've put in a pull request to add the (- 0 right-margin) bit here.
(advice-add 'simple-modeline--format :override

View File

@ -40,7 +40,35 @@
(defun acdw-modeline/god-mode-indicator ()
"Display an indicator if `god-local-mode' is active."
(when (bound-and-true-p god-local-mode)
" God"))
" Ω"))
(defun acdw-modeline/major-mode ()
"Displays the current major mode in the mode-line."
(propertize
(concat " "
(or (and (boundp 'delighted-modes)
(cadr (assq major-mode delighted-modes)))
(format-mode-line mode-name)))
'face 'bold
'keymap mode-line-major-mode-keymap
'mouse-face 'mode-line-highlight))
(defun acdw-modeline/minions () ; by me
"Display a button for `minions-minor-modes-menu'."
(concat
" "
(propertize
"&"
'help-echo (format
"Minor modes menu\nmouse-1: show menu.")
'local-map (purecopy (simple-modeline-make-mouse-map
'mouse-1
(lambda (event)
(interactive "e")
(with-selected-window (posn-window
(event-start event))
(minions-minor-modes-menu)))))
'mouse-face 'mode-line-highlight)))
(defun acdw-modeline/modified () ; modified from `simple-modeline'
"Displays a color-coded buffer modification/read-only