hypr,waybar: rework workspace numbering to support named workspaces ordering
Renumber regular workspaces to IDs 21-30 with defaultName 1-10, giving named workspaces IDs 1-6 so they sort before numbered ones in waybar. Add persistent named workspaces (comms, element, mail, joplin, steam, spotify) with monitor/layout assignments. Update keybinds to use name: dispatch. Add spotify as dedicated monocle workspace on DP-2. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{{- range $monitor := .monitors }}
|
||||
{{- range $index, $ws := $monitor.workspaces }}
|
||||
{{- if kindIs "map" $ws }}
|
||||
workspace = {{ $ws.id }}, monitor:{{ $monitor.name }}{{ if eq $index 0 }}, default:true{{ end }}{{ if index $ws "layout" }}, layout:{{ $ws.layout }}{{ end }}{{ range index $ws "layoutopts" }}, layoutopt:{{ . }}{{ end }}
|
||||
workspace = {{ $ws.id }}, monitor:{{ $monitor.name }}{{ if eq $index 0 }}, default:true{{ end }}{{ if index $ws "name" }}, defaultName:{{ $ws.name }}{{ end }}{{ if index $ws "layout" }}, layout:{{ $ws.layout }}{{ end }}{{ range index $ws "layoutopts" }}, layoutopt:{{ . }}{{ end }}
|
||||
{{- else }}
|
||||
workspace = {{ $ws }}, monitor:{{ $monitor.name }}{{ if eq $index 0 }}, default:true{{ end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -76,10 +76,13 @@ windowrule = match:xwayland 1, no_initial_focus on
|
||||
## ========== Special Workspaces ==========
|
||||
workspace = special:passwordmgr, on-created-empty:bitwarden-desktop
|
||||
|
||||
## ========== Workspace Layout Overrides ==========
|
||||
workspace = name:comms, monitor:DP-2, layout:scrolling, layoutopt:direction:down
|
||||
workspace = name:element, monitor:DP-2, layout:scrolling, layoutopt:direction:down
|
||||
workspace = name:steam, layout:scrolling
|
||||
## ========== Named Workspaces (IDs 1-5, sort before numbered) ==========
|
||||
workspace = 1, defaultName:comms, monitor:DP-2, layout:scrolling, layoutopt:direction:down, persistent:true
|
||||
workspace = 2, defaultName:element, monitor:DP-2, layout:scrolling, layoutopt:direction:down, persistent:true
|
||||
workspace = 3, defaultName:mail, persistent:true
|
||||
workspace = 4, defaultName:joplin, persistent:true
|
||||
workspace = 5, defaultName:steam, layout:scrolling, persistent:true
|
||||
workspace = 6, defaultName:spotify, monitor:DP-2, layout:monocle, persistent:true
|
||||
|
||||
#windowrule = float, class:org.keepassxc.KeePassXC
|
||||
#windowrule = noscreenshare, class:org.keepassxc.KeePassXC
|
||||
@@ -99,7 +102,7 @@ windowrule = match:class ^(org\.mozilla\.Thunderbird)$, workspace name:mail
|
||||
windowrule = match:class ^(@joplin/app-desktop)$, workspace name:joplin
|
||||
|
||||
## ========== Multimedia ==========
|
||||
windowrule = match:class Spotify, workspace 10
|
||||
windowrule = match:class Spotify, workspace name:spotify
|
||||
|
||||
### ========== Development ==========
|
||||
#windowrule = match:class jetbrains-webstorm, match:title Welcome to WebStorm, float on
|
||||
|
||||
@@ -138,16 +138,16 @@ bind = $mainMod, Tab, workspace, m+1
|
||||
bind = $mainMod SHIFT, Tab, workspace, m-1
|
||||
|
||||
# SWITCH WORKSPACES with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
bind = $mainMod, 1, workspace, name:1
|
||||
bind = $mainMod, 2, workspace, name:2
|
||||
bind = $mainMod, 3, workspace, name:3
|
||||
bind = $mainMod, 4, workspace, name:4
|
||||
bind = $mainMod, 5, workspace, name:5
|
||||
bind = $mainMod, 6, workspace, name:6
|
||||
bind = $mainMod, 7, workspace, name:7
|
||||
bind = $mainMod, 8, workspace, name:8
|
||||
bind = $mainMod, 9, workspace, name:9
|
||||
bind = $mainMod, 0, workspace, name:10
|
||||
|
||||
# Monitor focus / workspace move
|
||||
bind = $mainMod, O, focusmonitor, l
|
||||
@@ -160,28 +160,28 @@ bind = $mainMod ALT SHIFT, K, movecurrentworkspacetomonitor, u
|
||||
bind = $mainMod ALT SHIFT, L, movecurrentworkspacetomonitor, r
|
||||
|
||||
# MOVE ACTIVE WINDOW TO A WORKSPACE with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, name:1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, name:2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, name:3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, name:4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, name:5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, name:6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, name:7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, name:8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, name:9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, name:10
|
||||
|
||||
# MOVE ACTIVE WINDOW TO A WORKSPACE SILENTLY with mainMod + CTRL + SHIFT + [0-9]
|
||||
bind = $mainMod CTRL SHIFT, 1, movetoworkspacesilent, 1
|
||||
bind = $mainMod CTRL SHIFT, 2, movetoworkspacesilent, 2
|
||||
bind = $mainMod CTRL SHIFT, 3, movetoworkspacesilent, 3
|
||||
bind = $mainMod CTRL SHIFT, 4, movetoworkspacesilent, 4
|
||||
bind = $mainMod CTRL SHIFT, 5, movetoworkspacesilent, 5
|
||||
bind = $mainMod CTRL SHIFT, 6, movetoworkspacesilent, 6
|
||||
bind = $mainMod CTRL SHIFT, 7, movetoworkspacesilent, 7
|
||||
bind = $mainMod CTRL SHIFT, 8, movetoworkspacesilent, 8
|
||||
bind = $mainMod CTRL SHIFT, 9, movetoworkspacesilent, 9
|
||||
bind = $mainMod CTRL SHIFT, 0, movetoworkspacesilent, 10
|
||||
bind = $mainMod CTRL SHIFT, 1, movetoworkspacesilent, name:1
|
||||
bind = $mainMod CTRL SHIFT, 2, movetoworkspacesilent, name:2
|
||||
bind = $mainMod CTRL SHIFT, 3, movetoworkspacesilent, name:3
|
||||
bind = $mainMod CTRL SHIFT, 4, movetoworkspacesilent, name:4
|
||||
bind = $mainMod CTRL SHIFT, 5, movetoworkspacesilent, name:5
|
||||
bind = $mainMod CTRL SHIFT, 6, movetoworkspacesilent, name:6
|
||||
bind = $mainMod CTRL SHIFT, 7, movetoworkspacesilent, name:7
|
||||
bind = $mainMod CTRL SHIFT, 8, movetoworkspacesilent, name:8
|
||||
bind = $mainMod CTRL SHIFT, 9, movetoworkspacesilent, name:9
|
||||
bind = $mainMod CTRL SHIFT, 0, movetoworkspacesilent, name:10
|
||||
|
||||
# Group tab switching
|
||||
bind = $mainMod, Z, changegroupactive, f
|
||||
|
||||
@@ -81,6 +81,7 @@
|
||||
"mail": "",
|
||||
"joplin": "",
|
||||
"steam": "",
|
||||
"spotify": "",
|
||||
"default": "",
|
||||
"special": ""
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user