bspwm/examples/panel/panel_bar
2013-09-18 22:35:14 +02:00

59 lines
1.8 KiB
Bash
Executable file

#! /bin/sh
#
# Example panel for LemonBoy's bar-aint-recursive
while read -r line ; do
case $line in
S*)
# clock output
sys_infos="\\br\\f6${line#?}"
;;
T*)
# xtitle output
title="\\br\\f7${line#?}"
;;
W*)
# bspwm internal state
wm_infos=""
IFS=':'
set -- ${line#?}
while [ $# -gt 0 ] ; do
item=$1
name=${item#?}
case $item in
O*)
# focused occupied desktop
wm_infos="$wm_infos \\u3\\br\\fr${name}\\ur"
;;
F*)
# focused free desktop
wm_infos="$wm_infos \\u4\\br\\f7${name}\\ur"
;;
U*)
# focused urgent desktop
wm_infos="$wm_infos \\u9\\br\\fr${name}\\ur"
;;
o*)
# occupied desktop
wm_infos="$wm_infos \\br\\fr${name}"
;;
f*)
# free desktop
wm_infos="$wm_infos \\br\\f7${name}"
;;
u*)
# urgent desktop
wm_infos="$wm_infos \\b1\\fr${name}"
;;
L*)
# layout
layout=$(printf "%s" "${name}" | sed 's/\(.\).*/\U\1/')
wm_infos="$wm_infos \\br\\f6$layout"
;;
esac
shift
done
;;
esac
printf "%s\n" "\\l $wm_infos \\c $title \\r $sys_infos "
done