Adjust keybindings for macos wm, update readme
This commit is contained in:
		@@ -4,42 +4,49 @@
 | 
			
		||||
##########################################################################################
 | 
			
		||||
# yabai
 | 
			
		||||
 | 
			
		||||
# general idea: alt navigates (move my view); shift+alt modifies (move/change windows)
 | 
			
		||||
 | 
			
		||||
# 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)
 | 
			
		||||
 | 
			
		||||
# 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
 | 
			
		||||
shift + alt - k : yabai -m window --swap north
 | 
			
		||||
shift + alt - j : yabai -m window --swap south
 | 
			
		||||
shift + alt - h : yabai -m window --swap west # TODO: remove, only have j/k (just stack)
 | 
			
		||||
shift + alt - l : yabai -m window --swap east # TODO: remove, only have j/k (just stack)
 | 
			
		||||
 | 
			
		||||
# 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
 | 
			
		||||
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
 | 
			
		||||
shift + alt - 8 : yabai -m window --space 8
 | 
			
		||||
shift + alt - 9 : yabai -m window --space 9
 | 
			
		||||
 | 
			
		||||
# balance window sizes
 | 
			
		||||
shift + cmd - 0 : yabai -m space --balance
 | 
			
		||||
# all windows in a space to float and each fill screen (idea: stack mode)
 | 
			
		||||
shift + alt - s : yabai -m space --layout float \
 | 
			
		||||
    | yabai -m query --windows --space | jq '.[].id' \
 | 
			
		||||
    | xargs -I % yabai -m window % --grid 1:1:0:0:1:1
 | 
			
		||||
# toggle float on/off for the focused window 
 | 
			
		||||
shift + alt - f : yabai -m window --toggle float
 | 
			
		||||
# 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
 | 
			
		||||
shift + alt - g : yabai -m space --layout bsp
 | 
			
		||||
# balance window sizes
 | 
			
		||||
shift + alt - 0 : yabai -m space --balance # TODO: figure out better key option
 | 
			
		||||
 | 
			
		||||
# 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 %
 | 
			
		||||
#alt - x : yabai -m window --focus next # TODO: delete or figure out better key option
 | 
			
		||||
#alt - z : yabai -m window --focus prev # TODO: delete or figure out better key option
 | 
			
		||||
# focus on next/previous window; hacky, but it seems to work for now
 | 
			
		||||
alt - k : 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 %
 | 
			
		||||
alt - j : 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 %
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ yabai -m config                                 \
 | 
			
		||||
    focus_follows_mouse          off            \
 | 
			
		||||
    display_arrangement_order    default        \
 | 
			
		||||
    window_origin_display        default        \
 | 
			
		||||
    window_placement             second_child   \
 | 
			
		||||
    window_placement             first_child    \
 | 
			
		||||
    window_insertion_point       focused        \
 | 
			
		||||
    window_zoom_persist          on             \
 | 
			
		||||
    window_shadow                on             \
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user