about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-08-30 20:53:21 +0200
committerSoispha <soispha@vhack.eu>2023-08-30 21:40:30 +0200
commitfe00eefdc013d243dc4abbba618738c6dcf1de60 (patch)
tree56c2fd4626f57d83508f16ef3b235e600a0dcec7
parentFix(hm/conf/lf/keymaps): Run the rename command in the console (diff)
downloadnixos-config-fe00eefdc013d243dc4abbba618738c6dcf1de60.tar.gz
nixos-config-fe00eefdc013d243dc4abbba618738c6dcf1de60.zip
Feat(sys/locale): Add a keymap with special char support
Diffstat (limited to '')
-rw-r--r--sys/locale/default.nix8
-rw-r--r--sys/locale/keymaps/us_modified.xkb14
2 files changed, 22 insertions, 0 deletions
diff --git a/sys/locale/default.nix b/sys/locale/default.nix
index 1e7786cc..d4a44b6b 100644
--- a/sys/locale/default.nix
+++ b/sys/locale/default.nix
@@ -32,5 +32,13 @@ in {
     console = {
       inherit (cfg) keyMap;
     };
+
+    services.xserver.extraLayouts = {
+      "us-modified" = {
+        description = "standard us with german and swedish extra chars.";
+        languages = ["eng" "swe" "deu"];
+        symbolsFile = ./keymaps/us_modified.xkb;
+      };
+    };
   };
 }
diff --git a/sys/locale/keymaps/us_modified.xkb b/sys/locale/keymaps/us_modified.xkb
new file mode 100644
index 00000000..711f0d0e
--- /dev/null
+++ b/sys/locale/keymaps/us_modified.xkb
@@ -0,0 +1,14 @@
+partial alphanumeric_keys
+xkb_symbols "us-modified" {
+    name[Group1]= "US English with additional keys";
+
+    key <AD09>  {[  o,  O,  ö,  Ö]};
+    key <AD07>  {[  u,  U,  ü,  Ü]};
+    key <AC01>  {[  a,  A,  ä,  Ä,  å,  Å]};
+
+
+    include "us(basic)"
+    include "level3(caps_switch)"
+    include "level5(ralt_switch)"
+}
+// vim: ft=xkb