.circleci
.docker
bin
altaria
bg-apps
butterfree
umbreon
backlight
get-colorscheme-hex
i3-logout
i3-utils
i3lock
kitty-alternate-theme
media
play-sound
pulseaudio
scwrypts
set-background
update-all-servers
vim
xorg-activate-default
colorschemes
config
resume
setup
vim
zsh
.gitattributes
.gitignore
.gitmodules
README.md
34 lines
804 B
Bash
Executable File
34 lines
804 B
Bash
Executable File
#!/bin/zsh
|
|
#####################################################################
|
|
|
|
USAGE="$0 (next|prev|playpause)"
|
|
|
|
function ERROR() {
|
|
local ERROR_CODE=$1
|
|
local MESSAGE="$2"
|
|
|
|
echo -e "$MESSAGE\n\nUSAGE : $USAGE\n" >&2
|
|
notify-send "YouTube media controller" "$MESSAGE"
|
|
|
|
exit $ERROR_CODE
|
|
}
|
|
|
|
#####################################################################
|
|
|
|
COMMAND="$1"
|
|
case $COMMAND in
|
|
next ) COMMAND_KEY='j';;
|
|
prev ) COMMAND_KEY='k';;
|
|
play ) COMMAND_KEY='space';;
|
|
* ) ERROR 1 "unsupported command '$COMMAND'" ;;
|
|
esac
|
|
|
|
xdotool search --name 'YouTube Music' windowactivate \
|
|
|| ERROR 2 "YouTube Music is not running"
|
|
|
|
|
|
# Chrome / YouTube only accepts keypresses when window is active
|
|
xdotool search --name 'YouTube Music' windowactivate
|
|
sleep 0.3
|
|
xdotool key --clearmodifiers "$COMMAND_KEY"
|