aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Weigl-Bosker <stefan@s00.xyz>2025-10-01 12:20:53 -0400
committerStefan Weigl-Bosker <stefan@s00.xyz>2025-10-01 12:20:53 -0400
commit5d25d192a4af921b1647b88af377463b45e02fc3 (patch)
tree04419b9d370cf1cb5617d3374749c45bc11c3192
parent06e0235f00ba00c186622f12f58e0b2888de92f5 (diff)
downloadhome-5d25d192a4af921b1647b88af377463b45e02fc3.tar.gz
nixos/keyd: special case for HHKB pro hybrid
-rw-r--r--nixos/keyd.nix63
1 files changed, 62 insertions, 1 deletions
diff --git a/nixos/keyd.nix b/nixos/keyd.nix
index 6ca7563..e2995d8 100644
--- a/nixos/keyd.nix
+++ b/nixos/keyd.nix
@@ -22,7 +22,7 @@ in
enable = true;
keyboards = {
defaults = {
- ids = [ "*" ];
+ ids = [ "0001:0001:70533846" ]; # AT Translated Set 2 keyboard (generic/laptop keyboard)
settings = {
main = {
capslock = "overload(control, esc)";
@@ -82,6 +82,67 @@ in
};
extraConfig = '''';
};
+ hhkb = {
+ ids = [ "04fe:0021:532594f8" ]; # AT Translated Set 2 keyboard (generic/laptop keyboard)
+ settings = {
+ main = {
+ leftcontrol = "overload(control, esc)";
+ # esc = "capslock";
+ esc = "overload(nav, esc)";
+ leftalt = "overload(leftalt, tab)"; # TODO: tab not working
+ rightalt = "overload(symbols, enter)";
+ rightcontrol = "overload(symbols, backspace)";
+ # homerow mods
+ # a = "lettermod(meta, a, 150, 200)";
+ # s = "lettermod(alt, s, 150, 200)";
+ # d = "lettermod(control, d, 150, 200)";
+ # f = "lettermod(shift, f, 150, 200)";
+ #
+ # j = "lettermod(shift, j, 150, 200)";
+ # k = "lettermod(control, k, 150, 200)";
+ # l = "lettermod(alt, l, 150, 200)";
+ # ";" = "lettermod(meta, ;, 150, 200)";
+ };
+ nav = {
+ h = "left";
+ j = "down";
+ k = "up";
+ l = "right";
+ };
+ symbols = {
+ q = "[";
+ w = "&";
+ e = "*";
+ r = "(";
+ t = "]";
+ a = ";";
+ s = "$";
+ d = "%";
+ f = "^";
+ g = "=";
+ z = "`";
+ x = "!";
+ c = "@";
+ v = "#";
+ b = "\\";
+ leftmeta = "(";
+ leftalt = ")";
+ space = "-";
+ };
+ "symbols+shift" = {
+ q = "{";
+ t = "}";
+ a = ":";
+ s = ''"'';
+ d = "'";
+ g = "+";
+ z = "~";
+ b = "|";
+ space = "_";
+ };
+ };
+ extraConfig = '''';
+ };
};
};
};