content: # Place a copy of this config to ~/.aerospace.toml
  # After that, you can edit ~/.aerospace.toml to your liking
  
  # using this version currently
  # https://github.com/nikitabobko/AeroSpace/releases/tag/v0.18.5-Beta
  # aerospace CLI client version: 0.18.5-Beta 4213dfd9d958dbfe3f801e07d7d5af53303baa75
  
  # Feel free to omit keys that you don't use in your config.
  # If the key is absent in your config the default value is taken from this config
  
  # 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.html
  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.html
  after-startup-command = []
  
  # Start AeroSpace at login
  start-at-login = true
  
  # Normalizations. See: https://nikitabobko.github.io/AeroSpace/guide.html#normalization
  enable-normalization-flatten-containers = true
  enable-normalization-opposite-orientation-for-nested-containers = true
  
  # See: https://nikitabobko.github.io/AeroSpace/guide.html#layouts
  # The 'accordion-padding' specifies the size of accordion padding
  # You can set 0 to disable the padding feature
  accordion-padding = 30
  
  # 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'
  
  # 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.html#assign-workspaces-to-monitors
  
  gaps.inner.horizontal = 0
  gaps.inner.vertical = 0
  gaps.outer.left = 0
  gaps.outer.bottom = 0
  gaps.outer.top = 0
  gaps.outer.right = 0
  
  [workspace-to-monitor-force-assignment]
  # Can find these out using `aerospace list-monitors`
  1 = 'D32u-40'
  4 = 'D32u-40'
  7 = 'D32u-40'
  2 = 'main'
  5 = 'main'
  8 = 'main'
  3 = 'DELL U2415'
  6 = 'DELL U2415'
  9 = 'DELL U2415'
  
  # 'main' binding mode declaration
  # See: https://nikitabobko.github.io/AeroSpace/guide.html#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.html
  
  # You can uncomment this line to open up terminal with alt + enter shortcut
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#exec-and-forget
  # alt-enter = 'exec-and-forget open -n /System/Applications/Utilities/Terminal.app'
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#layout
  # alt-slash = 'layout tiles horizontal vertical'
  # alt-comma = 'layout accordion horizontal vertical'
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#focus
  # alt-h = 'focus left'
  # alt-j = 'focus down'
  # alt-k = 'focus up'
  # alt-l = 'focus right'
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#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.html#resize
  # alt-shift-minus = 'resize smart -50'
  # alt-shift-equal = 'resize smart +50'
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#workspace
  
  # I have 3 monitors, let's call them abc.
  # The idea is to always associate a monitor with a workspace.
  #
  # We can show three sets of workspaces like this:
  # abc  abc  abc
  # 123  456  789
  # show 123 but focus on 2. I find this reduces the cognitive load of
  # remembering which workspace is where.
  
  ctrl-shift-alt-1 = ['workspace 2', 'workspace 3', 'workspace 1']
  ctrl-shift-alt-2 = ['workspace 1', 'workspace 3', 'workspace 2']
  ctrl-shift-alt-3 = ['workspace 1', "workspace 2", 'workspace 3']
  ctrl-shift-alt-4 = ['workspace 5', 'workspace 6', 'workspace 4']
  ctrl-shift-alt-5 = ['workspace 4', 'workspace 6', 'workspace 5']
  ctrl-shift-alt-6 = ['workspace 4', 'workspace 5', 'workspace 6']
  ctrl-shift-alt-7 = ['workspace 8', 'workspace 9', 'workspace 7']
  ctrl-shift-alt-8 = ['workspace 7', 'workspace 9', 'workspace 8']
  ctrl-shift-alt-9 = ['workspace 7', 'workspace 8', 'workspace 9']
  # alt-a = 'workspace A'
  # alt-b = 'workspace B'
  # alt-c = 'workspace C'
  # alt-d = 'workspace D'
  # alt-e = 'workspace E'
  # alt-f = 'workspace F'
  # alt-g = 'workspace G'
  # alt-i = 'workspace I'
  # alt-m = 'workspace M'
  # alt-n = 'workspace N'
  # alt-o = 'workspace O'
  # alt-p = 'workspace P'
  # alt-q = 'workspace Q'
  # alt-r = 'workspace R'
  # alt-s = 'workspace S'
  # alt-t = 'workspace T'
  # alt-u = 'workspace U'
  # alt-v = 'workspace V'
  # alt-w = 'workspace W'
  # alt-x = 'workspace X'
  # alt-y = 'workspace Y'
  # alt-z = 'workspace Z'
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#move-node-to-workspace
  cmd-ctrl-shift-alt-1 = ['move-node-to-workspace 1', 'workspace 2', 'workspace 3', 'workspace 1']
  cmd-ctrl-shift-alt-2 = ['move-node-to-workspace 2', 'workspace 1', 'workspace 3', 'workspace 2']
  cmd-ctrl-shift-alt-3 = ['move-node-to-workspace 3', 'workspace 1', "workspace 2", 'workspace 3']
  cmd-ctrl-shift-alt-4 = ['move-node-to-workspace 4', 'workspace 5', 'workspace 6', 'workspace 4']
  cmd-ctrl-shift-alt-5 = ['move-node-to-workspace 5', 'workspace 4', 'workspace 6', 'workspace 5']
  cmd-ctrl-shift-alt-6 = ['move-node-to-workspace 6', 'workspace 4', 'workspace 5', 'workspace 6']
  cmd-ctrl-shift-alt-7 = ['move-node-to-workspace 7', 'workspace 8', 'workspace 9', 'workspace 7']
  cmd-ctrl-shift-alt-8 = ['move-node-to-workspace 8', 'workspace 7', 'workspace 9', 'workspace 8']
  cmd-ctrl-shift-alt-9 = ['move-node-to-workspace 9', 'workspace 7', 'workspace 8', 'workspace 9']
  cmd-ctrl-shift-alt-0 = ['move-node-to-workspace 0', 'workspace 0']
  
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#workspace-back-and-forth
  alt-tab = 'workspace-back-and-forth'
  # See: https://nikitabobko.github.io/AeroSpace/commands.html#move-workspace-to-monitor
  # alt-shift-tab = 'move-workspace-to-monitor --wrap-around next'
  
  # hold a to get access to these commands on the QMK level
  cmd-ctrl-shift-alt-h = "focus left"
  cmd-ctrl-shift-alt-l = "focus right"
  cmd-ctrl-shift-alt-k = "focus up"
  cmd-ctrl-shift-alt-j = "focus down"
  cmd-ctrl-shift-alt-f = "fullscreen"
  cmd-ctrl-shift-alt-r = ["move left"]
  
  cmd-ctrl-shift-alt-n = "resize smart +150"
  cmd-ctrl-shift-alt-t = "resize smart -150"
  
  # ] # Toggle between floating and tiling layout# 'service' binding mode declaration.
  # See: https://nikitabobko.github.io/AeroSpace/guide.html#binding-modes
  # [mode.service.binding]
  # 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',
  # backspace = ['close-all-windows-but-current', 'mode main']
  # esc = ['reload-config', 'mode main']
  
  # 'join' binding mode declaration
  # See: https://nikitabobko.github.io/AeroSpace/guide.html#binding-modes
  # [mode.join.binding]
  # 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']
  # esc = 'mode main'
  