local function exit_submap() hl.dispatch(hl.dsp.submap("reset")) end for i = 1, 10, 1 do hl.bind("SUPER + " .. tostring(i % 10), hl.dsp.focus({ workspace = tostring(i) })) hl.bind("SUPER + SHIFT + " .. tostring(i % 10), hl.dsp.window.move({ workspace = tostring(i), follow = 1 })) end hl.bind("SUPER + h", hl.dsp.focus({ direction = "l" })) hl.bind("SUPER + l", hl.dsp.focus({ direction = "r" })) hl.bind("SUPER + j", hl.dsp.focus({ direction = "d" })) hl.bind("SUPER + k", hl.dsp.focus({ direction = "u" })) hl.bind("SUPER + M", hl.dsp.workspace.toggle_special("main")) hl.bind("SUPER + SHIFT + M", hl.dsp.window.move({ workspace = "special:main" })) hl.define_submap("workspace", function() for i = 1, 10, 1 do hl.bind(tostring(i % 10), hl.dsp.focus({ workspace = tostring(i) })) hl.bind("SHIFT + " .. tostring(i % 10), hl.dsp.window.move({ workspace = tostring(i), follow = 1 })) end hl.bind("h", hl.dsp.focus({ direction = "l" })) hl.bind("l", hl.dsp.focus({ direction = "r" })) hl.bind("j", hl.dsp.focus({ direction = "d" })) hl.bind("k", hl.dsp.focus({ direction = "u" })) hl.bind("SHIFT + l", hl.dsp.window.move({ workspace = "+1", follow = 1 })) hl.bind("SHIFT + h", hl.dsp.window.move({ workspace = "-1", follow = 1 })) hl.bind("M", hl.dsp.workspace.toggle_special("main")) hl.bind("SHIFT + M", hl.dsp.window.move({ workspace = "special:main" })) hl.bind("Escape", function() exit_submap() end) end)