qmk-dactyl-manuform-a/layouts/community/ergodox/algernon/tools/hid-commands

114 lines
2.4 KiB
Bash
Executable File

#!/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