diff options
| author | srdusr <trevorgray@srdusr.com> | 2023-10-22 22:50:02 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2023-10-22 22:50:02 +0200 |
| commit | a4f18086ba7ce108ebb041b9b0c52bf522413000 (patch) | |
| tree | 8d63a98b329f4af486f38db47d0b6049c6e441d8 /.scripts/bspwm_resize.sh | |
| parent | bf45ef759815ad7ac3f6423114a96f4d56d1a2a2 (diff) | |
| parent | 68a2612c8b737f6770a4d23848fe6409ddce7888 (diff) | |
| download | dotfiles-a4f18086ba7ce108ebb041b9b0c52bf522413000.tar.gz dotfiles-a4f18086ba7ce108ebb041b9b0c52bf522413000.zip | |
Add '.scripts/' from commit 'a4ba0376ba73b1bb295d8bb459a4bf2b063ddca9'
git-subtree-dir: .scripts
git-subtree-mainline: 03c0cf66468d5e04c0e3559f9f89b5eec28feb9e
git-subtree-split: a4ba0376ba73b1bb295d8bb459a4bf2b063ddca9
Diffstat (limited to '.scripts/bspwm_resize.sh')
| -rwxr-xr-x | .scripts/bspwm_resize.sh | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/.scripts/bspwm_resize.sh b/.scripts/bspwm_resize.sh new file mode 100755 index 0000000..29ab5cf --- /dev/null +++ b/.scripts/bspwm_resize.sh @@ -0,0 +1,67 @@ +#!/bin/bash + +size=${2:-'10'} +dir=$1 + +# Find current window mode +is_tiled() { +bspc query -T -n | grep -q '"state":"tiled"' +} +# If the window is floating, move it +if ! is_tiled; then +#only parse input if window is floating,tiled windows accept input as is + case "$dir" in + west) switch="-w" + sign="-" + ;; + east) switch="-w" + sign="+" + ;; + north) switch="-h" + sign="-" + ;; + south) switch="-h" + sign="+" + ;; + esac + xdo resize ${switch} ${sign}${size} + +# Otherwise, window is tiled: switch with window in given direction +else + case "$dir" in + west) bspc node @west -r -$size || bspc node @east -r -${size} + ;; + east) bspc node @west -r +$size || bspc node @east -r +${size} + ;; + north) bspc node @south -r -$size || bspc node @north -r -${size} + ;; + south) bspc node @south -r +$size || bspc node @north -r +${size} + ;; + esac +fi + +##!/bin/bash +# +#[ "$#" -eq 3 ] || { echo "Needs exactly three arguments."; exit 1; } +# +#motion="$1" +#direction="$2" +#size="$3" +# +#if [ "$motion" = 'expand' ]; then +# # These expand the window's given side +# case "$direction" in +# north) bspc node -z top 0 -"$size" ;; +# east) bspc node -z right "$size" 0 ;; +# south) bspc node -z bottom 0 "$size" ;; +# west) bspc node -z left -"$size" 0 ;; +# esac +#else +# # These contract the window's given side +# case "$direction" in +# north) bspc node -z top 0 "$size" ;; +# east) bspc node -z right -"$size" 0 ;; +# south) bspc node -z bottom 0 -"$size" ;; +# west) bspc node -z left "$size" 0 ;; +# esac +#fi |
