local workspace_map = { "Home", "Dev", "Art", "Gaming", "Writing", } local monitors = hl.get_monitors() -- Move active window to a workspace with SUPER + SHIFT + [1-5] for i = 1, 5 do hl.workspace_rule({ workspace = tostring((i * 2) - 1), monitor = monitors[1].name, }) if monitors[2] then hl.workspace_rule({ workspace = tostring(i * 2), monitor = monitors[2].name, }) hl.bind( "SUPER + code:1" .. (i - 1), hl.dsp.focus({ workspace = tostring(i * 2) }), { description = "Switch to workspace " .. workspace_map[i] } ) end hl.bind( "SUPER + code:1" .. (i - 1), hl.dsp.focus({ workspace = tostring((i * 2) - 1) }), { description = "Switch to workspace" .. i } ) 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 })) end, { description = "Move window to workspace " .. workspace_map[i] }) end