From 29e880194c5efe46d9b90ada6f4796ca74d045c8 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Mon, 10 Apr 2023 11:27:05 +0200 Subject: types: group the basic four-level keypad type next to its sister Seventeen years ago, commit e3a93b0f51 wanted to distinguish between a normal keypad and a Mac keypad by redefining the FOUR_LEVEL_KEYPAD type when a Mac was used. Five years later, commit 566b887f8e removed this tweaked type again, causing the types in types/numpad to always include 'extra(keypad)'. Avoid these repetitive includes and group the FOUR_LEVEL_KEYPAD type (which, by the way, is not used anywhere) before its FOUR_LEVEL_MIXED_KEYPAD variant. Signed-off-by: Benno Schulenberg --- types/extra | 38 ++++++++++++++++---------------------- types/numpad | 3 --- 2 files changed, 16 insertions(+), 25 deletions(-) (limited to 'types') diff --git a/types/extra b/types/extra index f582dae..b59f163 100644 --- a/types/extra +++ b/types/extra @@ -49,6 +49,22 @@ default partial xkb_types "default" { level_name[Level4] = "Shift AltGr"; }; + type "FOUR_LEVEL_KEYPAD" { + modifiers = Shift + NumLock + LevelThree; + map[None] = Level1; + map[Shift] = Level2; + map[NumLock] = Level2; + map[Shift+NumLock] = Level1; + map[LevelThree] = Level3; + map[Shift+LevelThree] = Level4; + map[NumLock+LevelThree] = Level4; + map[Shift+NumLock+LevelThree] = Level3; + level_name[Level1] = "Base"; + level_name[Level2] = "Shift/Numlock"; + level_name[Level3] = "AltGr"; + level_name[Level4] = "Shift/Numlock AltGr"; + }; + // A four-level keypad variant. The first two levels are controlled by // NumLock (with active shifting like in KEYPAD). LevelThree overrides // this mode, with two additional shifted levels. @@ -122,25 +138,3 @@ default partial xkb_types "default" { level_name[Level5] = "Lock"; }; }; - -// This enables the four-level shifting also for the keypad. -partial xkb_types "keypad" { - - virtual_modifiers LevelThree; - - type "FOUR_LEVEL_KEYPAD" { - modifiers = Shift + NumLock + LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[NumLock] = Level2; - map[Shift+NumLock] = Level1; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[NumLock+LevelThree] = Level4; - map[Shift+NumLock+LevelThree] = Level3; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift/Numlock"; - level_name[Level3] = "AltGr"; - level_name[Level4] = "Shift/Numlock AltGr"; - }; -}; diff --git a/types/numpad b/types/numpad index 71ef9b1..eb3fbdd 100644 --- a/types/numpad +++ b/types/numpad @@ -7,7 +7,6 @@ default partial xkb_types "pc" { level_name[Level1] = "Base"; level_name[Level2] = "Number"; }; - include "extra(keypad)" }; // On Mac keypads, level 1 and 2 are swapped. @@ -17,7 +16,6 @@ partial xkb_types "mac" { map[None] = Level2; level_name[Level2] = "Number"; }; - include "extra(keypad)" }; partial xkb_types "microsoft" { @@ -29,7 +27,6 @@ partial xkb_types "microsoft" { level_name[Level1] = "Base"; level_name[Level2] = "Number"; }; - include "extra(keypad)" }; // Swiss-German style numeric keypad: Shift and NumLock operate as -- cgit v1.2.1