diff --git a/workspaces.lua b/workspaces.lua index 8b5d1cd..cae9aef 100644 --- a/workspaces.lua +++ b/workspaces.lua @@ -1,4 +1,52 @@ +local mainMod = "ALT" +-- Move window in direction +hl.bind(mainMod .. " + SHIFT + H", hl.dsp.window.move({ direction = "left" })) +hl.bind(mainMod .. " + SHIFT + L", hl.dsp.window.move({ direction = "right" })) +hl.bind(mainMod .. " + SHIFT + K", hl.dsp.window.move({ direction = "up" })) +hl.bind(mainMod .. " + SHIFT + J", hl.dsp.window.move({ direction = "down" })) + +-- Switch to numbered workspaces +for i = 1, 10 do + local key = i % 10 -- workspace 10 -> key 0 + hl.bind(mainMod .. " + " .. key, hl.dsp.focus({ workspace = i })) +end + +-- Previous / next workspace +hl.bind("CTRL + ALT + H", hl.dsp.focus({ workspace = "-1" })) +hl.bind("CTRL + ALT + L", hl.dsp.focus({ workspace = "+1" })) +hl.bind("CTRL + ALT + LEFT", hl.dsp.focus({ workspace = "-1" })) +hl.bind("CTRL + ALT + RIGHT", hl.dsp.focus({ workspace = "+1" })) + +-- Move window to previous / next workspace (follows the window) +hl.bind("CTRL + ALT + SHIFT + H", hl.dsp.window.move({ workspace = "-1" })) +hl.bind("CTRL + ALT + SHIFT + L", hl.dsp.window.move({ workspace = "+1" })) +hl.bind("CTRL + ALT + SHIFT + LEFT", hl.dsp.window.move({ workspace = "-1" })) +hl.bind("CTRL + ALT + SHIFT + RIGHT", hl.dsp.window.move({ workspace = "+1" })) + +-- Move window to previous / next workspace silently +hl.bind(mainMod .. " + CTRL + SHIFT + H", hl.dsp.window.move({ workspace = "-1", follow = false })) +hl.bind(mainMod .. " + CTRL + SHIFT + L", hl.dsp.window.move({ workspace = "+1", follow = false })) +hl.bind(mainMod .. " + CTRL + SHIFT + LEFT", hl.dsp.window.move({ workspace = "-1", follow = false })) +hl.bind(mainMod .. " + CTRL + SHIFT + RIGHT", hl.dsp.window.move({ workspace = "+1", follow = false })) + +-- Move window to numbered workspaces (follow) +for i = 1, 10 do + local key = i % 10 + hl.bind(mainMod .. " + SHIFT + " .. key, hl.dsp.window.move({ workspace = i })) +end + +-- Move window to numbered workspaces (silent) +for i = 1, 10 do + local key = i % 10 + hl.bind( + mainMod .. " + ALT + " .. key, + hl.dsp.window.move({ + workspace = i, + follow = false, + }) + ) +end return { start = function() end,