This is a collection of dotfiles and scripts for my bspwm setup
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

36 lines
901 B

#!/bin/sh
# Suppress output
NULL=""
# Scroll up, scroll down
if [ "$WM" = "bspwm" ];then
SWITCH="bspc desktop -f"
U="A4:$SWITCH prev.local:"
D="A5:$SWITCH next.local:"
elif [ "$WM" = "i3" ];then
SWITCH="i3-msg workspace"
NULL="> /dev/null 2>&1"
U="A4:$SWITCH prev_on_output $NULL:"
D="A5:$SWITCH next_on_output $NULL:"
fi
CURRENT=$(xprop -root _NET_CURRENT_DESKTOP | awk '{print $3 + 1}')
WORKSPACES="$(xprop -root '\n$0\n$1\n$2\n$3\n$4\n$5\n$6\n$7\n$8\n$9' _NET_DESKTOP_NAMES \
| awk -v c="$CURRENT" -v s="$SWITCH" -v n="$NULL" \
-v c7="$COLOR7" -v c15="$COLOR15" -v b="$BGCOLOR" -v bi="$BGCOLOR_INACTIVE" '
/".*"/ {
name = substr($0, 2, length($0) - 2);
if (c == FNR - 1)
printf "%{B%s} %s %{B%s}",
b, name, bi
else
printf "%{F%s}%{A:%s \"%s\" %s:} %s %{A}%{F%s}",
c7, s, name, n, name, c15
}
')"
printf "%s\n" "workspaces%{$U}%{$D}$WORKSPACES%{A}%{A}"