45 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
# notes, stacks: https://github.com/koekeishiya/yabai/issues/203#issuecomment-650642142
##########################################################################################
# yabai
# general idea: alt navigates (move my view); alt+shift modifies (move/change the window)
# switch to space (to leave SIP in place, configure these in macos system settings)
# alt - 1 // switch to space 1 (and similar for other numbers)
# move focused window to the given space
alt + shift - 1 : yabai -m window --space 1 --focus
alt + shift - 2 : yabai -m window --space 2 --focus
alt + shift - 3 : yabai -m window --space 3 --focus
alt + shift - 4 : yabai -m window --space 4 --focus
alt + shift - 5 : yabai -m window --space 5 --focus
alt + shift - 6 : yabai -m window --space 6 --focus
alt + shift - 7 : yabai -m window --space 7 --focus
alt + shift - 8 : yabai -m window --space 8 --focus
alt + shift - 9 : yabai -m window --space 9 --focus
# all windows in a space to fullscreen in a single stack
alt + shift - s : yabai -m space --layout stack
# all windows in a space back to the grid (managed)
alt + shift - g : yabai -m space --layout bsp
# toggle float on/off for the focused window
alt + shift - f : yabai -m window --toggle float
# balance window sizes
alt + shift - 0 : yabai -m space --balance # TODO: figure out better key option
# focus on next/previous window
alt - j : yabai -m window --focus \
$(yabai -m query --spaces --space | jq '.type' | tr -d "\"" | sed "s/stack/stack./" | sed "s/.*[^.]\$//")prev
alt - k : yabai -m window --focus \
$(yabai -m query --spaces --space | jq '.type' | tr -d "\"" | sed "s/stack/stack./" | sed "s/.*[^.]\$//")next
# move current window up/down in stack
alt + shift - k : yabai -m window --swap \
$(yabai -m query --spaces --space | jq '.type' | tr -d "\"" | sed "s/stack/stack./" | sed "s/.*[^.]\$//")next
alt + shift - j : yabai -m window --swap \
$(yabai -m query --spaces --space | jq '.type' | tr -d "\"" | sed "s/stack/stack./" | sed "s/.*[^.]\$//")prev