Created
May 2, 2019 22:21
-
-
Save escherize/b663c905b09f42b336d47cbc2359995c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# focus window | |
shift + cmd - a : chunkc tiling::window --focus west | |
shift + cmd - s : chunkc tiling::window --focus south | |
shift + cmd - w : chunkc tiling::window --focus north | |
shift + cmd - d : chunkc tiling::window --focus east | |
# warp window | |
shift + cmd - j : chunkc tiling::window --warp west | |
shift + cmd - k : chunkc tiling::window --warp south | |
shift + cmd - i : chunkc tiling::window --warp north | |
shift + cmd - l : chunkc tiling::window --warp east | |
# increase region size | |
# cmd + alt - j : chunkc tiling::window --use-temporary-ratio 0.1 --adjust-window-edge west | |
# cmd + alt - k : chunkc tiling::window --use-temporary-ratio 0.1 --adjust-window-edge south | |
# cmd + alt - i : chunkc tiling::window --use-temporary-ratio 0.1 --adjust-window-edge north | |
# cmd + alt - l : chunkc tiling::window --use-temporary-ratio 0.1 --adjust-window-edge east | |
# decrease region size | |
# shift + cmd + alt - j : chunkc tiling::window --use-temporary-ratio -0.1 --adjust-window-edge west | |
# shift + cmd + alt - k : chunkc tiling::window --use-temporary-ratio -0.1 --adjust-window-edge south | |
# shift + cmd + alt - i : chunkc tiling::window --use-temporary-ratio -0.1 --adjust-window-edge north | |
# shift + cmd + alt - l : chunkc tiling::window --use-temporary-ratio -0.1 --adjust-window-edge east | |
# toggle window split type | |
cmd - g : chunkc tiling::desktop --gap dec; chunkc tiling::desktop --padding dec | |
shift + cmd - g : chunkc tiling::desktop --gap inc; chunkc tiling::desktop --padding inc | |
# toggle | |
alt - e : chunkc tiling::window --toggle split | |
# toggle window parent zoom | |
shift + alt - d : chunkc tiling::window --toggle parent | |
# rotate tree | |
alt - r : chunkc tiling::desktop --rotate 90 | |
# equalize size of windows | |
shift + alt - 0 : chunkc tiling::desktop --equalize | |
# mirror tree y-axis | |
shift + alt - y : chunkc tiling::desktop --mirror vertical | |
# mirror tree x-axis | |
shift + alt - x : chunkc tiling::desktop --mirror horizontal | |
# offset | |
alt - a : chunkc tiling::desktop --toggle offset | |
cmd - g : chunkc tiling::desktop --gap dec; chunkc tiling::desktop --padding dec | |
shift + cmd - g : chunkc tiling::desktop --gap inc; chunkc tiling::desktop --padding inc | |
# toggle window fullscreen | |
shift + alt - f : chunkc tiling::window --toggle fullscreen | |
### FLOATING | |
# float / unfloat window and center on screen | |
# shift + alt - c : chunkc tiling::window --toggle float;\ | |
# chunkc tiling::window --grid-layout 4:4:1:1:2:2 | |
# ########### MULTIPLE MONITORS ##################### | |
# # send window to desktop and follow focus | |
# alt + ctrl + cmd - l : chunkc tiling::window --send-to-desktop prev; chunkc tiling::desktop --focus prev | |
# alt + ctrl + cmd - j : chunkc tiling::window --send-to-desktop next; chunkc tiling::desktop --focus next | |
# # what is a desktop vs monitor? | |
# # focus monitor | |
# cmd + ctrl + alt - i : chunkc tiling::monitor -f prev | |
# cmd + ctrl + alt - k : chunkc tiling::monitor -f next | |
##################### DISABLED: #################### | |
# # toggle window fade | |
# alt - q : chunkc tiling::window --toggle fade | |
# # set insertion point for focused container | |
# # ctrl + alt - h : chunkc tiling::window --use-insertion-point west | |
# # ctrl + alt - j : chunkc tiling::window --use-insertion-point south | |
# # ctrl + alt - k : chunkc tiling::window --use-insertion-point north | |
# # ctrl + alt - l : chunkc tiling::window --use-insertion-point east | |
# ### FLOATING | |
# # make floating window fill screen | |
# # shift + alt - up : chunkc tiling::window --grid-layout 1:1:0:0:1:1 | |
# # make floating window fill left-half of screen | |
# # shift + alt - left : chunkc tiling::window --grid-layout 1:2:0:0:1:1 | |
# # make floating window fill right-half of screen | |
# # shift + alt - right : chunkc tiling::window --grid-layout 1:2:1:0:1:1 | |
# # toggle sticky, float and resize to picture-in-picture size | |
# alt + shift - s : chunkc tiling::window --toggle sticky;\ | |
# chunkc tiling::window --grid-layout 5:5:4:0:1:1 | |
# # float next window to be tiled | |
# # shift + alt - t : chunkc set window_float_next 1 | |
# # ctrl + alt - w : chunkc tiling::desktop --deserialize ~/.chunkwm_layouts/dev_1 | |
# # fast focus desktop | |
# # cmd + alt - x : chunkc tiling::desktop --focus $(chunkc get _last_active_desktop) | |
# # cmd + alt - z : chunkc tiling::desktop --focus prev | |
# # cmd + alt - c : chunkc tiling::desktop --focus next | |
# # cmd + alt - 1 : chunkc tiling::desktop --focus 1 | |
# # cmd + alt - 2 : chunkc tiling::desktop --focus 2 | |
# # cmd + alt - 3 : chunkc tiling::desktop --focus 3 | |
# # cmd + alt - 4 : chunkc tiling::desktop --focus 4 | |
# # cmd + alt - 5 : chunkc tiling::desktop --focus 5 | |
# # cmd + alt - 6 : chunkc tiling::desktop --focus 6 | |
# # cmd + alt - 7 : chunkc tiling::desktop --focus 7 | |
# # send window to desktop | |
# shift + ctrl + alt - x : chunkc tiling::window --send-to-desktop $(chunkc get _last_active_desktop) | |
# shift + crtl + alt - z : chunkc tiling::window --send-to-desktop prev | |
# # shift + alt - c : chunkc tiling::window --send-to-desktop next | |
# # shift + alt - 1 : chunkc tiling::window --send-to-desktop 1 | |
# # shift + alt - 2 : chunkc tiling::window --send-to-desktop 2 | |
# # shift + alt - 3 : chunkc tiling::window --send-to-desktop 3 | |
# # shift + alt - 4 : chunkc tiling::window --send-to-desktop 4 | |
# # shift + alt - 5 : chunkc tiling::window --send-to-desktop 5 | |
# # shift + alt - 6 : chunkc tiling::window --send-to-desktop 6 | |
# # shift + alt - 7 : chunkc tiling::window --send-to-desktop 7 | |
# # send window to desktop and follow focus | |
# # shift + cmd - x : chunkc tiling::window --send-to-desktop $(chunkc get _last_active_desktop); chunkc tiling::desktop --focus $(chunkc get _last_active_desktop) | |
# # shift + cmd - 1 : chunkc tiling::window --send-to-desktop 1; chunkc tiling::desktop --focus 1 | |
# # shift + cmd - 2 : chunkc tiling::window --send-to-desktop 2; chunkc tiling::desktop --focus 2 | |
# # shift + cmd - 3 : chunkc tiling::window --send-to-desktop 3; chunkc tiling::desktop --focus 3 | |
# # shift + cmd - 4 : chunkc tiling::window --send-to-desktop 4; chunkc tiling::desktop --focus 4 | |
# # shift + cmd - 5 : chunkc tiling::window --send-to-desktop 5; chunkc tiling::desktop --focus 5 | |
# # shift + cmd - 6 : chunkc tiling::window --send-to-desktop 6; chunkc tiling::desktop --focus 6 | |
# # shift + cmd - 7 : chunkc tiling::window --send-to-desktop 7; chunkc tiling::desktop --focus 7 | |
# # focus monitor | |
# # ctrl + alt - 1 : chunkc tiling::monitor -f 1 | |
# # ctrl + alt - 2 : chunkc tiling::monitor -f 2 | |
# # ctrl + alt - 3 : chunkc tiling::monitor -f 3 | |
# # send window to monitor and follow focus | |
# # ctrl + cmd - z : chunkc tiling::window --send-to-monitor prev; chunkc tiling::monitor -f prev | |
# # ctrl + cmd - c : chunkc tiling::window --send-to-monitor next; chunkc tiling::monitor -f next | |
# # ctrl + cmd - 1 : chunkc tiling::window --send-to-monitor 1; chunkc tiling::monitor -f 1 | |
# # ctrl + cmd - 2 : chunkc tiling::window --send-to-monitor 2; chunkc tiling::monitor -f 2 | |
# # ctrl + cmd - 3 : chunkc tiling::window --send-to-monitor 3; chunkc tiling::monitor -f 3 | |
# # toggle window native fullscreen | |
# # alt - f : chunkc tiling::window --toggle native-fullscreen | |
# # set insertion point for focused container | |
# # ctrl + alt - f : chunkc tiling::window --use-insertion-point cancel | |
# # change layout of desktop | |
# # ctrl + alt - a : chunkc tiling::desktop --layout bsp | |
# # ctrl + alt - s : chunkc tiling::desktop --layout monocle | |
# # ctrl + alt - d : chunkc tiling::desktop --layout float | |
# # NOTE(koekeishiya): A list of all built-in modifier and literal keywords can | |
# # be found at https://github.com/koekeishiya/skhd/issues/1 | |
# # | |
# # A hotkey is written according to the following rules: | |
# # | |
# # hotkey = <mode> '<' <action> | <action> | |
# # | |
# # mode = 'name of mode' | <mode> ',' <mode> | |
# # | |
# # action = <keysym> ':' <command> | <keysym> '->' ':' <command> | |
# # <keysym> ';' <mode> | <keysym> '->' ';' <mode> | |
# # | |
# # keysym = <mod> '-' <key> | <key> | |
# # | |
# # mod = 'built-in mod keyword' | <mod> '+' <mod> | |
# # | |
# # key = <literal> | <keycode> | |
# # | |
# # literal = 'single letter or built-in keyword' | |
# # | |
# # keycode = 'apple keyboard kVK_<Key> values (0x3C)' | |
# # | |
# # -> = keypress is not consumed by skhd | |
# # | |
# # command = command is executed through '$SHELL -c' and | |
# # follows valid shell syntax. if the $SHELL environment | |
# # variable is not set, it will default to '/bin/bash'. | |
# # when bash is used, the ';' delimeter can be specified | |
# # to chain commands. | |
# # | |
# # to allow a command to extend into multiple lines, | |
# # prepend '\' at the end of the previous line. | |
# # | |
# # an EOL character signifies the end of the bind. | |
# # | |
# # | |
# # NOTE(koekeishiya): A mode is declared according to the following rules: | |
# # | |
# # mode_decl = '::' <name> '@' ':' <command> | '::' <name> ':' <command> | | |
# # '::' <name> '@' | '::' <name> | |
# # | |
# # name = desired name for this mode, | |
# # | |
# # @ = capture keypresses regardless of being bound to an action | |
# # | |
# # command = command is executed through '$SHELL -c' and | |
# # follows valid shell syntax. if the $SHELL environment | |
# # variable is not set, it will default to '/bin/bash'. | |
# # when bash is used, the ';' delimeter can be specified | |
# # to chain commands. | |
# # | |
# # to allow a command to extend into multiple lines, | |
# # prepend '\' at the end of the previous line. | |
# # | |
# # an EOL character signifies the end of the bind. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment