#change window focus within space
shift + cmd - j : yabai -m window --focus south
shift + cmd - k : yabai -m window --focus north
shift + cmd - h : yabai -m window --focus west
shift + cmd - l : yabai -m window --focus east

# Resize windows
lctrl + alt - h : yabai -m window --resize left:-50:0; \
                  yabai -m window --resize right:-50:0
lctrl + alt - j : yabai -m window --resize bottom:0:50; \
                  yabai -m window --resize top:0:50
lctrl + alt - k : yabai -m window --resize top:0:-50; \
                  yabai -m window --resize bottom:0:-50
lctrl + alt - l : yabai -m window --resize right:50:0; \
                  yabai -m window --resize left:50:0

# Equalize size of windows
lctrl + alt - e : yabai -m space --balance

# change space #
shift + cmd - 1 : yabai -m space --display 1
shift + cmd - 2 : yabai -m space --display 2
shift + cmd - 3 : yabai -m space --display 3
shift + cmd - 4 : yabai -m space --display 4
shift + cmd - 5 : yabai -m space --display 5
shift + cmd - 6 : yabai -m space --display 6
shift + cmd - 7 : yabai -m space --display 7

#change focus between external displays (left and right)
cmd - h: yabai -m display --focus west
cmd - l: yabai -m display --focus east

# rotate layout clockwise
shift + alt - r : yabai -m space --rotate 270

# flip along y-axis
shift + alt - y : yabai -m space --mirror y-axis

# flip along x-axis
shift + alt - x : yabai -m space --mirror x-axis

# toggle window float
shift + alt - t : yabai -m window --toggle float --grid 4:4:1:1:2:2

# maximize a window
shift + alt - m : yabai -m window --toggle zoom-fullscreen

# toggle whether the focused window should be shown on all spaces
shift + alt - a : yabai -m window --toggle sticky

# swap windows
shift + alt - j : yabai -m window --swap south
shift + alt - k : yabai -m window --swap north
shift + alt - h : yabai -m window --swap west
shift + alt - l : yabai -m window --swap east

# move window and split
ctrl + alt - j : yabai -m window --warp south
ctrl + alt - k : yabai -m window --warp north
ctrl + alt - h : yabai -m window --warp west
ctrl + alt - l : yabai -m window --warp east

# move window to display left and right
shift + alt - h : yabai -m window --display west; yabai -m display --focus west;
shift + alt - l : yabai -m window --display east; yabai -m display --focus east;

#move window to prev and next space
shift + alt - p : yabai -m window --space prev;
shift + alt - n : yabai -m window --space next;

# move window to space #
shift + alt - 1 : yabai -m window --space 1;
shift + alt - 2 : yabai -m window --space 2;
shift + alt - 3 : yabai -m window --space 3;
shift + alt - 4 : yabai -m window --space 4;
shift + alt - 5 : yabai -m window --space 5;
shift + alt - 6 : yabai -m window --space 6;
shift + alt - 7 : yabai -m window --space 7;

# # open apps
# lctrl + shift - t : open -an Wezterm.app
# lctrl + shift - b : open -an Firefox.app
# lctrl + shift - v : open -an VSCodium.app
# shift + alt - m : open -an Mail.app
# shift + alt - a : open -an Authy\ Desktop.app
# shift + alt - w : open -an Bitwarden.app

# stop/start/restart yabai
ctrl + alt - q : yabai --stop-service
ctrl + alt - s : yabai --start-service
ctrl + alt - r : yabai --restart-service

