summaryrefslogtreecommitdiff
path: root/dots/aerospace
diff options
context:
space:
mode:
Diffstat (limited to 'dots/aerospace')
-rw-r--r--dots/aerospace/.aerospace.toml.j2 (renamed from dots/aerospace/.aerospace.toml)140
1 files changed, 56 insertions, 84 deletions
diff --git a/dots/aerospace/.aerospace.toml b/dots/aerospace/.aerospace.toml.j2
index f4199e6..b04ce6e 100644
--- a/dots/aerospace/.aerospace.toml
+++ b/dots/aerospace/.aerospace.toml.j2
@@ -1,6 +1,19 @@
after-login-command = []
after-startup-command = [
- 'exec-and-forget borders active_color=0xffe1e3e4 inactive_color=0xff494d64 width=4.0'
+ '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
@@ -22,10 +35,8 @@ default-root-container-layout = 'tiles'
# 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
+# 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
@@ -47,99 +58,53 @@ automatically-unhide-macos-hidden-apps = true
inner.vertical = 8
outer.left = 8
outer.bottom = 8
- outer.top = 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
- 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'
+ {{ 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
- alt-tab = 'workspace-back-and-forth'
+ {{ window_manager.key.mod }}-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'
+ {{ window_manager.key.mod }}-shift-tab = 'move-workspace-to-monitor --wrap-around next'
# See: https://nikitabobko.github.io/AeroSpace/commands#mode
- alt-shift-semicolon = 'mode service'
+ {{ window_manager.key.mod }}-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'
+{% 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
@@ -156,3 +121,10 @@ automatically-unhide-macos-hidden-apps = true
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 %}