summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenno Schulenberg <bensberg@telfort.nl>2023-04-18 09:21:04 +0200
committerBenno Schulenberg <bensberg@telfort.nl>2023-04-18 11:59:29 +0200
commita1d41a4ef62ac6838f31a8e26e2fc864cd0a0082 (patch)
tree9a2671f7209490490812f5fd0a62539e1d9633c3
parent1cb7181936c269274483dff000575fa370888b78 (diff)
downloadxkeyboard-config-a1d41a4ef62ac6838f31a8e26e2fc864cd0a0082.tar.gz
symbols: map three real modifiers to keys instead of to symbols
Mapping a modifier to a symbol had the tiny advantage of not needing to explicitly specify a modifier mapping when putting the symbol onto some other key through some option. But it had the disadvantage of risking to lose the modifier mapping for the original key when the other key was just an addition and not a replacement. This generalizes the fix from the previous commit. Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
-rw-r--r--symbols/altwin23
-rw-r--r--symbols/level21
-rw-r--r--symbols/pc6
3 files changed, 18 insertions, 12 deletions
diff --git a/symbols/altwin b/symbols/altwin
index 4544176..c65c128 100644
--- a/symbols/altwin
+++ b/symbols/altwin
@@ -3,7 +3,7 @@ partial modifier_keys
xkb_symbols "meta_alt" {
key <LALT> {[ Alt_L, Meta_L ]};
key <RALT> {[ Alt_R, Meta_R ], type[group1] = "TWO_LEVEL" };
- modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
+ modifier_map Mod1 { <LALT>, <RALT> };
};
// Alt is mapped to the Super and the usual Alt.
@@ -38,7 +38,7 @@ xkb_symbols "ctrl_alt_win" {
key <RWIN> {[ Alt_R, Meta_R ]};
key <LCTL> {[ Super_L ]};
key <RCTL> {[ Super_R ]};
- modifier_map Control { <RALT>, <LALT> };
+ modifier_map Control { <LALT>, <RALT> };
modifier_map Mod1 { <LWIN>, <RWIN> };
modifier_map Mod4 { <LCTL>, <RCTL> };
};
@@ -50,8 +50,8 @@ xkb_symbols "meta_win" {
key <RALT> {[ Alt_R, Alt_R ], type[group1] = "TWO_LEVEL" };
key <LWIN> {[ Meta_L ]};
key <RWIN> {[ Meta_R ]};
- modifier_map Mod1 { Alt_L, Alt_R };
- modifier_map Mod4 { <META>, Meta_L, Meta_R };
+ modifier_map Mod1 { <LALT>, <RALT> };
+ modifier_map Mod4 { <META> };
};
// Meta is mapped to the left Super key.
@@ -59,8 +59,8 @@ partial modifier_keys
xkb_symbols "left_meta_win" {
key <LALT> {[ Alt_L, Alt_L ]};
key <LWIN> {[ Meta_L ]};
- modifier_map Mod1 { Alt_L };
- modifier_map Mod4 { <META>, Meta_L };
+ modifier_map Mod1 { <LALT> };
+ modifier_map Mod4 { <META> };
};
// Hyper is mapped to the Super keys.
@@ -81,6 +81,7 @@ xkb_symbols "menu" {
partial modifier_keys
xkb_symbols "menu_win" {
key <MENU> {[ Super_R ]};
+ modifier_map Mod4 { <MENU> };
};
// Make the right Super key an additional Alt,
@@ -91,8 +92,8 @@ xkb_symbols "alt_super_win" {
key <RWIN> {[ Alt_R, Meta_R ]};
key <LWIN> {[ Super_L ]};
key <MENU> {[ Super_R ]};
- modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
- modifier_map Mod4 { Super_L, Super_R };
+ modifier_map Mod1 { <LALT>, <RWIN> };
+ modifier_map Mod4 { <LWIN>, <MENU> };
};
// Swap the left Alt and Super.
@@ -100,6 +101,8 @@ partial modifier_keys
xkb_symbols "swap_lalt_lwin" {
key <LALT> {[ Super_L ], type[group1] = "ONE_LEVEL" };
key <LWIN> {[ Alt_L, Meta_L ]};
+ modifier_map Mod4 { <LALT> };
+ modifier_map Mod1 { <LWIN> };
};
// Swap the right Alt and Super.
@@ -107,6 +110,8 @@ hidden partial modifier_keys
xkb_symbols "swap_ralt_rwin" {
key <RALT> {[ Super_R ], type[group1] = "ONE_LEVEL" };
key <RWIN> {[ Alt_R, Meta_R ]};
+ modifier_map Mod4 { <RALT> };
+ modifier_map Mod1 { <RWIN> };
};
// Swap Alt and Super.
@@ -120,5 +125,5 @@ xkb_symbols "swap_alt_win" {
partial modifier_keys
xkb_symbols "prtsc_rwin" {
replace key <PRSC> {[ Super_R, Super_R ]};
- modifier_map Mod4 { <PRSC>, <RWIN> };
+ modifier_map Mod4 { <PRSC> };
};
diff --git a/symbols/level2 b/symbols/level2
index fa2e32d..3eb0864 100644
--- a/symbols/level2
+++ b/symbols/level2
@@ -2,4 +2,5 @@
partial modifier_keys
xkb_symbols "lsgt_switch" {
key <LSGT> {[ Shift_L ], type[group1]="ONE_LEVEL" };
+ modifier_map Shift { <LSGT> };
};
diff --git a/symbols/pc b/symbols/pc
index 1ebc105..751a598 100644
--- a/symbols/pc
+++ b/symbols/pc
@@ -26,10 +26,10 @@ xkb_symbols "pc105" {
key <MENU> {[ Menu ]};
- modifier_map Shift { Shift_L, Shift_R };
+ modifier_map Shift { <LFSH>, <RTSH> };
modifier_map Lock { Caps_Lock };
- modifier_map Control { Control_L, Control_R };
- modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
+ modifier_map Control { <LCTL>, <RCTL> };
+ modifier_map Mod1 { <LALT>, <RALT> };
modifier_map Mod2 { Num_Lock };
modifier_map Mod4 { <LWIN>, <RWIN> };