add the panel
authorAmin Bandali <me@aminb.org>
Sat, 25 Oct 2014 14:09:58 +0000 (10:09 -0400)
committerAmin Bandali <me@aminb.org>
Sat, 25 Oct 2014 14:09:58 +0000 (10:09 -0400)
bspwm/.config/panel/panel [new file with mode: 0755]
bspwm/.config/panel/panel_bar [new file with mode: 0755]
bspwm/.config/panel/panel_colors [new file with mode: 0644]

diff --git a/bspwm/.config/panel/panel b/bspwm/.config/panel/panel
new file mode 100755 (executable)
index 0000000..2f78550
--- /dev/null
@@ -0,0 +1,30 @@
+#! /bin/sh
+
+if [ $(pgrep -cx panel) -gt 1 ] ; then
+       printf "%s\n" "The panel is already running." >&2
+       exit 1
+fi
+
+trap 'trap - TERM; kill 0' INT TERM QUIT EXIT
+
+[ -e "$PANEL_FIFO" ] && rm "$PANEL_FIFO"
+mkfifo "$PANEL_FIFO"
+
+bspc config top_padding $PANEL_HEIGHT
+bspc control --subscribe > "$PANEL_FIFO" &
+#xtitle -sf 'T%s' > "$PANEL_FIFO" &
+#clock -sf 'S%a %H:%M' > "$PANEL_FIFO" &
+
+pamixer --get-volume > /tmp/volinfo
+if $(pamixer --get-mute) ; then
+    echo ⮝ > /tmp/spkicon
+else
+    echo ⮟ > /tmp/spkicon
+fi
+conky > "$PANEL_FIFO" &
+
+. panel_colors
+
+cat "$PANEL_FIFO" | panel_bar | bar -g x$PANEL_HEIGHT -f "$PANEL_FONT_FAMILY1","$PANEL_FONT_FAMILY2" -F "$COLOR_FOREGROUND" -B "$COLOR_BACKGROUND" &
+
+wait
diff --git a/bspwm/.config/panel/panel_bar b/bspwm/.config/panel/panel_bar
new file mode 100755 (executable)
index 0000000..026ba78
--- /dev/null
@@ -0,0 +1,74 @@
+#! /bin/sh
+#
+# Example panel for LemonBoy's bar
+
+. panel_colors
+
+num_mon=$(bspc query -M | wc -l)
+
+while read -r line ; do
+       case $line in
+               S*)
+                       # clock output
+                       sys_infos="%{F$COLOR_STATUS_FG}%{B$COLOR_STATUS_BG} ${line#?} %{B-}%{F-}"
+                       ;;
+               T*)
+                       # xtitle output
+                       title="%{F$COLOR_TITLE_FG}%{B$COLOR_TITLE_BG} ${line#?} %{B-}%{F-}"
+                       ;;
+               W*)
+                       # bspwm internal state
+                       wm_infos=""
+                       IFS=':'
+                       set -- ${line#?}
+                       while [ $# -gt 0 ] ; do
+                               item=$1
+                               name=${item#?}
+                               case $item in
+                                       M*)
+                                               # active monitor
+                                               if [ $num_mon -gt 1 ] ; then
+                                                       wm_infos="$wm_infos %{F$COLOR_ACTIVE_MONITOR_FG}%{B$COLOR_ACTIVE_MONITOR_BG} ${name} %{B-}%{F-}  "
+                                               fi
+                                               ;;
+                                       m*)
+                                               # inactive monitor
+                                               if [ $num_mon -gt 1 ] ; then
+                                                       wm_infos="$wm_infos %{F$COLOR_INACTIVE_MONITOR_FG}%{B$COLOR_INACTIVE_MONITOR_BG} ${name} %{B-}%{F-}  "
+                                               fi
+                                               ;;
+                                       O*)
+                                               # focused occupied desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_FOCUSED_OCCUPIED_FG}%{B$COLOR_FOCUSED_OCCUPIED_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}"
+                                               ;;
+                                       F*)
+                                               # focused free desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_FOCUSED_FREE_FG}%{B$COLOR_FOCUSED_FREE_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}"
+                                               ;;
+                                       U*)
+                                               # focused urgent desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_FOCUSED_URGENT_FG}%{B$COLOR_FOCUSED_URGENT_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}"
+                                               ;;
+                                       o*)
+                                               # occupied desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_OCCUPIED_FG}%{B$COLOR_OCCUPIED_BG} ${name} %{B-}%{F-}"
+                                               ;;
+                                       f*)
+                                               # free desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_FREE_FG}%{B$COLOR_FREE_BG} ${name} %{B-}%{F-}"
+                                               ;;
+                                       u*)
+                                               # urgent desktop
+                                               wm_infos="${wm_infos}%{F$COLOR_URGENT_FG}%{B$COLOR_URGENT_BG} ${name} %{B-}%{F-}"
+                                               ;;
+                                       L*)
+                                               # layout
+                                               wm_infos="$wm_infos  %{F$COLOR_LAYOUT_FG}%{B$COLOR_LAYOUT_BG} ${name} %{B-}%{F-}"
+                                               ;;
+                               esac
+                               shift
+                       done
+                       ;;
+       esac
+       printf "%s\n" "%{l}${wm_infos}%{c}${title}%{r}${sys_infos}"
+done
diff --git a/bspwm/.config/panel/panel_colors b/bspwm/.config/panel/panel_colors
new file mode 100644 (file)
index 0000000..a6a9fa1
--- /dev/null
@@ -0,0 +1,28 @@
+COLOR_FOREGROUND='#FFfefdfb'
+COLOR_BACKGROUND='#FF2f2b30'
+COLOR_ACTIVE_MONITOR_FG='#FF2f2b30'
+COLOR_ACTIVE_MONITOR_BG='#FFcf0f38'
+COLOR_INACTIVE_MONITOR_FG='#FFfefdfb'
+COLOR_INACTIVE_MONITOR_BG='#FF2f2b30'
+COLOR_FOCUSED_OCCUPIED_FG='#FFfefdfb'
+COLOR_FOCUSED_OCCUPIED_BG='#FF7e7d82'
+COLOR_FOCUSED_OCCUPIED_UL='#FFbcbac2'
+COLOR_FOCUSED_FREE_FG='#FFfefdfb'
+COLOR_FOCUSED_FREE_BG='#FF65625e'
+COLOR_FOCUSED_FREE_UL='#FFa39e98'
+COLOR_FOCUSED_URGENT_FG='white'
+COLOR_FOCUSED_URGENT_BG='#FFF9A299'
+COLOR_FOCUSED_URGENT_UL='white'
+COLOR_OCCUPIED_FG='#FFfefdfb'
+COLOR_OCCUPIED_BG='#FF2f2b30'
+COLOR_FREE_FG='#FF6F7277'
+COLOR_FREE_BG='#FF2f2b30'
+COLOR_URGENT_FG='#FFF9A299'
+COLOR_URGENT_BG='#FF2f2b30'
+COLOR_LAYOUT_FG='#FFfefdfb'
+COLOR_LAYOUT_BG='#FF2f2b30'
+COLOR_TITLE_FG='#FFfefdfb'
+COLOR_TITLE_BG='#FF2f2b30'
+COLOR_STATUS_FG='#FFfefdfb'
+COLOR_STATUS_BG='#FF2f2b30'
+COLOR_STATUS_IC='#FFcf0f38'