From 0ba773cb8cb5162019d42c511f2580d601ab65d1 Mon Sep 17 00:00:00 2001 From: Hunt Date: Fri, 27 Jun 2025 14:25:22 -0700 Subject: Add sketchybar --- dots/aerospace/.aerospace.toml | 158 -------------------------------------- dots/aerospace/.aerospace.toml.j2 | 130 +++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+), 158 deletions(-) delete mode 100644 dots/aerospace/.aerospace.toml create mode 100644 dots/aerospace/.aerospace.toml.j2 (limited to 'dots/aerospace') diff --git a/dots/aerospace/.aerospace.toml b/dots/aerospace/.aerospace.toml deleted file mode 100644 index f4199e6..0000000 --- a/dots/aerospace/.aerospace.toml +++ /dev/null @@ -1,158 +0,0 @@ -after-login-command = [] -after-startup-command = [ - 'exec-and-forget borders active_color=0xffe1e3e4 inactive_color=0xff494d64 width=4.0' -] - -start-at-login = true - -# Normalizations. See: https://nikitabobko.github.io/AeroSpace/guide#normalization -enable-normalization-flatten-containers = true -enable-normalization-opposite-orientation-for-nested-containers = true - -# 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 = 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' - -on-focus-changed = ['move-mouse window-lazy-center'] - -# You can effectively turn off macOS "Hide application" (cmd-h) feature by toggling this flag -# Useful if you don't use this macOS feature, but accidentally hit cmd-h or cmd-alt-h key -# Also see: https://nikitabobko.github.io/AeroSpace/goodies#disable-hide-app -automatically-unhide-macos-hidden-apps = true - -# Possible values: (qwerty|dvorak|colemak) -# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping -[key-mapping] - preset = 'qwerty' - -# 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 -[gaps] - inner.horizontal = 8 - inner.vertical = 8 - outer.left = 8 - outer.bottom = 8 - outer.top = 8 - outer.right = 8 - -[mode.main.binding] - # All possible commands: https://nikitabobko.github.io/AeroSpace/commands - - # See: https://nikitabobko.github.io/AeroSpace/commands#layout - alt-slash = 'layout tiles horizontal vertical' - alt-comma = 'layout accordion horizontal vertical' - - alt-ctrl-d = 'close' - alt-h = 'focus left' - alt-j = 'focus down' - alt-k = 'focus up' - alt-l = 'focus right' - - alt-shift-h = 'move left' - alt-shift-j = 'move down' - alt-shift-k = 'move up' - alt-shift-l = 'move right' - - alt-ctrl-space = ['mode main'] - alt-ctrl-h = ['join-with left', 'mode main'] - alt-ctrl-j = ['join-with down', 'mode main'] - alt-ctrl-k = ['join-with up', 'mode main'] - alt-ctrl-l = ['join-with right', 'mode main'] - - alt-minus = 'resize smart -50' - alt-equal = 'resize smart +50' - - # Monitor One Workspaces - alt-1 = 'workspace 1' - alt-2 = 'workspace 2' - alt-3 = 'workspace 3' - alt-4 = 'workspace 4' - alt-5 = 'workspace 5' - alt-q = 'workspace 1' - alt-w = 'workspace 2' - alt-e = 'workspace 3' - alt-r = 'workspace 4' - alt-t = 'workspace 5' - 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-q = 'move-node-to-workspace 1' - alt-shift-w = 'move-node-to-workspace 2' - alt-shift-e = 'move-node-to-workspace 3' - alt-shift-r = 'move-node-to-workspace 4' - alt-shift-t = 'move-node-to-workspace 5' - - # Monitor Two Workspaces - alt-6 = 'workspace 6' - alt-7 = 'workspace 7' - alt-8 = 'workspace 8' - alt-9 = 'workspace 9' - alt-0 = 'workspace 10' - alt-y = 'workspace 6' - alt-u = 'workspace 7' - alt-i = 'workspace 8' - alt-o = 'workspace 9' - alt-p = 'workspace 10' - 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' - alt-shift-0 = 'move-node-to-workspace 10' - alt-shift-y = 'move-node-to-workspace 6' - alt-shift-u = 'move-node-to-workspace 7' - alt-shift-i = 'move-node-to-workspace 8' - alt-shift-o = 'move-node-to-workspace 9' - alt-shift-p = 'move-node-to-workspace 10' - - # 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' - -[workspace-to-monitor-force-assignment] - 1 = 'main' - 2 = 'main' - 3 = 'main' - 4 = 'main' - 5 = 'main' - 6 = 'secondary' - 7 = 'secondary' - 8 = 'secondary' - 9 = 'secondary' - 10 = 'secondary' - -# '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 - f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout - backspace = ['close-all-windows-but-current', 'mode main'] - - # sticky is not yet supported https://github.com/nikitabobko/AeroSpace/issues/2 - #s = ['layout sticky tiling', 'mode main'] - - down = 'volume down' - up = 'volume up' - shift-down = ['volume set 0', 'mode main'] - diff --git a/dots/aerospace/.aerospace.toml.j2 b/dots/aerospace/.aerospace.toml.j2 new file mode 100644 index 0000000..b04ce6e --- /dev/null +++ b/dots/aerospace/.aerospace.toml.j2 @@ -0,0 +1,130 @@ +after-login-command = [] +after-startup-command = [ + 'exec-and-forget borders active_color=0x{{ theme.borders.active_color }} inactive_color=0x{{ theme.borders.inactive_color }} width=4.0', + 'exec-and-forget /opt/homebrew/bin/sketchybar' +] + +exec-on-workspace-change = [ + '/bin/bash', + '-c', + 'sketchybar --trigger aerospace_workspace_changed FOCUSED_WORKSPACE=$AEROSPACE_FOCUSED_WORKSPACE' +] + +on-focus-changed = [ + 'move-mouse window-lazy-center', + 'exec-and-forget /bin/bash -c /opt/homebrew/bin/sketchybar --trigger front_app_switched', + 'exec-and-forget sketchybar --trigger update_windows' +] + +start-at-login = true + +# Normalizations. See: https://nikitabobko.github.io/AeroSpace/guide#normalization +enable-normalization-flatten-containers = true +enable-normalization-opposite-orientation-for-nested-containers = true + +# 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 = 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' + +# You can effectively turn off macOS "Hide application" (cmd-h) feature by toggling this flag +# Useful if you don't use this macOS feature, but accidentally hit cmd-h or cmd-{{ window_manager.key.mod }}-h key +# Also see: https://nikitabobko.github.io/AeroSpace/goodies#disable-hide-app +automatically-unhide-macos-hidden-apps = true + +# Possible values: (qwerty|dvorak|colemak) +# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping +[key-mapping] + preset = 'qwerty' + +# 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 +[gaps] + inner.horizontal = 8 + inner.vertical = 8 + outer.left = 8 + outer.bottom = 8 + outer.top = 58 + outer.right = 8 + +[mode.main.binding] + # All possible commands: https://nikitabobko.github.io/AeroSpace/commands + + # See: https://nikitabobko.github.io/AeroSpace/commands#layout + {{ window_manager.key.mod }}-slash = 'layout tiles horizontal vertical' + {{ window_manager.key.mod }}-comma = 'layout accordion horizontal vertical' + + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-d = 'close' + {{ window_manager.key.mod }}-h = 'focus left' + {{ window_manager.key.mod }}-j = 'focus down' + {{ window_manager.key.mod }}-k = 'focus up' + {{ window_manager.key.mod }}-l = 'focus right' + + {{ window_manager.key.mod }}-{{ window_manager.key.mov }}-h = 'move left' + {{ window_manager.key.mod }}-{{ window_manager.key.mov }}-j = 'move down' + {{ window_manager.key.mod }}-{{ window_manager.key.mov }}-k = 'move up' + {{ window_manager.key.mod }}-{{ window_manager.key.mov }}-l = 'move right' + + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-space = ['mode main'] + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-h = ['join-with left', 'mode main'] + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-j = ['join-with down', 'mode main'] + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-k = ['join-with up', 'mode main'] + {{ window_manager.key.mod }}-{{ window_manager.key.ed }}-l = ['join-with right', 'mode main'] + + {{ window_manager.key.mod }}-minus = 'resize smart -50' + {{ window_manager.key.mod }}-equal = 'resize smart +50' + +{% for name, ws in window_manager.workspaces.items() %} + {{ window_manager.key.mod }}-{{ ws.key }} = 'workspace {{ name }}' + {{ window_manager.key.mod }}-{{ window_manager.key.mov }}-{{ ws.key }} = 'move-node-to-workspace {{ name }}' +{% endfor %} + + # See: https://nikitabobko.github.io/AeroSpace/commands#workspace-back-and-forth + {{ window_manager.key.mod }}-tab = 'workspace-back-and-forth' + # See: https://nikitabobko.github.io/AeroSpace/commands#move-workspace-to-monitor + {{ window_manager.key.mod }}-shift-tab = 'move-workspace-to-monitor --wrap-around next' + + # See: https://nikitabobko.github.io/AeroSpace/commands#mode + {{ window_manager.key.mod }}-shift-semicolon = 'mode service' + +[workspace-to-monitor-force-assignment] +{% for name, ws in window_manager.workspaces.items() %} + {{ name }} = '{{ ws.monitor }}' +{% endfor %} + +# '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 + f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout + backspace = ['close-all-windows-but-current', 'mode main'] + + # sticky is not yet supported https://github.com/nikitabobko/AeroSpace/issues/2 + #s = ['layout sticky tiling', 'mode main'] + + down = 'volume down' + up = 'volume up' + shift-down = ['volume set 0', 'mode main'] + +{% for name, ws in window_manager.workspaces.items() %} +{% for app_id in ws.apps %} +[[on-window-detected]] + if.app-id = '{{ app_id }}' + run = ['move-node-to-workspace {{ name }}'] +{% endfor %} +{% endfor %} -- cgit v1.2.3-70-g09d2