46 lines
2.1 KiB
Plaintext
Executable File

# list of built-in keywords at https://github.com/koekeishiya/skhd/issues/1
# staring file was at /opt/homebrew/opt/yabai/share/yabai/examples
##########################################################################################
# yabai
# in managed mode: swap current window
shift + cmd - k : yabai -m window --swap north
shift + cmd - j : yabai -m window --swap south
shift + cmd - h : yabai -m window --swap west
shift + cmd - l : yabai -m window --swap east
# move focused window to the given space
shift + cmd - 1 : yabai -m window --space 1
shift + cmd - 2 : yabai -m window --space 2
shift + cmd - 3 : yabai -m window --space 3
shift + cmd - 4 : yabai -m window --space 4
shift + cmd - 5 : yabai -m window --space 5
shift + cmd - 6 : yabai -m window --space 6
shift + cmd - 7 : yabai -m window --space 7
shift + cmd - 8 : yabai -m window --space 8
shift + cmd - 9 : yabai -m window --space 9
# balance window sizes
shift + cmd - 0 : yabai -m space --balance
# all windows in a space back to the grid (managed)
shift + cmd - g : yabai -m space --layout bsp
# all windows in a space to float and each fill screen
shift + cmd - f : yabai -m space --layout float \
| yabai -m query --windows --space | jq '.[].id' \
| xargs -I % yabai -m window % --grid 1:1:0:0:1:1
# managed layout, focus on next/previous window
shift + cmd - x : yabai -m window --focus next # TODO: figure out better key option
shift + cmd - z : yabai -m window --focus prev # TODO: figure out better key option
# float layout, focus on next/previous window; hacky, but it seems to work for now
shift + cmd - n : yabai -m query --windows --space | jq '.[].id' | sort | tr "\r\n" " " \
| sed "s/\(.*\)/ \1 \n/" \
| sed "s/.* $(yabai -m query --windows --window | jq '.id') \([0-9]*\) .*/\1/" \
| xargs -I % yabai -m window --focus %
shift + cmd - p : yabai -m query --windows --space | jq '.[].id' | sort | tr "\r\n" " " \
| sed "s/\(.*\)/ \1 \n/" \
| sed "s/.* \([0-9]*\) $(yabai -m query --windows --window | jq '.id') .*/\1/" \
| xargs -I % yabai -m window --focus %