|
| 1 | +# Pop Shell-like bindings for yabai. |
| 2 | +# Place in ~/.config/skhd/skhdrc (or include from your main skhdrc). |
| 3 | +# Assumes helper scripts exist in ~/.config/yabai/scripts/. |
| 4 | + |
| 5 | +# Modes |
| 6 | +:: default |
| 7 | +:: pop_manage @ |
| 8 | + |
| 9 | +# Focus (Pop: Super + direction) |
| 10 | +cmd - h : yabai -m window --focus west |
| 11 | +cmd - j : yabai -m window --focus south |
| 12 | +cmd - k : yabai -m window --focus north |
| 13 | +cmd - l : yabai -m window --focus east |
| 14 | +cmd - left : yabai -m window --focus west |
| 15 | +cmd - down : yabai -m window --focus south |
| 16 | +cmd - up : yabai -m window --focus north |
| 17 | +cmd - right : yabai -m window --focus east |
| 18 | + |
| 19 | +# Launcher (Pop: Super + /) |
| 20 | +cmd - slash : ~/.config/yabai/scripts/launcher.sh |
| 21 | + |
| 22 | +# App launchers |
| 23 | +shift + alt + cmd - t : open /Applications/kitty.app |
| 24 | +shift + alt + cmd - c : open /Applications/Browsers.app |
| 25 | + |
| 26 | +# Toggle floating/orientation/tiling/stacking (Pop: Super + g/o/y/s) |
| 27 | +cmd - g : yabai -m window --toggle float |
| 28 | +cmd - o : yabai -m window --toggle split |
| 29 | +cmd - y : ~/.config/yabai/scripts/toggle_tiling.sh |
| 30 | +cmd - s : ~/.config/yabai/scripts/toggle_stacking.sh |
| 31 | + |
| 32 | +# Enter/leave management mode (Pop: Super + Return) |
| 33 | +cmd - return : true ; pop_manage |
| 34 | +pop_manage < return : true ; default |
| 35 | +pop_manage < escape : true ; default |
| 36 | + |
| 37 | +# Move focused window across spaces (Pop workspace up/down). |
| 38 | +shift + cmd - k : ~/.config/yabai/scripts/move_window_space_follow.sh prev |
| 39 | +shift + cmd - j : ~/.config/yabai/scripts/move_window_space_follow.sh next |
| 40 | +shift + cmd - up : ~/.config/yabai/scripts/move_window_space_follow.sh prev |
| 41 | +shift + cmd - down : ~/.config/yabai/scripts/move_window_space_follow.sh next |
| 42 | + |
| 43 | +# Move focused window across displays (Pop monitor shortcuts). |
| 44 | +shift + cmd - h : ~/.config/yabai/scripts/move_window_display_follow.sh west |
| 45 | +shift + cmd - l : ~/.config/yabai/scripts/move_window_display_follow.sh east |
| 46 | +shift + cmd - left : ~/.config/yabai/scripts/move_window_display_follow.sh west |
| 47 | +shift + cmd - right : ~/.config/yabai/scripts/move_window_display_follow.sh east |
| 48 | +shift + ctrl + cmd - k : ~/.config/yabai/scripts/move_window_display_follow.sh north |
| 49 | +shift + ctrl + cmd - j : ~/.config/yabai/scripts/move_window_display_follow.sh south |
| 50 | +shift + ctrl + cmd - up : ~/.config/yabai/scripts/move_window_display_follow.sh north |
| 51 | +shift + ctrl + cmd - down : ~/.config/yabai/scripts/move_window_display_follow.sh south |
| 52 | + |
| 53 | +# Management mode approximation: |
| 54 | +# plain direction = move (warp) |
| 55 | +# ctrl + direction = swap |
| 56 | +# shift + direction = grow |
| 57 | +# shift + ctrl + direction = shrink |
| 58 | +# o/s/g/~ = orientation/stacking/float toggles |
| 59 | +pop_manage < h : yabai -m window --warp west |
| 60 | +pop_manage < j : yabai -m window --warp south |
| 61 | +pop_manage < k : yabai -m window --warp north |
| 62 | +pop_manage < l : yabai -m window --warp east |
| 63 | +pop_manage < left : yabai -m window --warp west |
| 64 | +pop_manage < down : yabai -m window --warp south |
| 65 | +pop_manage < up : yabai -m window --warp north |
| 66 | +pop_manage < right : yabai -m window --warp east |
| 67 | + |
| 68 | +pop_manage < ctrl - h : yabai -m window --swap west |
| 69 | +pop_manage < ctrl - j : yabai -m window --swap south |
| 70 | +pop_manage < ctrl - k : yabai -m window --swap north |
| 71 | +pop_manage < ctrl - l : yabai -m window --swap east |
| 72 | +pop_manage < ctrl - left : yabai -m window --swap west |
| 73 | +pop_manage < ctrl - down : yabai -m window --swap south |
| 74 | +pop_manage < ctrl - up : yabai -m window --swap north |
| 75 | +pop_manage < ctrl - right : yabai -m window --swap east |
| 76 | + |
| 77 | +pop_manage < shift - h : yabai -m window --resize left:40:0 |
| 78 | +pop_manage < shift - j : yabai -m window --resize bottom:0:40 |
| 79 | +pop_manage < shift - k : yabai -m window --resize top:0:-40 |
| 80 | +pop_manage < shift - l : yabai -m window --resize right:40:0 |
| 81 | +pop_manage < shift - left : yabai -m window --resize left:40:0 |
| 82 | +pop_manage < shift - down : yabai -m window --resize bottom:0:40 |
| 83 | +pop_manage < shift - up : yabai -m window --resize top:0:-40 |
| 84 | +pop_manage < shift - right : yabai -m window --resize right:40:0 |
| 85 | + |
| 86 | +pop_manage < shift + ctrl - h : yabai -m window --resize left:-40:0 |
| 87 | +pop_manage < shift + ctrl - j : yabai -m window --resize bottom:0:-40 |
| 88 | +pop_manage < shift + ctrl - k : yabai -m window --resize top:0:40 |
| 89 | +pop_manage < shift + ctrl - l : yabai -m window --resize right:-40:0 |
| 90 | +pop_manage < shift + ctrl - left : yabai -m window --resize left:-40:0 |
| 91 | +pop_manage < shift + ctrl - down : yabai -m window --resize bottom:0:-40 |
| 92 | +pop_manage < shift + ctrl - up : yabai -m window --resize top:0:40 |
| 93 | +pop_manage < shift + ctrl - right : yabai -m window --resize right:-40:0 |
| 94 | + |
| 95 | +pop_manage < o : yabai -m window --toggle split |
| 96 | +pop_manage < s : ~/.config/yabai/scripts/toggle_stacking.sh |
| 97 | +pop_manage < g : yabai -m window --toggle float |
| 98 | +pop_manage < grave : yabai -m window --toggle float |
0 commit comments