dotwryn/bin/i3-utils

62 lines
2.0 KiB
Bash
Executable File

#!/bin/zsh
command -v scwrypts &>/dev/null || {
[ -f $HOME/.local/bin/scwrypts ] \
&& scwrypts() { $HOME/.local/bin/scwrypts $@; } \
|| scwrypts() { $HOME/.wryn/zsh/plugins/scwrypts/scwrypts $@; } \
;
}
case $1 in
( next | previous | play-pause ) playerctl $1 ;;
( fastforward ) playerctl position 5+ ;;
( rewind ) playerctl position 5- ;;
( volumedown ) scwrypts -n desktop pulseaudio -- sink down ;;
( volumeup ) scwrypts -n desktop pulseaudio -- sink up ;;
( volumemute ) scwrypts -n desktop pulseaudio -- sink mute ;;
( micmute ) scwrypts -n desktop pulseaudio -- source mute ;;
( backlightup ) scwrypts -n desktop backlight -- up ;;
( backlightdown ) scwrypts -n desktop backlight -- down ;;
( lock ) scwrypts -n desktop lock i3 -- ;;
( bgrandomize ) scwrypts desktop set i3 background -- random ;;
( logout ) scwrypts desktop i3 logout -- ;;
( launch )
local PROGRAM
local ARGS=()
case $2 in
messages ) PROGRAM=slack ARGS+=(-c Slack --has-statusbar-icon) ;;
voice ) PROGRAM=google-voice-desktop ;;
ytmusic ) PROGRAM=youtubemusic-nativefier ;;
1pass ) PROGRAM=1password ARGS+=(-c 1Password) ;;
discord ) PROGRAM=discord ARGS+=(--has-statusbar-icon) ;;
obs ) PROGRAM=obs ARGS+=(-c '^obs' -n -l --has-statusbar-icon) ;;
pavuctrl ) PROGRAM=pavucontrol ARGS+=(-s 0.5 -c '^Pavucontrol') ;;
scrcpy ) PROGRAM=scrcpy ARGS+=(-n -l) ;;
spotify ) PROGRAM=spotify ARGS+=(-c Spotify) ;;
* ) PROGRAM=$2 ;;
esac
scwrypts i3 launch or show -- $PROGRAM ${ARGS[@]}
;;
( screenshot )
command -v deepin-screen-recorder || notify-send "I3 UTILS" "no screenshot application available"
deepin-screen-recorder
DEEPIN_CONFIG="$HOME/.config/deepin/deepin-screen-recorder/deepin-screen-recorder.conf"
: \
&& echo "fixing stupid settings" \
&& mv $DEEPIN_CONFIG $DEEPIN_CONFIG.bak \
&& sed '/specifiedSavepath=.*home.*Pictures/d' $DEEPIN_CONFIG.bak > $DEEPIN_CONFIG \
|| mv $DEEPIN_CONFIG.bak $DEEPIN_CONFIG.conf \
;
;;
esac