nibar
Simple Übersicht widget status bar with yabai support.
Originally forked from https://github.com/ajdnik/powerbar. I made it work with yabai and tweaked the aesthetics to match my preference.
Installation
Clone this repo to your Übersicht widgets directory.
# assuming your widgets are in the default Übersicht location
$ git clone https://github.com/kkga/nibar $HOME/Library/Application\ Support/Übersicht/widgets/nibar
Dependencies
- SF Symbols (optional) — used for symbols in the statusbar widget
Usage
Refreshing yabai workspaces widget
The workspaces widget is not refreshing automatically (to preserve battery). Add these lines at the end of your yabairc
to utilize yabai's signals for auto-updating the widget whenever a workspace is changed:
yabai -m signal --add event=space_changed \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-spaces-jsx\"'"
# if using multple displays, add an additional rule for "display_changed" event
yabai -m signal --add event=display_changed \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-spaces-jsx\"'"
# add these rules to auto-update the "windows" widget
yabai -m signal --add event=window_focused \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-windows-jsx\"'"
yabai -m signal --add event=window_destroyed \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-windows-jsx\"'"
yabai -m signal --add event=window_created \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-windows-jsx\"'"
yabai -m signal --add event=space_changed \
action="osascript -e 'tell application id \"tracesOf.Uebersicht\" to refresh widget id \"nibar-windows-jsx\"'"