diff options
| -rwxr-xr-x | river/init | 23 | ||||
| -rwxr-xr-x | river/sp/river_sp | 70 | ||||
| -rwxr-xr-x | river/sp/sp_a | 3 | ||||
| -rwxr-xr-x | river/sp/sp_b | 3 | ||||
| -rwxr-xr-x | river/sp/sp_c | 3 | ||||
| -rwxr-xr-x | river/sp/sp_d | 3 | ||||
| -rwxr-xr-x | river/sp/sp_f | 3 | ||||
| -rwxr-xr-x | river/sp/sp_g | 3 | ||||
| -rwxr-xr-x | river/sp/sp_q | 3 | ||||
| -rwxr-xr-x | river/sp/sp_s | 3 | ||||
| -rwxr-xr-x | river/sp/sp_v | 3 | ||||
| -rwxr-xr-x | river/sp/sp_x | 3 | ||||
| -rwxr-xr-x | river/sp/sp_z | 3 | 
13 files changed, 115 insertions, 11 deletions
| @@ -105,17 +105,18 @@ riverctl map normal $mod1 0 set-focused-tags $all_tags  riverctl map normal $mod1+Shift 0 set-view-tags $all_tags  # scratchpad tags -riverctl map normal $mod1+Control z spawn "river_sp -n z" -riverctl map normal $mod1+Control x spawn "river_sp -n x" -riverctl map normal $mod1+Control c spawn "river_sp -n c" -riverctl map normal $mod1+Control v spawn "river_sp -n v" -riverctl map normal $mod1+Control b spawn "river_sp -n b" -riverctl map normal $mod1+Control a spawn "river_sp -n a" -riverctl map normal $mod1+Control s spawn "river_sp -n s" -riverctl map normal $mod1+Control d spawn "river_sp -n d" -riverctl map normal $mod1+Control f spawn "river_sp -n f" -riverctl map normal $mod1+Control g spawn "river_sp -n g" -riverctl map normal $mod1+Control q spawn "river_sp -n q" +BINPATH="${XDG_CONFIG_HOME:-$HOME/.config}/river/sp" +riverctl map normal $mod1+Control z spawn "$BINPATH/river_sp -n z" +riverctl map normal $mod1+Control x spawn "$BINPATH/river_sp -n x" +riverctl map normal $mod1+Control c spawn "$BINPATH/river_sp -n c" +riverctl map normal $mod1+Control v spawn "$BINPATH/river_sp -n v" +riverctl map normal $mod1+Control b spawn "$BINPATH/river_sp -n b" +riverctl map normal $mod1+Control a spawn "$BINPATH/river_sp -n a" +riverctl map normal $mod1+Control s spawn "$BINPATH/river_sp -n s" +riverctl map normal $mod1+Control d spawn "$BINPATH/river_sp -n d" +riverctl map normal $mod1+Control f spawn "$BINPATH/river_sp -n f" +riverctl map normal $mod1+Control g spawn "$BINPATH/river_sp -n g" +riverctl map normal $mod1+Control q spawn "$BINPATH/river_sp -n q"  # $mod1+Space to toggle float  riverctl map normal $mod1+Control Space toggle-float diff --git a/river/sp/river_sp b/river/sp/river_sp new file mode 100755 index 0000000..e354cc9 --- /dev/null +++ b/river/sp/river_sp @@ -0,0 +1,70 @@ +#!/bin/sh + +#{{{ binpath +BINPATH="${XDG_CONFIG_HOME:-$HOME/.config}/river/sp" +#}}} + +#{{{ spawnwindow +spawnwindow () { +  case "$1" in +    1) pgrep -x sp_z ||  ${BINPATH}/sp_z ;; +    2) pgrep -x sp_x ||  ${BINPATH}/sp_x ;; +    3) pgrep -x sp_c ||  ${BINPATH}/sp_c ;; +    4) pgrep -x sp_v ||  ${BINPATH}/sp_v ;; +    5) pgrep -x sp_b ||  ${BINPATH}/sp_b ;; +    6) pgrep -x sp_a ||  ${BINPATH}/sp_a ;; +    7) pgrep -x sp_s ||  ${BINPATH}/sp_s ;; +    8) pgrep -x sp_d ||  ${BINPATH}/sp_d ;; +    9) pgrep -x sp_f ||  ${BINPATH}/sp_f ;; +    10) pgrep -x sp_g || ${BINPATH}/sp_g ;; +    11) pgrep -x sp_q || ${BINPATH}/sp_q ;; +    *) printf "Unknown scratchpad $1!\n" ; exit 1 ;; +  esac +} +#}}} + +#{{{ getopts +while getopts "n:s:" o; do case "${o}" in +  n) +    case "$OPTARG" in +      z|1) ARG=1 ;; +      x|2) ARG=2 ;; +      c|3) ARG=3 ;; +      v|4) ARG=4 ;; +      b|5) ARG=5 ;; +      a|6) ARG=6 ;; +      s|7) ARG=7 ;; +      d|8) ARG=8 ;; +      f|9) ARG=9 ;; +      g|10) ARG=10 ;; +      q|11) ARG=11 ;; +      *) printf "Unknown scratchpad $1!\n" ; exit 1 ;; +    esac +    if pgrep -x "sp_$OPTARG"; then +      riverctl toggle-focused-tags $((1 << ($ARG + 9))) +    else +      riverctl toggle-focused-tags $(( 1 << ($ARG + 9))) +      riverctl spawn-tagmask $(( 1 << ($ARG + 9))) +      spawnwindow "$ARG" +      riverctl spawn-tagmask $(( (1 << 9) - 1)) +    fi +    ;; +  s) +    case "$OPTARG" in +      z|1) ARG=1 ;; +      x|2) ARG=2 ;; +      c|3) ARG=3 ;; +      v|4) ARG=4 ;; +      b|5) ARG=5 ;; +      a|6) ARG=6 ;; +      s|7) ARG=7 ;; +      d|8) ARG=8 ;; +      f|9) ARG=9 ;; +      g|10) ARG=10 ;; +      q|11) ARG=11 ;; +      *) printf "Unknown scratchpad $1!\n" ; exit 1 ;; +    esac +    riverctl toggle-focused-tags $((1 << ($ARG + 9))) +    ;; +esac done +#}}} diff --git a/river/sp/sp_a b/river/sp/sp_a new file mode 100755 index 0000000..d76f78e --- /dev/null +++ b/river/sp/sp_a @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spmutt" neomutt diff --git a/river/sp/sp_b b/river/sp/sp_b new file mode 100755 index 0000000..208cf4c --- /dev/null +++ b/river/sp/sp_b @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spncmp" ncmpcpp diff --git a/river/sp/sp_c b/river/sp/sp_c new file mode 100755 index 0000000..0201227 --- /dev/null +++ b/river/sp/sp_c @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "sppmxr" pulsemixer diff --git a/river/sp/sp_d b/river/sp/sp_d new file mode 100755 index 0000000..1545c87 --- /dev/null +++ b/river/sp/sp_d @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spirss" irssi diff --git a/river/sp/sp_f b/river/sp/sp_f new file mode 100755 index 0000000..f2468ea --- /dev/null +++ b/river/sp/sp_f @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "sptodo" todo diff --git a/river/sp/sp_g b/river/sp/sp_g new file mode 100755 index 0000000..7b3a393 --- /dev/null +++ b/river/sp/sp_g @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "sptrmc" tremc diff --git a/river/sp/sp_q b/river/sp/sp_q new file mode 100755 index 0000000..9202782 --- /dev/null +++ b/river/sp/sp_q @@ -0,0 +1,3 @@ +#!/bin/sh + +qpwgraph diff --git a/river/sp/sp_s b/river/sp/sp_s new file mode 100755 index 0000000..288373c --- /dev/null +++ b/river/sp/sp_s @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spprof" profanity diff --git a/river/sp/sp_v b/river/sp/sp_v new file mode 100755 index 0000000..009e18d --- /dev/null +++ b/river/sp/sp_v @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spblue" bluetoothctl diff --git a/river/sp/sp_x b/river/sp/sp_x new file mode 100755 index 0000000..ef07b51 --- /dev/null +++ b/river/sp/sp_x @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "spterm" diff --git a/river/sp/sp_z b/river/sp/sp_z new file mode 100755 index 0000000..c6414ed --- /dev/null +++ b/river/sp/sp_z @@ -0,0 +1,3 @@ +#!/bin/sh + +foot -a "sphtop" htop | 
