Last active 1 month ago

lucas's Avatar lucas revised this gist 1 month ago. Go to revision

1 file changed, 201 insertions

asdf.md(file created)

@@ -0,0 +1,201 @@
1 + Here’s a **GlazeWM `config.yaml`** that mirrors your Sway/i3-style **hjkl navigation, move, workspaces 1–10 (0 = 10), split direction, fullscreen, floating, resize mode**, plus **Firefox on startup**.
2 +
3 + > Note: GlazeWM **recommends using `alt` as the mod** because Windows reserves a bunch of `lwin+…` combos (lock screen, show desktop, etc.). If you *really* want Super/Win, you can swap `alt+` → `lwin+` later, just expect some binds to never fire. ([DeepWiki][1])
4 +
5 + ```yaml
6 + # GlazeWM config inspired by your Sway/i3 setup (single monitor, hjkl focus/move, 1–10 workspaces).
7 + # If you want Super/Win as mod: replace "alt+" with "lwin+" (some Win combos are reserved by Windows). :contentReference[oaicite:1]{index=1}
8 +
9 + general:
10 + startup_commands:
11 + - shell-exec firefox
12 + shutdown_commands: []
13 + config_reload_commands: []
14 +
15 + # Like: focus_follows_mouse yes
16 + focus_follows_cursor: true
17 + toggle_workspace_on_refocus: false
18 +
19 + # Single monitor: usually nicer with cursor jump off
20 + cursor_jump:
21 + enabled: false
22 + trigger: monitor_focus
23 +
24 + # More "workspace-like" isolation in taskbar
25 + hide_method: "cloak"
26 + show_all_in_taskbar: false
27 +
28 + # i3-ish: no gaps by default (tweak if you want breathing room)
29 + gaps:
30 + scale_with_dpi: true
31 + inner_gap: "0px"
32 + outer_gap:
33 + top: "0px"
34 + right: "0px"
35 + bottom: "0px"
36 + left: "0px"
37 +
38 + # Optional: subtle focus indication (Windows 11 border effects) :contentReference[oaicite:2]{index=2}
39 + window_effects:
40 + focused_window:
41 + border:
42 + enabled: true
43 + color: "#DDDDDD"
44 + other_windows:
45 + border:
46 + enabled: true
47 + color: "#333333"
48 +
49 + window_behavior:
50 + initial_state: "tiling"
51 + state_defaults:
52 + floating:
53 + centered: true
54 + shown_on_top: true
55 + fullscreen:
56 + maximized: true
57 + shown_on_top: false
58 +
59 + workspaces:
60 + - name: "1"
61 + - name: "2"
62 + - name: "3"
63 + - name: "4"
64 + - name: "5"
65 + - name: "6"
66 + - name: "7"
67 + - name: "8"
68 + - name: "9"
69 + - name: "10"
70 +
71 + keybindings:
72 + # (Optional) terminal launcher — edit/remove if you don't want any app binds
73 + - bindings: ["alt+enter"]
74 + commands: ["shell-exec wt"]
75 +
76 + # Firefox (kept, per your request)
77 + - bindings: ["alt+shift+f"]
78 + commands: ["shell-exec firefox"]
79 +
80 + # Focus: hjkl + arrows :contentReference[oaicite:3]{index=3}
81 + - bindings: ["alt+h", "alt+left"]
82 + commands: ["focus --direction left"]
83 + - bindings: ["alt+j", "alt+down"]
84 + commands: ["focus --direction down"]
85 + - bindings: ["alt+k", "alt+up"]
86 + commands: ["focus --direction up"]
87 + - bindings: ["alt+l", "alt+right"]
88 + commands: ["focus --direction right"]
89 +
90 + # Move window: Shift+hjkl + Shift+arrows :contentReference[oaicite:4]{index=4}
91 + - bindings: ["alt+shift+h", "alt+shift+left"]
92 + commands: ["move --direction left"]
93 + - bindings: ["alt+shift+j", "alt+shift+down"]
94 + commands: ["move --direction down"]
95 + - bindings: ["alt+shift+k", "alt+shift+up"]
96 + commands: ["move --direction up"]
97 + - bindings: ["alt+shift+l", "alt+shift+right"]
98 + commands: ["move --direction right"]
99 +
100 + # Workspaces: alt+1..9, alt+0 -> 10
101 + - bindings: ["alt+1"]
102 + commands: ["focus --workspace 1"]
103 + - bindings: ["alt+2"]
104 + commands: ["focus --workspace 2"]
105 + - bindings: ["alt+3"]
106 + commands: ["focus --workspace 3"]
107 + - bindings: ["alt+4"]
108 + commands: ["focus --workspace 4"]
109 + - bindings: ["alt+5"]
110 + commands: ["focus --workspace 5"]
111 + - bindings: ["alt+6"]
112 + commands: ["focus --workspace 6"]
113 + - bindings: ["alt+7"]
114 + commands: ["focus --workspace 7"]
115 + - bindings: ["alt+8"]
116 + commands: ["focus --workspace 8"]
117 + - bindings: ["alt+9"]
118 + commands: ["focus --workspace 9"]
119 + - bindings: ["alt+0"]
120 + commands: ["focus --workspace 10"]
121 +
122 + # Move to workspace (no "follow", like your Sway config)
123 + - bindings: ["alt+shift+1"]
124 + commands: ["move --workspace 1"]
125 + - bindings: ["alt+shift+2"]
126 + commands: ["move --workspace 2"]
127 + - bindings: ["alt+shift+3"]
128 + commands: ["move --workspace 3"]
129 + - bindings: ["alt+shift+4"]
130 + commands: ["move --workspace 4"]
131 + - bindings: ["alt+shift+5"]
132 + commands: ["move --workspace 5"]
133 + - bindings: ["alt+shift+6"]
134 + commands: ["move --workspace 6"]
135 + - bindings: ["alt+shift+7"]
136 + commands: ["move --workspace 7"]
137 + - bindings: ["alt+shift+8"]
138 + commands: ["move --workspace 8"]
139 + - bindings: ["alt+shift+9"]
140 + commands: ["move --workspace 9"]
141 + - bindings: ["alt+shift+0"]
142 + commands: ["move --workspace 10"]
143 +
144 + # Split direction / layout-ish
145 + - bindings: ["alt+b"]
146 + commands: ["set-tiling-direction --tiling-direction horizontal"]
147 + - bindings: ["alt+v"]
148 + commands: ["set-tiling-direction --tiling-direction vertical"]
149 + - bindings: ["alt+e"]
150 + commands: ["toggle-tiling-direction"]
151 +
152 + # Fullscreen / floating / focus cycling :contentReference[oaicite:5]{index=5}
153 + - bindings: ["alt+f"]
154 + commands: ["toggle-fullscreen"]
155 + - bindings: ["alt+space"]
156 + commands: ["wm-cycle-focus"]
157 + - bindings: ["alt+shift+space"]
158 + commands: ["toggle-floating --centered"]
159 +
160 + # Scratchpad-ish (closest equivalent): minimize toggle
161 + - bindings: ["alt+oem_minus"]
162 + commands: ["toggle-minimized"]
163 + - bindings: ["alt+shift+oem_minus"]
164 + commands: ["set-minimized"]
165 +
166 + # Kill / reload / exit :contentReference[oaicite:6]{index=6}
167 + - bindings: ["alt+shift+q"]
168 + commands: ["close"]
169 + - bindings: ["alt+shift+c"]
170 + commands: ["wm-reload-config"]
171 + - bindings: ["alt+shift+e"]
172 + commands: ["wm-exit"]
173 +
174 + # Easy “back to normal WM” toggle (pauses GlazeWM) :contentReference[oaicite:7]{index=7}
175 + - bindings: ["alt+shift+p"]
176 + commands: ["wm-toggle-pause"]
177 +
178 + # Resize mode (like i3) :contentReference[oaicite:8]{index=8}
179 + - bindings: ["alt+r"]
180 + commands: ["wm-enable-binding-mode --name resize"]
181 +
182 + binding_modes:
183 + - name: resize
184 + keybindings:
185 + - bindings: ["h", "left"]
186 + commands: ["resize --width -10px"]
187 + - bindings: ["l", "right"]
188 + commands: ["resize --width +10px"]
189 + - bindings: ["k", "up"]
190 + commands: ["resize --height -10px"]
191 + - bindings: ["j", "down"]
192 + commands: ["resize --height +10px"]
193 +
194 + # exit resize mode
195 + - bindings: ["enter", "escape"]
196 + commands: ["wm-disable-binding-mode --name resize"]
197 + ```
198 +
199 + If you want, paste your preferred “mod” choice (Alt vs Win) and whether you want **“move-to-workspace also follows”** (i3 has both styles), and I’ll adjust the workspace move bindings accordingly.
200 +
201 + [1]: https://deepwiki.com/glzr-io/glazewm/2.2.3-keybindings-and-commands "Keybindings and Commands | glzr-io/glazewm | DeepWiki"
Newer Older