2026-06-08 18:28:10 +01:00
|
|
|
local workspace_map = {
|
|
|
|
|
"Home",
|
|
|
|
|
"Dev",
|
|
|
|
|
"Art",
|
|
|
|
|
"Gaming",
|
|
|
|
|
"Writing",
|
|
|
|
|
}
|
2026-06-07 19:03:11 +01:00
|
|
|
|
2026-06-08 18:28:10 +01:00
|
|
|
-- Move active window to a workspace with SUPER + SHIFT + [1-5]
|
2026-06-07 19:32:56 +01:00
|
|
|
for i = 1, 5 do
|
2026-06-08 18:28:10 +01:00
|
|
|
hl.workspace_rule({
|
|
|
|
|
workspace = tostring((i * 2) - 1),
|
|
|
|
|
monitor = "DP-1",
|
|
|
|
|
})
|
|
|
|
|
hl.workspace_rule({
|
|
|
|
|
workspace = tostring(i * 2),
|
|
|
|
|
monitor = "DP-2",
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
hl.bind(
|
|
|
|
|
"SUPER + code:1" .. (i - 1),
|
|
|
|
|
hl.dsp.focus({ workspace = tostring(i * 2) }),
|
|
|
|
|
{ description = "Switch to workspace " .. workspace_map[i] }
|
|
|
|
|
)
|
|
|
|
|
hl.bind(
|
|
|
|
|
"SUPER + code:1" .. (i - 1),
|
|
|
|
|
hl.dsp.focus({ workspace = tostring((i * 2) - 1) }),
|
|
|
|
|
{ description = "Switch to workspace" .. i }
|
|
|
|
|
)
|
|
|
|
|
|
2026-06-07 19:32:56 +01:00
|
|
|
hl.bind("SUPER + SHIFT + code:1" .. (i - 1), function()
|
|
|
|
|
local active_workspace = hl.get_active_workspace()
|
|
|
|
|
local new_workspace = (i * 2) - (active_workspace.id % 2)
|
|
|
|
|
hl.dispatch(hl.dsp.window.move({ workspace = tostring(new_workspace), follow = false }))
|
2026-06-08 18:28:10 +01:00
|
|
|
end, { description = "Move window to workspace " .. workspace_map[i] })
|
2026-06-07 19:32:56 +01:00
|
|
|
end
|