diff options
Diffstat (limited to 'mac/.config/aerospace/aerospace.toml')
| -rw-r--r-- | mac/.config/aerospace/aerospace.toml | 260 |
1 files changed, 260 insertions, 0 deletions
diff --git a/mac/.config/aerospace/aerospace.toml b/mac/.config/aerospace/aerospace.toml new file mode 100644 index 0000000..04859fd --- /dev/null +++ b/mac/.config/aerospace/aerospace.toml @@ -0,0 +1,260 @@ +# Place a copy of this config to ~/.aerospace.toml +# After that, you can edit ~/.aerospace.toml to your liking + +# It's not neceesary to copy all keys to your config. +# If the key is missing in your config, "default-config.toml" will serve as a fallback + +# You can use it to add commands that run after login to macOS user session. +# 'start-at-login' needs to be 'true' for 'after-login-command' to work +# Available commands: https://nikitabobko.github.io/AeroSpace/commands +after-login-command = [] + +# You can use it to add commands that run after AeroSpace startup. +# 'after-startup-command' is run after 'after-login-command' +# Available commands : https://nikitabobko.github.io/AeroSpace/commands +after-startup-command = [ + # JankyBorders has a built-in detection of already running process, + # so it won't be run twice on AeroSpace restart + 'exec-and-forget /opt/homebrew/opt/sketchybar/bin/sketchybar', + 'exec-and-forget /opt/homebrew/opt/borders/bin/borders' +] + +exec-on-workspace-change = [ + '/bin/bash', + '-c', + '/opt/homebrew/opt/sketchybar/bin/sketchybar --trigger aerospace_workspace_change AEROSPACE_FOCUSED_WORKSPACE=$AEROSPACE_FOCUSED_WORKSPACE AEROSPACE_PREV_WORKSPACE=$AEROSPACE_PREV_WORKSPACE', +] + +# Start AeroSpace at login +start-at-login = true + +# Normalizations. See: https://nikitabobko.github.io/AeroSpace/guide#normalization +enable-normalization-flatten-containers = false +enable-normalization-opposite-orientation-for-nested-containers = false + +# See: https://nikitabobko.github.io/AeroSpace/guide#layouts +# The 'accordion-padding' specifies the size of accordion padding +# You can set 0 to disable the padding feature +accordion-padding = 20 + +# Possible values: tiles|accordion +default-root-container-layout = 'tiles' + +# Possible values: horizontal|vertical|auto +# 'auto' means: wide monitor (anything wider than high) gets horizontal orientation, +# tall monitor (anything higher than wide) gets vertical orientation +default-root-container-orientation = 'auto' + +# Possible values: (qwerty|dvorak) +# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping +key-mapping.preset = 'qwerty' + +on-focused-monitor-changed = ['move-mouse monitor-lazy-center'] +on-focus-changed = ['move-mouse window-lazy-center'] + +# Gaps between windows (inner-*) and between monitor edges (outer-*). +# Possible values: +# - Constant: gaps.outer.top = 8 +# - Per monitor: gaps.outer.top = [{ monitor.main = 16 }, { monitor."some-pattern" = 32 }, 24] +# In this example, 24 is a default value when there is no match. +# Monitor pattern is the same as for 'workspace-to-monitor-force-assignment'. +# See: https://nikitabobko.github.io/AeroSpace/guide#assign-workspaces-to-monitors +[workspace-to-monitor-force-assignment] + 1 = 'main' + 2 = 'main' + 3 = 'V32UE' + 4 = 'V32UE' + 5 = 'V32UE' + 6 = '^27W' + 7 = '^27W' + 10 = '^EPSON' + +[gaps] + inner.horizontal = 15 + inner.vertical = 15 + outer.top = [{ monitor."main" = 10 }, {monitor."secondary" = 40}, 10] + outer.left = 10 + outer.bottom = 10 + outer.right = 10 + +# See https://nikitabobko.github.io/AeroSpace/guide#exec-env-vars +[exec] # Again, you don't need to copy all config sections to your config. + inherit-env-vars = true # If you don't touch "exec" section, + +[exec.env-vars] # it will fallback to "default-config.toml" + PATH = '/opt/homebrew/bin:/opt/homebrew/sbin:${PATH}' + +# 'main' binding mode declaration +# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes +# 'main' binding mode must be always presented +[mode.main.binding] + # All possible keys: + # - Letters. a, b, c, ..., z + # - Numbers. 0, 1, 2, ..., 9 + # - Keypad numbers. keypad0, keypad1, keypad2, ..., keypad9 + # - F-keys. f1, f2, ..., f20 + # - Special keys. minus, equal, period, comma, slash, backslash, quote, semicolon, backtick, + # leftSquareBracket, rightSquareBracket, space, enter, esc, backspace, tab + # - Keypad special. keypadClear, keypadDecimalMark, keypadDivide, keypadEnter, keypadEqual, + # keypadMinus, keypadMultiply, keypadPlus + # - Arrows. left, down, up, right + + # All possible modifiers: cmd, alt, ctrl, shift + + # All possible commands: https://nikitabobko.github.io/AeroSpace/commands + + # You can uncomment this line to open up terminal with alt + enter shortcut + # See: https://nikitabobko.github.io/AeroSpace/commands#exec-and-forget + # alt-enter = 'exec-and-forget open -n /System/Applications/Utilities/Terminal.app' + + # See: https://nikitabobko.github.io/AeroSpace/commands#layout + alt-slash = 'layout tiles horizontal vertical' + alt-comma = 'layout accordion horizontal vertical' + + # See: https://nikitabobko.github.io/AeroSpace/commands#focus + alt-h = 'focus left --boundaries all-monitors-outer-frame' + alt-j = 'focus down --boundaries all-monitors-outer-frame' + alt-k = 'focus up --boundaries all-monitors-outer-frame' + alt-l = 'focus right --boundaries all-monitors-outer-frame' + + # See: https://nikitabobko.github.io/AeroSpace/commands#move + alt-shift-h = 'move left' + alt-shift-j = 'move down' + alt-shift-k = 'move up' + alt-shift-l = 'move right' + + # See: https://nikitabobko.github.io/AeroSpace/commands#resize + alt-shift-minus = 'resize smart -50' + alt-shift-equal = 'resize smart +50' + + # See: https://nikitabobko.github.io/AeroSpace/commands#workspace + alt-1 = 'workspace 1' + alt-2 = 'workspace 2' + alt-3 = 'workspace 3' + alt-4 = 'workspace 4' + alt-5 = 'workspace 5' + alt-6 = 'workspace 6' + alt-7 = 'workspace 7' + alt-8 = 'workspace 8' + alt-9 = 'workspace 9' + + # See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace + alt-shift-1 = 'move-node-to-workspace 1' + alt-shift-2 = 'move-node-to-workspace 2' + alt-shift-3 = 'move-node-to-workspace 3' + alt-shift-4 = 'move-node-to-workspace 4' + alt-shift-5 = 'move-node-to-workspace 5' + alt-shift-6 = 'move-node-to-workspace 6' + alt-shift-7 = 'move-node-to-workspace 7' + alt-shift-8 = 'move-node-to-workspace 8' + alt-shift-9 = 'move-node-to-workspace 9' + + # See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace + alt-ctrl-1 = ['move-node-to-workspace 1', 'workspace 1'] + alt-ctrl-2 = ['move-node-to-workspace 2', 'workspace 2'] + alt-ctrl-3 = ['move-node-to-workspace 3', 'workspace 3'] + alt-ctrl-4 = ['move-node-to-workspace 4', 'workspace 4'] + alt-ctrl-5 = ['move-node-to-workspace 5', 'workspace 5'] + alt-ctrl-6 = ['move-node-to-workspace 6', 'workspace 6'] + alt-ctrl-7 = ['move-node-to-workspace 7', 'workspace 7'] + alt-ctrl-8 = ['move-node-to-workspace 8', 'workspace 8'] + alt-ctrl-9 = ['move-node-to-workspace 9', 'workspace 9'] + + # See: https://nikitabobko.github.io/AeroSpace/commands#workspace-back-and-forth + alt-tab = 'workspace-back-and-forth' + # See: https://nikitabobko.github.io/AeroSpace/commands#move-workspace-to-monitor + alt-shift-tab = 'move-workspace-to-monitor --wrap-around next' + + # See: https://nikitabobko.github.io/AeroSpace/commands#mode + alt-shift-semicolon = 'mode service' + + # Toggle full screen + alt-shift-f = 'fullscreen' + + # disabled hide window + # cmd-h = [] + # rotate hangul and english + +# 'service' binding mode declaration. +# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes +[mode.service.binding] + esc = ['reload-config', 'mode main'] + r = ['flatten-workspace-tree', 'mode main'] # reset layout + #s = ['layout sticky tiling', 'mode main'] # sticky is not yet supported https://github.com/nikitabobko/AeroSpace/issues/2 + f = [ + 'layout floating tiling', + 'mode main', + ] # Toggle between floating and tiling layout + alt-shift-semicolon = [ + 'fullscreen', + 'mode main', + ] # Toggle between floating and tiling layout + backspace = ['close-all-windows-but-current', 'mode main'] + + alt-shift-h = ['join-with left', 'mode main'] + alt-shift-j = ['join-with down', 'mode main'] + alt-shift-k = ['join-with up', 'mode main'] + alt-shift-l = ['join-with right', 'mode main'] + + alt-shift-r = ['exec-and-forget /opt/homebrew/bin/sketchybar --reload'] + +# Application Rules +[[on-window-detected]] +if.app-id = 'com.apple.weather' +run = ['layout floating'] + +[[on-window-detected]] +if.app-id = 'com.dygmalab.bazecor' +run = ['layout floating'] + +[[on-window-detected]] +if.app-id = 'net.kovidgoyal.kitty' +run = ['move-node-to-workspace 1'] + +[[on-window-detected]] +if.app-id = 'org.mozilla.firefox' +run = ['move-node-to-workspace 2'] + +[[on-window-detected]] +if.app-name-regex-substring = 'cursor' +run = ['move-node-to-workspace 3'] + +[[on-window-detected]] +if.app-id = 'com.microsoft.VSCode' +run = ['move-node-to-workspace 4'] + +[[on-window-detected]] +if.app-id = 'com.clickup.desktop-app' +run = ['move-node-to-workspace 5'] + +[[on-window-detected]] +if.app-id = "md.obsidian" +run = ['move-node-to-workspace 5'] + +[[on-window-detected]] +if.app-id = 'com.colliderli.iina' +run = ['move-node-to-workspace 6'] + +[[on-window-detected]] +if.app-id = 'com.apple.Music' +run = ['move-node-to-workspace 7'] + +[[on-window-detected]] +if.app-id = 'com.apple.iCal' +run = ['move-node-to-workspace 8'] + +[[on-window-detected]] +if.app-id = 'com.kakao.KakaoTalkMac' +run = ['move-node-to-workspace 9'] + +[[on-window-detected]] +if.app-id = 'com.tdesktop.Telegram' +run = ['move-node-to-workspace 9'] + +[[on-window-detected]] +if.app-id = 'com.hnc.Discord' +run = ['move-node-to-workspace 9'] + +[[on-window-detected]] +if.app-id = 'com.microsoft.teams2' +run = ['move-node-to-workspace 9'] |
