From 1836c6c2341be86b5a79263c79675360e06be523 Mon Sep 17 00:00:00 2001 From: alexion Date: Sun, 11 Oct 2026 14:57:32 -0400 Subject: [PATCH] feat(registry): add repeating keybind option --- configs/nixos/modules/desktop/session/hyprland/default.nix | 6 +++++- configs/nixos/registry/keybind.nix | 7 +++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/configs/nixos/modules/desktop/session/hyprland/default.nix b/configs/nixos/modules/desktop/session/hyprland/default.nix index af463c9..5dee9af 100644 --- a/configs/nixos/modules/desktop/session/hyprland/default.nix +++ b/configs/nixos/modules/desktop/session/hyprland/default.nix @@ -65,6 +65,7 @@ name = "hyprland-resize-${direction}"; value = { keys = "SUPER + ALT + ${key}"; + repeating = true; action = { kind = "resize-window"; inherit direction; @@ -162,7 +163,10 @@ } .${keybind.action.kind} )) - ]; + ] + ++ lib.optional keybind.repeating { + repeating = true; + }; }) (lib.attrByPath [ config.networking.hostName ] { } config.registry.keybind); }; }; diff --git a/configs/nixos/registry/keybind.nix b/configs/nixos/registry/keybind.nix index ddaef59..7abd253 100644 --- a/configs/nixos/registry/keybind.nix +++ b/configs/nixos/registry/keybind.nix @@ -36,6 +36,13 @@ example = "SUPER + Return"; }; + repeating = lib.mkOption { + description = "Repeats the keybind action while the key chord is held."; + type = lib.types.bool; + default = false; + example = true; + }; + action = lib.mkOption { description = "Declares the action this keybind runs."; type = lib.types.submodule {