feat: much improved hyprland binds

This commit is contained in:
2026-07-08 15:44:19 +02:00
parent 3bec7f4d9e
commit e312c254e8
7 changed files with 108 additions and 62 deletions
+1 -5
View File
@@ -24,11 +24,6 @@ if is_docked and #hl.get_monitors() <= 1 then
timeout = 5000,
})
is_docked = false
else
hl.notification.create({
text = "Config for " .. (laptop_config and "laptop" or "desktop") .. " loaded",
timeout = 5000,
})
end
-- Core
@@ -44,6 +39,7 @@ require("hyprland.binds.main")
require("hyprland.binds.device")
require("hyprland.binds.groups")
require("hyprland.binds.launch")
require("hyprland.binds.group-launch")
require("hyprland.binds.notifications")
require("hyprland.binds.screenshot")
require("hyprland.binds.window")
@@ -0,0 +1,30 @@
local function exit_submap()
hl.dispatch(hl.dsp.submap("reset"))
end
hl.define_submap("groupedlaunch", function()
hl.bind("e", function()
hl.exec_cmd("kitty ~/projects/eth/projects/eyetap/", { workspace = 1 })
hl.exec_cmd("kitty ~/projects/eth/projects/eyetap/backend/", { workspace = 10 })
hl.exec_cmd("kitty ~/projects/eth/projects/eyetap/frontend/", { workspace = 10 })
hl.exec_cmd("librewolf http://localhost:8081")
exit_submap()
end)
hl.bind("s", function()
hl.exec_cmd("kitty ~/projects/eth/eth-summaries/", { workspace = 1 })
hl.exec_cmd("kitty ~/NextCloud/Documents/ETH/Semester4/", { workspace = 3 })
exit_submap()
end)
hl.bind("b", function()
hl.exec_cmd("alvr_dashboard", { workspace = 1 })
hl.exec_cmd("/opt/BSManager/bs-manager", { workspace = 2 })
hl.exec_cmd("steam", { workspace = 3 })
exit_submap()
end)
hl.bind("Escape", function()
exit_submap()
end)
end)
+2
View File
@@ -2,6 +2,8 @@ local function exit_submap()
hl.dispatch(hl.dsp.submap("reset"))
end
-- TODO: Improve mapping (also global mapping, for moving between els if to use regularly)
-- Improve colours
hl.define_submap("groups", function()
hl.bind("c", function()
hl.dispatch(hl.dsp.group.toggle())
+1
View File
@@ -6,6 +6,7 @@ hl.bind("SUPER + S", hl.dsp.submap("screenshot"))
hl.bind("SUPER + W", hl.dsp.submap("window"))
hl.bind("SUPER + A", hl.dsp.submap("workspace"))
hl.bind("SUPER + Q", hl.dsp.window.close())
hl.bind("SUPER + P", hl.dsp.submap("groupedlaunch"))
hl.bind("SUPER + Space", hl.dsp.exec_cmd("dms ipc call spotlight toggle"))
hl.bind("SUPER + Escape", hl.dsp.exec_cmd("wlogout"))
+2 -2
View File
@@ -10,7 +10,7 @@ hl.window_rule({
})
hl.window_rule({
match = {
title = "Minecraft|Beat Saber",
title = "Minecraft.*|Beat Saber",
},
tag = "+game",
})
@@ -32,7 +32,7 @@ hl.window_rule({
})
hl.window_rule({
match = {
title = "SteamVR Status|Open File|Media viewer|Volume Control|Picture-in-Picture|File Operation Progress|Loading|AG Controller|AG Controller|Qalculate",
title = ".*SteamVR.*|Open File.*|Media viewer|Volume Control|Picture-in-Picture|File Operation Progress|Loading.*|AG Controller|.*Qalculate.*",
},
tag = "+dialog",
})
@@ -7,7 +7,7 @@ hl.window_rule({
workspace = 1,
})
hl.window_rule({
match = { title = "ALVR|^hidden-terminator$" },
match = { title = "ALVR.*|^hidden-terminator$" },
workspace = 1,
})
@@ -17,7 +17,7 @@ hl.window_rule({
workspace = 2,
})
hl.window_rule({
match = { title = "BSManager" },
match = { title = ".*BSManager.*" },
workspace = 2,
})
@@ -28,6 +28,6 @@ hl.window_rule({
})
hl.window_rule({
match = { title = "Qalculate|AG Controller" },
match = { title = "Qalculate.*|AG Controller" },
workspace = "special",
})
+18 -1
View File
@@ -14,8 +14,25 @@ hl.config({
},
group = {
col = {
border_active = "rgba({{colors.outline_variant.default.hex_stripped}}77)",
border_active = "rgba({{colors.secondary.default.hex_stripped}}cc)",
border_inactive = "rgba({{colors.surface_container_high.default.hex_stripped}}33)",
border_locked_active = "rgba({{colors.tertiary.default.hex_stripped}}cc)",
border_locked_inactive = "rgba({{colors.surface_container_high.default.hex_stripped}}33)",
},
},
groupbar = {
font_family = "Comfortaa",
height = 12,
font_size = 10,
text_color = "rgba({{colors.on_secondary.default.hex_stripped}}aa)",
text_color_inactive = "rgba({{colors.on_surface.default.hex_stripped}}aa)",
text_color_locked_active = "rgba({{colors.on_error.default.hex_stripped}}aa)",
text_color_locked_inactive = "rgba({{colors.on_surface.default.hex_stripped}}aa)",
col = {
active = "rgba({{colors.secondary.default.hex_stripped}}aa)",
inactive = "rgba({{colors.surface_container_low.default.hex_stripped}}aa)",
locked_inactive = "rgba({{colors.surface_container_high.default.hex_stripped}}aa)",
locked_active = "rgba({{colors.error.default.hex_stripped}}aa)",
},
},
decoration = {