This repository has been archived on 2024-03-28. You can view files and clone it, but cannot push or open issues or pull requests.
dotfiles/env/wm/extras/bar/modules/bspwm-bm.bash

68 lines
1.9 KiB
Bash
Raw Normal View History

2016-01-12 15:02:12 -06:00
#!/usr/bin/env bash
source "$DOTFILES_PATH/variables.bash"
2016-07-29 11:20:11 -05:00
source "$BAR_PATH/colors.bash"
2016-01-12 15:02:12 -06:00
PRIORITY=15000
2016-01-12 15:02:12 -06:00
PID_PREFIX="bspwm"
2016-01-12 15:02:12 -06:00
MATCH_PREFIX="W"
MATCH="$MATCH_PREFIX*"
2017-01-18 23:06:36 -06:00
DESKTOP_SPACE_BEFORE=""
DESKTOP_SPACE_AFTER=""
2016-11-12 14:18:20 -06:00
SWITCH_DESKTOP_COMMAND="switch_desktop"
2016-01-12 15:02:12 -06:00
ul="u"
if [ $BAR_UNDERLINE -eq 1 ]; then
:
else
ul="o"
fi
bar_module_bspwm() {
content="%{F$COLOR_FOREGROUND}"
2016-01-12 15:02:12 -06:00
line=$1
IFS=':'
set -- ${line#?}
while [ $# -gt 0 ] ; do
item=$1
name=${item#?}
cname="$name"
bname=" %{A:$SWITCH_DESKTOP_COMMAND $cname:}${cname}%{A} "
2016-01-12 15:02:12 -06:00
case $item in
2016-01-12 15:03:13 -06:00
O*) # focused occupied desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{B$COLOR_HIGHLIGHT}%{F$COLOR_BACKGROUND}%{U$COLOR_HIGHLIGHT}%{+${ul}}${bname}%{-${ul}}%{U-}%{F-}%{B-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
2016-01-12 15:03:13 -06:00
F*) # focused free desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{B$COLOR_DARK}%{F$COLOR_BACKGROUND}%{U$COLOR_HIGHLIGHT}%{+${ul}}${bname}%{-${ul}}%{U-}%{F-}%{B-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
U*) # urgent focused desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{B$COLOR_URGENT}%{F$COLOR_BACKGROUND}%{U$COLOR_HIGHLIGHT}%{+${ul}}${bname}%{-${ul}}%{U-}%{F-}%{B-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
o*) # occupied unfocused desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{F$COLOR_FOREGROUND}${bname}%{F-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
2016-01-12 15:03:13 -06:00
f*) # free desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{F$COLOR_DARK}${bname}%{F-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
2016-01-12 15:03:13 -06:00
u*) # urgent desktop
2017-01-18 23:06:36 -06:00
content="$DESKTOP_SPACE_BEFORE${content}%{B$COLOR_URGENT}%{F$COLOR_BACKGROUND}%{U$COLOR_HIGHLIGHT}%{+${ul}}${bname}%{-${ul}}%{U-}%{F-}%{B-}$DESKTOP_SPACE_AFTER"
2016-01-12 15:02:12 -06:00
;;
esac
shift
done
2016-01-12 15:03:13 -06:00
echo -e "$content"
2016-01-12 15:02:12 -06:00
}
export -f bar_module_bspwm
2016-07-27 08:57:56 -05:00
bar_module_bspwm_updater()
{
bspc subscribe all > "$BAR_FIFO"
}
export -f bar_module_bspwm_updater
register_bar_module "$PRIORITY" "$MATCH" "bar_module_bspwm" "bar_module_bspwm_updater"
2016-01-12 15:02:12 -06:00