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.
114 lines
2.4 KiB
114 lines
2.4 KiB
#!/bin/bash
|
|
set -e
|
|
|
|
LAST_APPSEL_START=0
|
|
|
|
cmd_wm () {
|
|
WIN="$(xdotool getactivewindow)"
|
|
wmctrl -i -r ${WIN} -b remove,maximized_vert,maximized_horz
|
|
xdotool windowsize ${WIN} 100% 100%
|
|
wmctrl -i -r ${WIN} -b add,maximized_vert,maximized_horz
|
|
}
|
|
|
|
cmd_appsel_helper () {
|
|
rofi -show window
|
|
}
|
|
|
|
_cmd_appsel () {
|
|
wmctrl -x -a $1 || true
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_music () {
|
|
wmctrl -x -a rhythmbox || wmctrl -x -a spotify || \
|
|
wmctrl -x -a banshee || wmctrl -x -a kodi || \
|
|
wmctrl -x -a plex || true
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_slack () {
|
|
wmctrl -x -a slack || wmctrl -x -a Mstdn || true
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_emacs () {
|
|
_cmd_appsel emacs
|
|
}
|
|
|
|
cmd_appsel_term () {
|
|
_cmd_appsel gnome-terminal
|
|
}
|
|
|
|
cmd_appsel_chrome () {
|
|
wmctrl -x -a chrom || wmctrl -x -a Chrome || true
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_start () {
|
|
if [ ! -z "${DISABLE_APPSEL_START}" ]; then
|
|
return
|
|
fi
|
|
|
|
APPSEL_START=$(date +%s)
|
|
if [ $APPSEL_START -lt $(expr $LAST_APPSEL_START + 10) ]; then
|
|
return
|
|
fi
|
|
LAST_APPSEL_START=$APPSEL_START
|
|
notify-send -t 1000 "Please select an application!" -c device -u low \
|
|
-i /usr/share/icons/Adwaita/24x24/devices/video-display.png
|
|
}
|
|
|
|
cmd_appsel_social () {
|
|
# Save the current window
|
|
a=$(xdotool getactivewindow)
|
|
# Raise & Focus Mstdn & Tweetdeck
|
|
wmctrl -x -a trunk.mad-scientist.club.Google-chrome || true; wmctrl -x -a tweetdeck || true
|
|
# Focus the previously active window
|
|
xdotool windowfocus $a || true; xdotool windowactivate $a || true
|
|
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_social2 () {
|
|
# Save the current window
|
|
a=$(xdotool getactivewindow)
|
|
# Raise & Focus Viber & Signal
|
|
wmctrl -x -a Viber || true; wmctrl -a Signal || true
|
|
# Focus the previously active window
|
|
xdotool windowfocus $a || true; xdotool windowactivate $a || true
|
|
|
|
xdotool key Escape
|
|
}
|
|
|
|
cmd_appsel_pwmgr () {
|
|
_cmd_appsel keepass
|
|
}
|
|
|
|
cmd_reflash () {
|
|
teensy_loader_cli -v -w ~/src/ext/qmk_firmware/algernon.hex --mcu atmega32u4 || true
|
|
}
|
|
|
|
cmd_help () {
|
|
cat <<EOF
|
|
Use the source, Luke!
|
|
EOF
|
|
}
|
|
|
|
while read l; do
|
|
case "$l" in
|
|
"CMD:"*)
|
|
;;
|
|
*)
|
|
continue
|
|
;;
|
|
esac
|
|
|
|
cmd="$(echo $l | cut -d: -f2-)"
|
|
|
|
echo "Got command: ${cmd}"
|
|
|
|
if type cmd_${cmd} >/dev/null 2>&1; then
|
|
cmd_${cmd}
|
|
fi
|
|
done
|