minibuffer-statusbar
displays a statusbar in the minibuffer when the
minibuffer window is not already used for other things.
It is based off of the ~minibuffer-line~ package. but instead of using the
format-mode-line
function to format the statusbar string
minibuffer-statusbar
uses a custom format since the mode line format
specifiers don’t make sense in a statusbar. Furthermore while format-mode-line
uses a global timer to refresh the string at some interval
minibuffer-statusbar
allows setting per function timer intervals since the
time only needs to be updated every 60 seconds while a cpu utilization monitor
should probably be updated every few seconds. This saves on the resources needed
to run the statusbar.
I was also inspired to use all-the-icons.el by this reddit post.
(require 'minibuffer-statusbar)
(minibuffer-statusbar-mode t)
You can customize the statusbar by setting minibuffer-statusbar-line
Its default value is
'( " "
(minibuffer-statusbar--disk-free . 30) " "
(minibuffer-statusbar--battery . 30)
" "
(minibuffer-statusbar--memory . 5) " "
(minibuffer-statusbar--cpu-freq . 3) " "
(minibuffer-statusbar--cpu-temp . 10)
" "
(minibuffer-statusbar--time . 60) " "
(minibuffer-statusbar--date . 3600))
Currently this works well for my specific machine but is certainly not portable. I may make it more portable in the future but the functions are all relatively easy to customize yourself.
- minibuffer-line
- statusbar.el which uses posframe to overlay the statusbar in the bottom right.
- common-header-mode-line.el
- emacs-mini-modeline
- awesome-tray
- feebleline
- symon