diff --git a/hypr/hyprland/binds.lua b/hypr/hyprland/binds.lua index 6760a40..dc4179f 100644 --- a/hypr/hyprland/binds.lua +++ b/hypr/hyprland/binds.lua @@ -27,7 +27,8 @@ bind("SUPER + B", hl.dsp.layout("togglesplit")) bind("SUPER + SPACE", hl.dsp.global("quickshell:peek_bar")) bind("SUPER + SPACE", hl.dsp.global("quickshell:peek_bar"), {release = true}) -bind("SUPER + SUPER_L", hl.dsp.exec_cmd("quickshell ipc call topbar toggle")) +bind("SUPER + SUPER_L", hl.dsp.exec_cmd("quickshell ipc call topbar toggle"), {device = {inclusive = false, list = {"zikway-hid-gamepad-keyboard"}}}) +bind("SUPER + SUPER_R", hl.dsp.workspace.toggle_special(), {device = {inclusive = true, list = {"zikway-hid-gamepad-keyboard"}}}) -- Move/resize windows bind("SUPER + H", hl.dsp.window.move({direction = "l"})) @@ -193,11 +194,9 @@ bind("SHIFT + XF86Display", hl.dsp.exec_cmd("~/.config/scripts/vnc-toggle.sh")) bind("XF86Display", hl.dsp.exec_cmd("pkill -x quickshell; quickshell")) bind("SUPER + D", hl.dsp.exec_cmd("wayscriber --active")) bind("SUPER + SHIFT + D", hl.dsp.exec_cmd("wl-paste | satty -f -")) +bind("SUPER + R", hl.dsp.exec_cmd("quickshell ipc call overlay open")) -- Open favourites -bind("SUPER + G", hl.dsp.exec_cmd("zen-browser")) -bind("SUPER + C", hl.dsp.exec_cmd("vesktop")) -bind("SUPER + R", hl.dsp.exec_cmd("keepassxc")) bind("SUPER + L", hl.dsp.exec_cmd("kitty")) -- Pass keybinds to ninjabrainbot @@ -211,3 +210,7 @@ bind("KP_PRIOR", hl.dsp.send_shortcut({mods = "CTRL + SHIFT", key = "D", window -- Remappings for prev and next bind("ALT + SLASH", hl.dsp.send_shortcut({mods = "ALT", key = "LEFT"})) bind("ALT + EQUAL", hl.dsp.send_shortcut({mods = "ALT", key = "RIGHT"})) + +-- Autoclicker +-- bind("a", hl.dsp.send_shortcut({mods = "", key = "mouse:272"}), {repeating = true}) +-- hl.config({input = {repeat_rate = 1000}}) diff --git a/hypr/hyprland/mcsr.lua b/hypr/hyprland/mcsr.lua index df213d3..4916d91 100644 --- a/hypr/hyprland/mcsr.lua +++ b/hypr/hyprland/mcsr.lua @@ -5,15 +5,15 @@ end -- #MCSR hl.define_submap("mcsr", function() - -- Tall macro - hl.bind("KP_END", hl.dsp.window.fullscreen_state({internal = 0, client = 0})) - hl.bind("KP_END", hl.dsp.window.float({action = "on"})) - hl.bind("KP_END", hl.dsp.window.resize({x = 1920, y = 16384})) - hl.bind("KP_END", hl.dsp.window.move({x = 600, y = -7472})) - hl.bind("KP_END", hl.dsp.exec_cmd("quickshell ipc call boateye open")) - hl.bind("KP_END", hl.dsp.exec_cmd("quickshell ipc call thin close")) + -- Eyezoom + hl.bind("KP_END", hl.dsp.window.fullscreen_state({internal = 0, client = 0}), {ignore_mods = true}) + hl.bind("KP_END", hl.dsp.window.float({action = "on"}), {ignore_mods = true}) + hl.bind("KP_END", hl.dsp.window.resize({x = 1920, y = 16384}), {ignore_mods = true}) + hl.bind("KP_END", hl.dsp.window.move({x = 600, y = -7472}), {ignore_mods = true}) + hl.bind("KP_END", hl.dsp.exec_cmd("quickshell ipc call boateye open"), {ignore_mods = true}) + hl.bind("KP_END", hl.dsp.exec_cmd("quickshell ipc call thin close"), {ignore_mods = true}) - -- Thin macro + -- Thin hl.bind("KP_DOWN", hl.dsp.window.fullscreen_state({internal = 0, client = 0})) hl.bind("KP_DOWN", hl.dsp.window.float({action = "on"})) hl.bind("KP_DOWN", hl.dsp.window.resize({x = 400, y = 1420})) @@ -21,7 +21,7 @@ hl.define_submap("mcsr", function() hl.bind("KP_DOWN", hl.dsp.exec_cmd("quickshell ipc call thin open")) hl.bind("KP_DOWN", hl.dsp.exec_cmd("quickshell ipc call boateye close")) - -- Wide macro + -- Wide hl.bind("KP_NEXT", hl.dsp.window.fullscreen_state({internal = 0, client = 0})) hl.bind("KP_NEXT", hl.dsp.window.float({action = "on"})) hl.bind("KP_NEXT", hl.dsp.window.resize({x = 2540, y = 400})) @@ -32,9 +32,13 @@ hl.define_submap("mcsr", function() remap("1", "apostrophe") remap("apostrophe", "1") remap("k", "0") + remap("0", "k") remap("semicolon", "w") end) +-- See https://github.com/hyprwm/Hyprland/discussions/15058 +remap("mouse:275", "f3") + -- Close boateye -- FIXME: use hl.on() to couple this to the actions of fullscreening/floating -- instead of the keybinds @@ -47,4 +51,10 @@ bind("KP_BEGIN", hl.dsp.pass({window = "class:ninjabrainbot-Main"})) bind("KP_BEGIN", hl.dsp.pass({window = "class:ninjabrainbot-Main"}), {release = true}) bind("KP_RIGHT", hl.dsp.pass({window = "class:ninjabrainbot-Main"})) bind("KP_RIGHT", hl.dsp.pass({window = "class:ninjabrainbot-Main"}), {release = true}) +bind("SHIFT + KP_BEGIN", hl.dsp.pass({window = "class:ninjabrainbot-Main"})) +bind("SHIFT + KP_BEGIN", hl.dsp.pass({window = "class:ninjabrainbot-Main"}), {release = true}) +-- bind("A", hl.dsp.global("chlorostroke:apressed"), {non_consuming = true, ignore_mods = true}) +-- bind("A", hl.dsp.global("chlorostroke:apressed"), {non_consuming = true, ignore_mods = true, release = true}) +-- bind("S", hl.dsp.global("chlorostroke:spressed"), {non_consuming = true, ignore_mods = true}) +-- bind("S", hl.dsp.global("chlorostroke:spressed"), {non_consuming = true, ignore_mods = true, release = true}) diff --git a/hypr/hyprland/rules.lua b/hypr/hyprland/rules.lua index 22d1141..2b9d6a7 100644 --- a/hypr/hyprland/rules.lua +++ b/hypr/hyprland/rules.lua @@ -53,11 +53,24 @@ hl.window_rule({ float = true, size = { "monitor_w*0.95", "monitor_h*0.95"} }) +hl.window_rule({ + match = { + title = "monoverlay" + }, + float = true, + pin = true +}) hl.layer_rule({ match = { namespace = "quickshell" }, no_anim = true }) +hl.on("window.open", function (window, active) + if hl.get_active_monitor().active_special_workspace ~= nil then + hl.dispatch(hl.dsp.window.move({workspace = hl.get_active_monitor().active_workspace, window = window})) + end +end) + hl.on("window.active", function(window, active) if window == nil or window.class == nil then hl.dispatch(hl.dsp.submap("reset"))