small tweaks

This commit is contained in:
2026-05-13 15:38:00 -07:00
parent d5f473943d
commit 848522eca5
4 changed files with 82 additions and 27 deletions

View File

@@ -2,19 +2,44 @@
hl.bind("SUPER + Q", hl.dsp.window.close())
hl.bind("SUPER + M", hl.dsp.window.float())
hl.bind("SUPER + M", hl.dsp.window.center())
hl.bind("SUPER + M", function ()
local monitor = hl.get_active_monitor()
local window = hl.get_active_window()
if (monitor == nil or window == nil) then return end
if not window.floating then return end
hl.dispatch(hl.dsp.window.resize({
x = monitor.width - monitor.height * 0.1,
y = monitor.height * 0.9
}))
hl.dispatch(hl.dsp.window.center())
end)
hl.bind("SUPER + F", hl.dsp.window.fullscreen())
hl.bind("SUPER + X", hl.dsp.layout("swapsplit"))
hl.bind("SUPER + B", hl.dsp.layout("togglesplit"))
hl.bind("SUPER + SPACE", hl.dsp.global("quickshell:peek_bar"))
hl.bind("SUPER + SPACE", hl.dsp.global("quickshell:peek_bar"), {release = true})
hl.bind("SUPER + SUPER_L", hl.dsp.exec_cmd("quickshell ipc call topbar toggle"))
hl.bind("SUPER + K", hl.dsp.layout("movetoroot"))
hl.bind("SUPER + B", hl.dsp.layout("togglesplit"))
hl.bind("SUPER + x", hl.dsp.layout("swapsplit"))
-- Move/resize windows
hl.bind("SUPER + H", hl.dsp.window.move({direction = "l"}))
hl.bind("SUPER + T", hl.dsp.window.move({direction = "u"}))
hl.bind("SUPER + N", hl.dsp.window.move({direction = "d"}))
hl.bind("SUPER + S", hl.dsp.window.move({direction = "r"}))
hl.bind("SUPER + ALT + H", hl.dsp.window.resize({x = -50, y = 0, relative = true}),
{repeating = true})
hl.bind("SUPER + ALT + T", hl.dsp.window.resize({x = 0, y = -50, relative = true}),
{repeating = true})
hl.bind("SUPER + ALT + N", hl.dsp.window.resize({x = 0, y = 50, relative = true}),
{repeating = true})
hl.bind("SUPER + ALT + S", hl.dsp.window.resize({x = 50, y = 0, relative = true}),
{repeating = true})
hl.bind("SUPER + mouse:272", hl.dsp.window.drag(), ({mouse = true}))
hl.bind("SUPER + mouse:273", hl.dsp.window.resize(), ({mouse = true}))
-- Select windows ordered top to bottom, left to right
local function focus_window(n)
local function select_window(n)
local workspace = hl.get_active_special_workspace()
if workspace == nil then
workspace = hl.get_active_workspace()
@@ -32,8 +57,18 @@ local function focus_window(n)
return a.at.y < b.at.y
end
)
if windows[n] ~= nil then
hl.dispatch(hl.dsp.focus({window = windows[n]}))
return windows[n]
end
local function focus_window(n)
local window = select_window(n)
if window ~= nil then
hl.dispatch(hl.dsp.focus({window = window}))
end
end
local function swap_window(n)
local window = select_window(n)
if window ~= nil then
hl.dispatch(hl.dsp.window.swap({target = window}))
end
end
@@ -46,6 +81,15 @@ hl.bind("SUPER + SHIFT + O", function() focus_window(6) end)
hl.bind("SUPER + SHIFT + E", function() focus_window(7) end)
hl.bind("SUPER + SHIFT + U", function() focus_window(8) end)
hl.bind("SUPER + ALT + A", function() swap_window(1) end)
hl.bind("SUPER + ALT + O", function() swap_window(2) end)
hl.bind("SUPER + ALT + E", function() swap_window(3) end)
hl.bind("SUPER + ALT + U", function() swap_window(4) end)
hl.bind("SUPER + ALT + SHIFT + A", function() swap_window(5) end)
hl.bind("SUPER + ALT + SHIFT + O", function() swap_window(6) end)
hl.bind("SUPER + ALT + SHIFT + E", function() swap_window(7) end)
hl.bind("SUPER + ALT + SHIFT + U", function() swap_window(8) end)
-- Workspaces
hl.bind("SUPER + 1", hl.dsp.focus({workspace = 1}))
hl.bind("SUPER + 2", hl.dsp.focus({workspace = 2}))
@@ -67,14 +111,6 @@ hl.bind("SUPER + SHIFT + 7", hl.dsp.window.move({workspace = 7, follow = true}))
hl.bind("SUPER + SHIFT + 8", hl.dsp.window.move({workspace = 8, follow = true}))
hl.bind("SUPER + SHIFT + 9", hl.dsp.window.move({workspace = 9, follow = true}))
-- Special workspace
hl.bind("SUPER + V", hl.dsp.workspace.toggle_special())
hl.bind("SUPER + W", hl.dsp.window.move({workspace = -1}))
-- Move/resize windows
hl.bind("SUPER + mouse:272", hl.dsp.window.drag(), ({mouse = true}))
hl.bind("SUPER + mouse:273", hl.dsp.window.resize(), ({mouse = true}))
-- Multi-monitor
hl.bind("SUPER + PERIOD", hl.dsp.focus({monitor = -1}))
hl.bind("SUPER + P", hl.dsp.workspace.move({monitor = -1}))
@@ -86,6 +122,16 @@ hl.bind("switch:on:Lid Switch", hl.dsp.exec_cmd(
"quickshell ipc call lock instalock; sleep 0.5; systemctl suspend"
))
-- Special workspace
hl.bind("SUPER + V", hl.dsp.workspace.toggle_special())
hl.bind("SUPER + W", function ()
if hl.get_active_special_workspace() == nil then
hl.dispatch(hl.dsp.window.move({workspace = "special"}))
else
hl.dispatch(hl.dsp.window.move({workspace = hl.get_active_workspace()}))
end
end)
-- Adjust brightness
hl.bind(
"XF86MonBrightnessUp",