From 5526b559cf1e108155facf01e786b62326464313 Mon Sep 17 00:00:00 2001 From: unexplrd Date: Thu, 19 Jun 2025 16:46:45 +0300 Subject: [PATCH] modules/shared/nixos/default.nix: refactor keyd Signed-off-by: unexplrd --- modules/shared/nixos/default.nix | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/modules/shared/nixos/default.nix b/modules/shared/nixos/default.nix index 14c7903..76605bc 100644 --- a/modules/shared/nixos/default.nix +++ b/modules/shared/nixos/default.nix @@ -45,17 +45,25 @@ in { internal = { ids = ["0001:0001" "048d:c101"]; settings.main = let - idleTimeout = toString 200; - holdTimeout = toString 150; + # finger = mod; + pinky = "alt"; + ring = "meta"; + middle = "control"; + index = "shift"; + # timeouts + idle = "200"; + hold = "150"; + # function takes finger and letter + homeRowMod = f: l: "lettermod(${f}, ${l}, ${idle}, ${hold})"; in { - a = "lettermod(alt, a, ${idleTimeout}, ${holdTimeout})"; - s = "lettermod(meta, s, ${idleTimeout}, ${holdTimeout})"; - d = "lettermod(control, d, ${idleTimeout}, ${holdTimeout})"; - f = "lettermod(shift, f, ${idleTimeout}, ${holdTimeout})"; - j = "lettermod(shift, j, ${idleTimeout}, ${holdTimeout})"; - k = "lettermod(control, k, ${idleTimeout}, ${holdTimeout})"; - l = "lettermod(meta, l, ${idleTimeout}, ${holdTimeout})"; - ";" = "lettermod(alt, ;, ${idleTimeout}, ${holdTimeout})"; + "a" = homeRowMod pinky "a"; + "s" = homeRowMod ring "s"; + "d" = homeRowMod middle "d"; + "f" = homeRowMod index "f"; + "j" = homeRowMod index "j"; + "k" = homeRowMod middle "k"; + "l" = homeRowMod ring "l"; + ";" = homeRowMod pinky ";"; }; }; };