65 lines
968 B
Bash
Executable file
65 lines
968 B
Bash
Executable file
#!/bin/sh
|
||
|
||
## give windows the stardom ##
|
||
|
||
. $HOME/.config/wms/wms_var
|
||
|
||
FLAG=$1
|
||
FW=$(pfw)
|
||
|
||
usage() {
|
||
echo "usage:
|
||
wms_mainrole.sh [ -n, -p, -l, wid ]
|
||
-n) next in order stack
|
||
-p) prev in order stack
|
||
-t) focus the top window in the server’s window stack
|
||
wid) window id"
|
||
}
|
||
|
||
# docus next window in server's window stack order
|
||
next() {
|
||
wid=$(lsw | grep -v $FW | sed '1 p;d')
|
||
chwso -r $wid
|
||
}
|
||
|
||
# focus previous window in in server's window stack order
|
||
prev() {
|
||
wid=$(lsw | grep -v $FW | sed '$ p;d')
|
||
chwso -r $wid
|
||
}
|
||
|
||
# focus the top window in the server's window stack order
|
||
top() {
|
||
wid=$(lsw | sed '$ p;d')
|
||
}
|
||
|
||
# focus on wid
|
||
on_wid() {
|
||
wattr $FLAG && wid=$FLAG
|
||
chwso -r $wid
|
||
}
|
||
|
||
case $FLAG in
|
||
-n)
|
||
next
|
||
;;
|
||
-p)
|
||
prev
|
||
;;
|
||
-t)
|
||
top
|
||
;;
|
||
0x*)
|
||
on_wid
|
||
;;
|
||
*)
|
||
usage
|
||
;;
|
||
esac
|
||
|
||
# transfer focus
|
||
wtf $wid
|
||
|
||
# set borders
|
||
chwb -s $BW -c $IC $(lsw | grep -v $(pfw)) # unfocused color
|
||
chwb -s $BW -c $AC $(pfw) # focused color
|