diff options
author | marha <marha@users.sourceforge.net> | 2011-02-20 14:23:37 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2011-02-20 14:23:37 +0000 |
commit | 684eb992146cad24b690073f33b909f47150b841 (patch) | |
tree | 7bc62d6f06c5e8a8114b56fa78485cb7ec08f26b /xorg-server/xkeyboard-config/types | |
parent | 53810445215dc45ae303bc89feb6e0aaf04aa6fa (diff) | |
parent | 8a191c08ddda2e66fa26f148d6c21959bb08f923 (diff) | |
download | vcxsrv-684eb992146cad24b690073f33b909f47150b841.tar.gz vcxsrv-684eb992146cad24b690073f33b909f47150b841.tar.bz2 vcxsrv-684eb992146cad24b690073f33b909f47150b841.zip |
svn merge ^/branches/released .
Diffstat (limited to 'xorg-server/xkeyboard-config/types')
-rw-r--r-- | xorg-server/xkeyboard-config/types/basic | 60 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/cancel | 23 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/caps | 338 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/complete | 26 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/default.in | 3 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/extra | 368 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/iso9995 | 38 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/level5 | 430 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/mousekeys | 23 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/numpad | 143 | ||||
-rw-r--r-- | xorg-server/xkeyboard-config/types/pc | 219 |
11 files changed, 820 insertions, 851 deletions
diff --git a/xorg-server/xkeyboard-config/types/basic b/xorg-server/xkeyboard-config/types/basic index cf1ee648b..70292ea38 100644 --- a/xorg-server/xkeyboard-config/types/basic +++ b/xorg-server/xkeyboard-config/types/basic @@ -1,31 +1,29 @@ -// $Xorg: basic,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ - -default xkb_types "basic" { - - // Fairly standard definitions for - // the four required key types - - virtual_modifiers NumLock; - - type "ONE_LEVEL" { - modifiers = None; - map[None] = Level1; - level_name[Level1]= "Any"; - }; - - type "TWO_LEVEL" { - modifiers = Shift; - map[Shift] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - }; - - type "ALPHABETIC" { - modifiers = Shift+Lock; - map[Shift] = Level2; - map[Lock] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Caps"; - }; - -}; +default xkb_types "basic" {
+
+ // Fairly standard definitions for
+ // the four required key types
+
+ virtual_modifiers NumLock;
+
+ type "ONE_LEVEL" {
+ modifiers = None;
+ map[None] = Level1;
+ level_name[Level1]= "Any";
+ };
+
+ type "TWO_LEVEL" {
+ modifiers = Shift;
+ map[Shift] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ };
+
+ type "ALPHABETIC" {
+ modifiers = Shift+Lock;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Caps";
+ };
+
+};
diff --git a/xorg-server/xkeyboard-config/types/cancel b/xorg-server/xkeyboard-config/types/cancel index 478c99c4b..ec5d7191d 100644 --- a/xorg-server/xkeyboard-config/types/cancel +++ b/xorg-server/xkeyboard-config/types/cancel @@ -1,12 +1,11 @@ -// $Xorg: cancel,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ -partial default xkb_types "Shift_Cancels_Caps" { - -override type "TWO_LEVEL" { - modifiers = Shift+Lock; - map[Shift] = Level2; - preserve[Lock]= Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; -}; - -}; +partial default xkb_types "Shift_Cancels_Caps" {
+
+override type "TWO_LEVEL" {
+ modifiers = Shift+Lock;
+ map[Shift] = Level2;
+ preserve[Lock]= Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+};
+
+};
diff --git a/xorg-server/xkeyboard-config/types/caps b/xorg-server/xkeyboard-config/types/caps index 7936df12f..08a7211b9 100644 --- a/xorg-server/xkeyboard-config/types/caps +++ b/xorg-server/xkeyboard-config/types/caps @@ -1,170 +1,168 @@ -// $XFree86: xc/programs/xkbcomp/types/caps,v 1.3 2002/11/26 02:14:02 dawes Exp $ - -// CapsLock uses internal capitalization rules -// Shift "pauses" CapsLock -partial xkb_types "internal" { - type "ALPHABETIC" { - modifiers = Shift+Lock; - map[Shift] = Level2; - preserve[Lock] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Caps"; - }; - - type "FOUR_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - preserve[Lock] = Lock; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level3; - preserve[Lock+LevelThree] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - preserve[Lock] = Lock; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; -}; -// CapsLock uses internal capitalization rules -// Shift doesn't cancel CapsLock -partial xkb_types "internal_nocancel" { - type "ALPHABETIC" { - modifiers = Shift; - map[Shift] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Caps"; - }; - - type "FOUR_LEVEL_ALPHABETIC" { - modifiers = Shift+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_SEMIALPHABETIC" { - // the same as FOUR_LEVEL_ALPHABETIC - modifiers = Shift+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; -}; -// CapsLock acts as Shift with locking -// Shift "pauses" CapsLock -partial xkb_types "shift" { - type "ALPHABETIC" { - modifiers = Shift+Lock; - map[Shift] = Level2; - map[Lock] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Caps"; - }; - - type "FOUR_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - map[Shift+Lock+LevelThree] = Level3; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; -}; -// CapsLock acts as Shift with locking -// Shift doesn't cancel CapsLock -partial xkb_types "shift_nocancel" { - type "ALPHABETIC" { - modifiers = Shift+Lock; - map[Shift] = Level2; - map[Lock] = Level2; - map[Shift+Lock] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Caps"; - }; - - type "FOUR_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[Shift+Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - map[Shift+Lock+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[Shift+Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; -}; +// CapsLock uses internal capitalization rules
+// Shift "pauses" CapsLock
+partial xkb_types "internal" {
+ type "ALPHABETIC" {
+ modifiers = Shift+Lock;
+ map[Shift] = Level2;
+ preserve[Lock] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Caps";
+ };
+
+ type "FOUR_LEVEL_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ preserve[Lock] = Lock;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level3;
+ preserve[Lock+LevelThree] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_SEMIALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ preserve[Lock] = Lock;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+ preserve[Lock+LevelThree] = Lock;
+ preserve[Lock+Shift+LevelThree] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+};
+// CapsLock uses internal capitalization rules
+// Shift doesn't cancel CapsLock
+partial xkb_types "internal_nocancel" {
+ type "ALPHABETIC" {
+ modifiers = Shift;
+ map[Shift] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Caps";
+ };
+
+ type "FOUR_LEVEL_ALPHABETIC" {
+ modifiers = Shift+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_SEMIALPHABETIC" {
+ // the same as FOUR_LEVEL_ALPHABETIC
+ modifiers = Shift+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+};
+// CapsLock acts as Shift with locking
+// Shift "pauses" CapsLock
+partial xkb_types "shift" {
+ type "ALPHABETIC" {
+ modifiers = Shift+Lock;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Caps";
+ };
+
+ type "FOUR_LEVEL_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level4;
+ map[Shift+Lock+LevelThree] = Level3;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_SEMIALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+ preserve[Lock+LevelThree] = Lock;
+ preserve[Lock+Shift+LevelThree] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+};
+// CapsLock acts as Shift with locking
+// Shift doesn't cancel CapsLock
+partial xkb_types "shift_nocancel" {
+ type "ALPHABETIC" {
+ modifiers = Shift+Lock;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[Shift+Lock] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Caps";
+ };
+
+ type "FOUR_LEVEL_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[Shift+Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level4;
+ map[Shift+Lock+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_SEMIALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[Shift+Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+ preserve[Lock+LevelThree] = Lock;
+ preserve[Lock+Shift+LevelThree] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+};
diff --git a/xorg-server/xkeyboard-config/types/complete b/xorg-server/xkeyboard-config/types/complete index 96d4fd572..2ac68082e 100644 --- a/xorg-server/xkeyboard-config/types/complete +++ b/xorg-server/xkeyboard-config/types/complete @@ -1,17 +1,9 @@ -// $XKeyboardConfig$ -// $Xorg: complete,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ -// -// -// -// -// $XFree86: xc/programs/xkbcomp/types/complete,v 1.2 2001/05/18 23:35:35 dawes Exp $ - -default xkb_types "complete" { - include "basic" - include "mousekeys" - include "pc" - include "iso9995" - include "level5" - include "extra" - include "numpad" -}; +default xkb_types "complete" {
+ include "basic"
+ include "mousekeys"
+ include "pc"
+ include "iso9995"
+ include "level5"
+ include "extra"
+ include "numpad"
+};
diff --git a/xorg-server/xkeyboard-config/types/default.in b/xorg-server/xkeyboard-config/types/default.in index 18859b742..140208ccc 100644 --- a/xorg-server/xkeyboard-config/types/default.in +++ b/xorg-server/xkeyboard-config/types/default.in @@ -1,6 +1,3 @@ -// $XKeyboardConfig$ -// $Xorg: default,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ - default xkb_types "default" { include "basic" include "pc" diff --git a/xorg-server/xkeyboard-config/types/extra b/xorg-server/xkeyboard-config/types/extra index a82fd10d2..06b1fec78 100644 --- a/xorg-server/xkeyboard-config/types/extra +++ b/xorg-server/xkeyboard-config/types/extra @@ -1,185 +1,183 @@ -// $XFree86: xc/programs/xkbcomp/types/extra,v 1.3 2002/11/26 02:14:02 dawes Exp $ - -partial default xkb_types "default" { - // Definition for a key type used for the czech keymap, for instance. - // Defines style a with four level shift. It is similar to three_level - // type used for iso9995 but it lets the shift key behave "normally". - - virtual_modifiers LevelThree; - - type "FOUR_LEVEL" { - modifiers = Shift+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - map[Lock+Shift+LevelThree] = Level3; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - type "FOUR_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - // Another four level keypad variant - // First two levels are controled by NumLock (with active Shift-ing like - // in KEYPAD). LevelThree overrides this mode, with two additional - // Shift-ed levels - // NumLock state is intentionnaly ignored when LevelThree is active - type "FOUR_LEVEL_MIXED_KEYPAD" { - modifiers = Shift+NumLock+LevelThree; - map[None] = Level1; - map[Shift+NumLock] = Level1; - map[NumLock] = Level2; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[NumLock+LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Shift+NumLock+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Number"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - }; - - // Base level, two Shift-ed LevelThree levels, one Ctrl+Alt command level - type "FOUR_LEVEL_X" { - modifiers = Shift+LevelThree+Control+Alt; - map[None] = Level1; - map[LevelThree] = Level2; - map[Shift+LevelThree] = Level3; - map[Control+Alt] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Alt Base"; - level_name[Level3] = "Shift Alt"; - level_name[Level4] = "Ctrl+Alt"; - }; - -// Special type for keys used in Serbian Latin Unicode map -// It makes it possible to use all three forms of latin letters -// present in Unicode that are made up of two separate letters -// (forms like LJ, Lj, and lj; NJ, Nj, and nj; etc) - - type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level4; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level3; - preserve[Lock]= Lock; - preserve[Lock+LevelThree]= Lock; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "AltGr Base"; - level_name[Level4] = "Shift AltGr"; - }; - -// type for e.g. german ssharp which is capitalized SS. -// CHARACTERISTICS: -// It is FOUR_LEVEL with the exception that the fifth level -// is mapped to the Lock modifier. -// If other modifiers are used, the Lock state is ignored. -// DETAILS ABOUT GERMAN: -// The capital form of ssharp (called sharp s) only exists for -// completely capitalized Text, not at the beginning of sentences -// or nouns (nouns have a captial letter at the beginning in german). -// The ssharp key, to the right of the zero key, takes this into -// account and has a questionmark mapped on shift-ssharp since -// normally no capital version is needed. -// When typing with active capsLock, this key type is needed to -// output two capital letters S because this is the only german key -// whose capital letter is not the same as the one typed with shift. - - type "FOUR_LEVEL_PLUS_LOCK" { - modifiers = Shift+Lock+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock] = Level5; - map[Lock+Shift] = Level2; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - 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] = "Number"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Alt Number"; - }; -}; - -// This enables the four level shifting also for the keypad, -// but levels 1 and 2, and 3 and 4 are swapped on Mac keypads. -partial xkb_types "mac_keypad" { - virtual_modifiers LevelThree; - - type "FOUR_LEVEL_KEYPAD" { - modifiers = Shift+NumLock+LevelThree; - map[None] = Level2; - map[Shift] = Level1; - map[NumLock] = Level1; - map[Shift+NumLock] = Level2; - map[LevelThree] = Level4; - map[Shift+LevelThree] = Level3; - map[NumLock+LevelThree] = Level3; - map[Shift+NumLock+LevelThree] = Level4; - level_name[Level2] = "Base"; - level_name[Level1] = "Number"; - level_name[Level4] = "Alt Base"; - level_name[Level3] = "Alt Number"; - }; -}; +partial default xkb_types "default" {
+ // Definition for a key type used for the czech keymap, for instance.
+ // Defines style a with four level shift. It is similar to three_level
+ // type used for iso9995 but it lets the shift key behave "normally".
+
+ virtual_modifiers LevelThree;
+
+ type "FOUR_LEVEL" {
+ modifiers = Shift+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level4;
+ map[Lock+Shift+LevelThree] = Level3;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ type "FOUR_LEVEL_SEMIALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+ preserve[Lock+LevelThree] = Lock;
+ preserve[Lock+Shift+LevelThree] = Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ // Another four level keypad variant
+ // First two levels are controled by NumLock (with active Shift-ing like
+ // in KEYPAD). LevelThree overrides this mode, with two additional
+ // Shift-ed levels
+ // NumLock state is intentionnaly ignored when LevelThree is active
+ type "FOUR_LEVEL_MIXED_KEYPAD" {
+ modifiers = Shift+NumLock+LevelThree;
+ map[None] = Level1;
+ map[Shift+NumLock] = Level1;
+ map[NumLock] = Level2;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[NumLock+LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Shift+NumLock+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Number";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ };
+
+ // Base level, two Shift-ed LevelThree levels, one Ctrl+Alt command level
+ type "FOUR_LEVEL_X" {
+ modifiers = Shift+LevelThree+Control+Alt;
+ map[None] = Level1;
+ map[LevelThree] = Level2;
+ map[Shift+LevelThree] = Level3;
+ map[Control+Alt] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Alt Base";
+ level_name[Level3] = "Shift Alt";
+ level_name[Level4] = "Ctrl+Alt";
+ };
+
+// Special type for keys used in Serbian Latin Unicode map
+// It makes it possible to use all three forms of latin letters
+// present in Unicode that are made up of two separate letters
+// (forms like LJ, Lj, and lj; NJ, Nj, and nj; etc)
+
+ type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level4;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level3;
+ preserve[Lock]= Lock;
+ preserve[Lock+LevelThree]= Lock;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "AltGr Base";
+ level_name[Level4] = "Shift AltGr";
+ };
+
+// type for e.g. german ssharp which is capitalized SS.
+// CHARACTERISTICS:
+// It is FOUR_LEVEL with the exception that the fifth level
+// is mapped to the Lock modifier.
+// If other modifiers are used, the Lock state is ignored.
+// DETAILS ABOUT GERMAN:
+// The capital form of ssharp (called sharp s) only exists for
+// completely capitalized Text, not at the beginning of sentences
+// or nouns (nouns have a captial letter at the beginning in german).
+// The ssharp key, to the right of the zero key, takes this into
+// account and has a questionmark mapped on shift-ssharp since
+// normally no capital version is needed.
+// When typing with active capsLock, this key type is needed to
+// output two capital letters S because this is the only german key
+// whose capital letter is not the same as the one typed with shift.
+
+ type "FOUR_LEVEL_PLUS_LOCK" {
+ modifiers = Shift+Lock+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock] = Level5;
+ map[Lock+Shift] = Level2;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ 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] = "Number";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Alt Number";
+ };
+};
+
+// This enables the four level shifting also for the keypad,
+// but levels 1 and 2, and 3 and 4 are swapped on Mac keypads.
+partial xkb_types "mac_keypad" {
+ virtual_modifiers LevelThree;
+
+ type "FOUR_LEVEL_KEYPAD" {
+ modifiers = Shift+NumLock+LevelThree;
+ map[None] = Level2;
+ map[Shift] = Level1;
+ map[NumLock] = Level1;
+ map[Shift+NumLock] = Level2;
+ map[LevelThree] = Level4;
+ map[Shift+LevelThree] = Level3;
+ map[NumLock+LevelThree] = Level3;
+ map[Shift+NumLock+LevelThree] = Level4;
+ level_name[Level2] = "Base";
+ level_name[Level1] = "Number";
+ level_name[Level4] = "Alt Base";
+ level_name[Level3] = "Alt Number";
+ };
+};
diff --git a/xorg-server/xkeyboard-config/types/iso9995 b/xorg-server/xkeyboard-config/types/iso9995 index 80f3ee5cf..893a6b341 100644 --- a/xorg-server/xkeyboard-config/types/iso9995 +++ b/xorg-server/xkeyboard-config/types/iso9995 @@ -1,20 +1,18 @@ -// $Xorg: iso9995,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ -partial default xkb_types "default" { - - // Definition for a key type which - // can be used to implement ISO9995 - // style level three shift - virtual_modifiers LevelThree; - - type "THREE_LEVEL" { - modifiers = Shift+LevelThree; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level3; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Level3"; - }; -}; - +partial default xkb_types "default" {
+
+ // Definition for a key type which
+ // can be used to implement ISO9995
+ // style level three shift
+ virtual_modifiers LevelThree;
+
+ type "THREE_LEVEL" {
+ modifiers = Shift+LevelThree;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level3;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Level3";
+ };
+};
diff --git a/xorg-server/xkeyboard-config/types/level5 b/xorg-server/xkeyboard-config/types/level5 index 05dafecf6..671f4b3e8 100644 --- a/xorg-server/xkeyboard-config/types/level5 +++ b/xorg-server/xkeyboard-config/types/level5 @@ -1,217 +1,213 @@ -// $XKeyboardConfig$ -// $XFree86: xc/programs/xkbcomp/types/extra,v 1.3 2002/11/26 02:14:02 dawes Exp $ - -partial default xkb_types "default" { - // Definition for a key type used for the czech keymap, for instance. - // Defines style a with four level shift. It is similar to three_level - // type used for iso9995 but it lets the shift key behave "normally". - - virtual_modifiers LevelThree,ScrollLock,LevelFive; - - type "EIGHT_LEVEL" { - modifiers = Shift+LevelThree+LevelFive; - map[None] = Level1; - map[Shift] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[LevelFive] = Level5; - map[Shift+LevelFive] = Level6; - map[LevelThree+LevelFive] = Level7; - map[Shift+LevelThree+LevelFive] = Level8; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - level_name[Level5] = "X"; - level_name[Level6] = "X Shift"; - level_name[Level7] = "X Alt Base"; - level_name[Level8] = "X Shift Alt"; - }; - - type "EIGHT_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree+LevelFive; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - map[Lock+Shift+LevelThree] = Level3; - - map[LevelFive] = Level5; - map[Shift+LevelFive] = Level6; - map[Lock+LevelFive] = Level6; - map[LevelThree+LevelFive] = Level7; - map[Shift+LevelThree+LevelFive] = Level8; - map[Lock+LevelThree+LevelFive] = Level8; - map[Lock+Shift+LevelThree+LevelFive] = Level7; - - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - level_name[Level5] = "X"; - level_name[Level6] = "X Shift"; - level_name[Level7] = "X Alt Base"; - level_name[Level8] = "X Shift Alt"; - }; - -// type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" { -// // Level5-Lock is implemented by using NumLock, because a real modifier -// // is required. -// -// modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; -// -// map[None] = Level1; -// map[Shift] = Level2; -// map[LevelThree] = Level3; -// map[LevelThree+Shift] = Level4; -// -// map[LevelFive] = Level5; -// map[LevelFive+Shift] = Level6; -// map[LevelFive+LevelThree] = Level7; -// map[LevelFive+LevelThree+Shift] = Level8; -// -// map[NumLock] = Level5; -// map[NumLock+Shift] = Level6; -// map[NumLock+LevelThree] = Level7; -// map[NumLock+LevelThree+Shift] = Level8; -// -// map[NumLock+LevelFive] = Level1; -// map[NumLock+LevelFive+Shift] = Level2; -// map[NumLock+LevelFive+LevelThree] = Level3; -// map[NumLock+LevelFive+LevelThree+Shift] = Level4; -// -// // Lock has no effect -// map[Lock] = Level1; -// map[Lock+Shift] = Level2; -// map[Lock+LevelThree] = Level3; -// map[Lock+LevelThree+Shift] = Level4; -// -// map[Lock+LevelFive] = Level5; -// map[Lock+LevelFive+Shift] = Level6; -// map[Lock+LevelFive+LevelThree] = Level7; -// map[Lock+LevelFive+LevelThree+Shift] = Level8; -// -// map[Lock+NumLock] = Level5; -// map[Lock+NumLock+Shift] = Level6; -// map[Lock+NumLock+LevelThree] = Level7; -// map[Lock+NumLock+LevelThree+Shift] = Level8; -// -// map[Lock+NumLock+LevelFive] = Level1; -// map[Lock+NumLock+LevelFive+Shift] = Level2; -// map[Lock+NumLock+LevelFive+LevelThree] = Level3; -// map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4; -// -// preserve[LevelFive+Shift] = Shift; -// preserve[NumLock+Shift] = Shift; -// preserve[Lock+LevelFive+Shift] = Shift; -// preserve[Lock+NumLock+Shift] = Shift; -// -// level_name[Level1] = "Base"; -// level_name[Level2] = "Shift"; -// level_name[Level3] = "Alt Base"; -// level_name[Level4] = "Shift Alt"; -// level_name[Level5] = "X"; -// level_name[Level6] = "X Shift"; -// level_name[Level7] = "X Alt Base"; -// level_name[Level8] = "X Shift Alt"; -// }; -// -// type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" { -// // Level5-Lock is implemented by using NumLock, because a real modifier -// // is required. -// -// modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; -// -// map[None] = Level1; -// map[Shift] = Level2; -// map[LevelThree] = Level3; -// map[LevelThree+Shift] = Level4; -// -// map[LevelFive] = Level5; -// map[LevelFive+Shift] = Level6; -// map[LevelFive+LevelThree] = Level7; -// map[LevelFive+LevelThree+Shift] = Level8; -// -// map[NumLock] = Level5; -// map[NumLock+Shift] = Level6; -// map[NumLock+LevelThree] = Level7; -// map[NumLock+LevelThree+Shift] = Level8; -// -// map[NumLock+LevelFive] = Level1; -// map[NumLock+LevelFive+Shift] = Level2; -// map[NumLock+LevelFive+LevelThree] = Level3; -// map[NumLock+LevelFive+LevelThree+Shift] = Level4; -// -// // Lock interchanges Level1 and Level2 -// map[Lock] = Level2; -// map[Lock+Shift] = Level1; -// map[Lock+LevelThree] = Level3; -// map[Lock+LevelThree+Shift] = Level4; -// -// map[Lock+LevelFive] = Level5; -// map[Lock+LevelFive+Shift] = Level6; -// map[Lock+LevelFive+LevelThree] = Level7; -// map[Lock+LevelFive+LevelThree+Shift] = Level8; -// -// map[Lock+NumLock] = Level5; -// map[Lock+NumLock+Shift] = Level6; -// map[Lock+NumLock+LevelThree] = Level7; -// map[Lock+NumLock+LevelThree+Shift] = Level8; -// -// map[Lock+NumLock+LevelFive] = Level2; -// map[Lock+NumLock+LevelFive+Shift] = Level1; -// map[Lock+NumLock+LevelFive+LevelThree] = Level4; -// map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level3; -// -// preserve[LevelFive+Shift] = Shift; -// preserve[NumLock+Shift] = Shift; -// -// level_name[Level1] = "Base"; -// level_name[Level2] = "Shift"; -// level_name[Level3] = "Alt Base"; -// level_name[Level4] = "Shift Alt"; -// level_name[Level5] = "X"; -// level_name[Level6] = "X Shift"; -// level_name[Level7] = "X Alt Base"; -// level_name[Level8] = "X Shift Alt"; -// }; - - type "EIGHT_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree+LevelFive; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - - map[LevelFive] = Level5; - map[Shift+LevelFive] = Level6; - map[Lock+LevelFive] = Level6; - map[LevelThree+LevelFive] = Level7; - map[Shift+LevelThree+LevelFive] = Level8; - map[Lock+LevelThree+LevelFive] = Level7; - map[Lock+Shift+LevelThree+LevelFive] = Level8; - - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - preserve[Lock+LevelFive] = Lock; - preserve[Lock+Shift+LevelFive] = Lock; - preserve[Lock+LevelThree+LevelFive] = Lock; - preserve[Lock+Shift+LevelThree+LevelFive] = Lock; - - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - level_name[Level5] = "X"; - level_name[Level6] = "X Shift"; - level_name[Level7] = "X Alt Base"; - level_name[Level8] = "X Shift Alt"; - }; - -}; - +partial default xkb_types "default" {
+ // Definition for a key type used for the czech keymap, for instance.
+ // Defines style a with four level shift. It is similar to three_level
+ // type used for iso9995 but it lets the shift key behave "normally".
+
+ virtual_modifiers LevelThree,ScrollLock,LevelFive;
+
+ type "EIGHT_LEVEL" {
+ modifiers = Shift+LevelThree+LevelFive;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[LevelFive] = Level5;
+ map[Shift+LevelFive] = Level6;
+ map[LevelThree+LevelFive] = Level7;
+ map[Shift+LevelThree+LevelFive] = Level8;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ level_name[Level5] = "X";
+ level_name[Level6] = "X Shift";
+ level_name[Level7] = "X Alt Base";
+ level_name[Level8] = "X Shift Alt";
+ };
+
+ type "EIGHT_LEVEL_ALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree+LevelFive;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level4;
+ map[Lock+Shift+LevelThree] = Level3;
+
+ map[LevelFive] = Level5;
+ map[Shift+LevelFive] = Level6;
+ map[Lock+LevelFive] = Level6;
+ map[LevelThree+LevelFive] = Level7;
+ map[Shift+LevelThree+LevelFive] = Level8;
+ map[Lock+LevelThree+LevelFive] = Level8;
+ map[Lock+Shift+LevelThree+LevelFive] = Level7;
+
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ level_name[Level5] = "X";
+ level_name[Level6] = "X Shift";
+ level_name[Level7] = "X Alt Base";
+ level_name[Level8] = "X Shift Alt";
+ };
+
+// type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" {
+// // Level5-Lock is implemented by using NumLock, because a real modifier
+// // is required.
+//
+// modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
+//
+// map[None] = Level1;
+// map[Shift] = Level2;
+// map[LevelThree] = Level3;
+// map[LevelThree+Shift] = Level4;
+//
+// map[LevelFive] = Level5;
+// map[LevelFive+Shift] = Level6;
+// map[LevelFive+LevelThree] = Level7;
+// map[LevelFive+LevelThree+Shift] = Level8;
+//
+// map[NumLock] = Level5;
+// map[NumLock+Shift] = Level6;
+// map[NumLock+LevelThree] = Level7;
+// map[NumLock+LevelThree+Shift] = Level8;
+//
+// map[NumLock+LevelFive] = Level1;
+// map[NumLock+LevelFive+Shift] = Level2;
+// map[NumLock+LevelFive+LevelThree] = Level3;
+// map[NumLock+LevelFive+LevelThree+Shift] = Level4;
+//
+// // Lock has no effect
+// map[Lock] = Level1;
+// map[Lock+Shift] = Level2;
+// map[Lock+LevelThree] = Level3;
+// map[Lock+LevelThree+Shift] = Level4;
+//
+// map[Lock+LevelFive] = Level5;
+// map[Lock+LevelFive+Shift] = Level6;
+// map[Lock+LevelFive+LevelThree] = Level7;
+// map[Lock+LevelFive+LevelThree+Shift] = Level8;
+//
+// map[Lock+NumLock] = Level5;
+// map[Lock+NumLock+Shift] = Level6;
+// map[Lock+NumLock+LevelThree] = Level7;
+// map[Lock+NumLock+LevelThree+Shift] = Level8;
+//
+// map[Lock+NumLock+LevelFive] = Level1;
+// map[Lock+NumLock+LevelFive+Shift] = Level2;
+// map[Lock+NumLock+LevelFive+LevelThree] = Level3;
+// map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4;
+//
+// preserve[LevelFive+Shift] = Shift;
+// preserve[NumLock+Shift] = Shift;
+// preserve[Lock+LevelFive+Shift] = Shift;
+// preserve[Lock+NumLock+Shift] = Shift;
+//
+// level_name[Level1] = "Base";
+// level_name[Level2] = "Shift";
+// level_name[Level3] = "Alt Base";
+// level_name[Level4] = "Shift Alt";
+// level_name[Level5] = "X";
+// level_name[Level6] = "X Shift";
+// level_name[Level7] = "X Alt Base";
+// level_name[Level8] = "X Shift Alt";
+// };
+//
+// type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" {
+// // Level5-Lock is implemented by using NumLock, because a real modifier
+// // is required.
+//
+// modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
+//
+// map[None] = Level1;
+// map[Shift] = Level2;
+// map[LevelThree] = Level3;
+// map[LevelThree+Shift] = Level4;
+//
+// map[LevelFive] = Level5;
+// map[LevelFive+Shift] = Level6;
+// map[LevelFive+LevelThree] = Level7;
+// map[LevelFive+LevelThree+Shift] = Level8;
+//
+// map[NumLock] = Level5;
+// map[NumLock+Shift] = Level6;
+// map[NumLock+LevelThree] = Level7;
+// map[NumLock+LevelThree+Shift] = Level8;
+//
+// map[NumLock+LevelFive] = Level1;
+// map[NumLock+LevelFive+Shift] = Level2;
+// map[NumLock+LevelFive+LevelThree] = Level3;
+// map[NumLock+LevelFive+LevelThree+Shift] = Level4;
+//
+// // Lock interchanges Level1 and Level2
+// map[Lock] = Level2;
+// map[Lock+Shift] = Level1;
+// map[Lock+LevelThree] = Level3;
+// map[Lock+LevelThree+Shift] = Level4;
+//
+// map[Lock+LevelFive] = Level5;
+// map[Lock+LevelFive+Shift] = Level6;
+// map[Lock+LevelFive+LevelThree] = Level7;
+// map[Lock+LevelFive+LevelThree+Shift] = Level8;
+//
+// map[Lock+NumLock] = Level5;
+// map[Lock+NumLock+Shift] = Level6;
+// map[Lock+NumLock+LevelThree] = Level7;
+// map[Lock+NumLock+LevelThree+Shift] = Level8;
+//
+// map[Lock+NumLock+LevelFive] = Level2;
+// map[Lock+NumLock+LevelFive+Shift] = Level1;
+// map[Lock+NumLock+LevelFive+LevelThree] = Level4;
+// map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level3;
+//
+// preserve[LevelFive+Shift] = Shift;
+// preserve[NumLock+Shift] = Shift;
+//
+// level_name[Level1] = "Base";
+// level_name[Level2] = "Shift";
+// level_name[Level3] = "Alt Base";
+// level_name[Level4] = "Shift Alt";
+// level_name[Level5] = "X";
+// level_name[Level6] = "X Shift";
+// level_name[Level7] = "X Alt Base";
+// level_name[Level8] = "X Shift Alt";
+// };
+
+ type "EIGHT_LEVEL_SEMIALPHABETIC" {
+ modifiers = Shift+Lock+LevelThree+LevelFive;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+ map[LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level4;
+
+ map[LevelFive] = Level5;
+ map[Shift+LevelFive] = Level6;
+ map[Lock+LevelFive] = Level6;
+ map[LevelThree+LevelFive] = Level7;
+ map[Shift+LevelThree+LevelFive] = Level8;
+ map[Lock+LevelThree+LevelFive] = Level7;
+ map[Lock+Shift+LevelThree+LevelFive] = Level8;
+
+ preserve[Lock+LevelThree] = Lock;
+ preserve[Lock+Shift+LevelThree] = Lock;
+ preserve[Lock+LevelFive] = Lock;
+ preserve[Lock+Shift+LevelFive] = Lock;
+ preserve[Lock+LevelThree+LevelFive] = Lock;
+ preserve[Lock+Shift+LevelThree+LevelFive] = Lock;
+
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Alt Base";
+ level_name[Level4] = "Shift Alt";
+ level_name[Level5] = "X";
+ level_name[Level6] = "X Shift";
+ level_name[Level7] = "X Alt Base";
+ level_name[Level8] = "X Shift Alt";
+ };
+
+};
diff --git a/xorg-server/xkeyboard-config/types/mousekeys b/xorg-server/xkeyboard-config/types/mousekeys index 85440ca7f..03225990a 100644 --- a/xorg-server/xkeyboard-config/types/mousekeys +++ b/xorg-server/xkeyboard-config/types/mousekeys @@ -1,13 +1,10 @@ -// $Xorg: mousekeys,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ -// -partial default xkb_types "default" { - virtual_modifiers Alt; - - type "SHIFT+ALT" { - modifiers = Shift+Alt; - map[Shift+Alt] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Shift+Alt"; - }; -}; - +partial default xkb_types "default" {
+ virtual_modifiers Alt;
+
+ type "SHIFT+ALT" {
+ modifiers = Shift+Alt;
+ map[Shift+Alt] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift+Alt";
+ };
+};
diff --git a/xorg-server/xkeyboard-config/types/numpad b/xorg-server/xkeyboard-config/types/numpad index a48e76a64..82c22a917 100644 --- a/xorg-server/xkeyboard-config/types/numpad +++ b/xorg-server/xkeyboard-config/types/numpad @@ -1,72 +1,71 @@ - -partial default xkb_types "pc" { - type "KEYPAD" { - modifiers = Shift+NumLock; - map[None] = Level1; - map[Shift] = Level2; - map[NumLock] = Level2; - map[Shift+NumLock] = Level1; - level_name[Level1] = "Base"; - level_name[Level2] = "Number"; - }; - include "extra(keypad)" -}; - -// On Mac keypads, level 1 and 2 are swapped -partial xkb_types "mac" { - type "KEYPAD" { - modifiers = Shift+NumLock; - map[None] = Level2; - map[Shift] = Level1; - map[NumLock] = Level1; - map[Shift+NumLock] = Level2; - level_name[Level2] = "Base"; - level_name[Level1] = "Number"; - }; - include "extra(mac_keypad)" -}; - -partial xkb_types "microsoft" { - type "KEYPAD" { - modifiers = Shift+NumLock; - map[None] = Level1; - preserve[Shift] = Shift; - map[NumLock] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Number"; - }; - include "extra(keypad)" -}; - -// Swiss-German style numeric keypad: Shift and NumLock operates as -// two independent modifiers; however, since we want shift state for -// the cursor keys, only three levels are used from the key mappings. -// Closest type is actually FOUR_LEVEL_X, but most numpad layouts uses -// FOUR_LEVEL_MIXED_KEYPAD so that's the one we are going to override. -partial xkb_types "shift3" { - type "FOUR_LEVEL_MIXED_KEYPAD" { - modifiers = Shift+NumLock+Control+Alt; - - // NumLock Off => navigate using cursor keys - map[None] = Level1; - - // NumLock Off + Shift pressed => select using cursor keys - preserve[Shift] = Shift; - - // NumLock On => decimal digits - map[NumLock] = Level2; - - // NumLock On + Shift pressed => auxiliary symbols, - // e.g. hexadecimal digits - map[Shift+NumLock] = Level3; - - // Ctrl + Alt, regardless of NumLock and Shift => command keys - map[Control+Alt] = Level4; - - // reverse map from levels to modifiers - level_name[Level1] = "Base"; - level_name[Level2] = "NumLock"; - level_name[Level3] = "Shift+NumLock"; - level_name[Level4] = "Ctrl+Alt"; - }; -}; +partial default xkb_types "pc" {
+ type "KEYPAD" {
+ modifiers = Shift+NumLock;
+ map[None] = Level1;
+ map[Shift] = Level2;
+ map[NumLock] = Level2;
+ map[Shift+NumLock] = Level1;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Number";
+ };
+ include "extra(keypad)"
+};
+
+// On Mac keypads, level 1 and 2 are swapped
+partial xkb_types "mac" {
+ type "KEYPAD" {
+ modifiers = Shift+NumLock;
+ map[None] = Level2;
+ map[Shift] = Level1;
+ map[NumLock] = Level1;
+ map[Shift+NumLock] = Level2;
+ level_name[Level2] = "Base";
+ level_name[Level1] = "Number";
+ };
+ include "extra(mac_keypad)"
+};
+
+partial xkb_types "microsoft" {
+ type "KEYPAD" {
+ modifiers = Shift+NumLock;
+ map[None] = Level1;
+ preserve[Shift] = Shift;
+ map[NumLock] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Number";
+ };
+ include "extra(keypad)"
+};
+
+// Swiss-German style numeric keypad: Shift and NumLock operates as
+// two independent modifiers; however, since we want shift state for
+// the cursor keys, only three levels are used from the key mappings.
+// Closest type is actually FOUR_LEVEL_X, but most numpad layouts uses
+// FOUR_LEVEL_MIXED_KEYPAD so that's the one we are going to override.
+partial xkb_types "shift3" {
+ type "FOUR_LEVEL_MIXED_KEYPAD" {
+ modifiers = Shift+NumLock+Control+Alt;
+
+ // NumLock Off => navigate using cursor keys
+ map[None] = Level1;
+
+ // NumLock Off + Shift pressed => select using cursor keys
+ preserve[Shift] = Shift;
+
+ // NumLock On => decimal digits
+ map[NumLock] = Level2;
+
+ // NumLock On + Shift pressed => auxiliary symbols,
+ // e.g. hexadecimal digits
+ map[Shift+NumLock] = Level3;
+
+ // Ctrl + Alt, regardless of NumLock and Shift => command keys
+ map[Control+Alt] = Level4;
+
+ // reverse map from levels to modifiers
+ level_name[Level1] = "Base";
+ level_name[Level2] = "NumLock";
+ level_name[Level3] = "Shift+NumLock";
+ level_name[Level4] = "Ctrl+Alt";
+ };
+};
diff --git a/xorg-server/xkeyboard-config/types/pc b/xorg-server/xkeyboard-config/types/pc index 3c1986aa3..c2d085ed5 100644 --- a/xorg-server/xkeyboard-config/types/pc +++ b/xorg-server/xkeyboard-config/types/pc @@ -1,111 +1,108 @@ -// $Xorg: pc,v 1.3 2000/08/17 19:54:48 cpqbld Exp $ -// - -partial default xkb_types "default" { - - // Some types that are necessary - // for a full implementation of - // a PC compatible keyboard. - virtual_modifiers Alt; - virtual_modifiers LevelThree; - virtual_modifiers LAlt; - virtual_modifiers RAlt; - virtual_modifiers RControl; - virtual_modifiers LControl; - - type "PC_CONTROL_LEVEL2" { - modifiers = Control; - map[None] = Level1; - map[Control] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Control"; - }; - - type "PC_LCONTROL_LEVEL2" { - modifiers = LControl; - map[None] = Level1; - map[LControl] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "LControl"; - }; - - type "PC_RCONTROL_LEVEL2" { - modifiers = RControl; - map[None] = Level1; - map[RControl] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "RControl"; - }; - - type "PC_ALT_LEVEL2" { - modifiers = Alt; - map[None] = Level1; - map[Alt] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Alt"; - }; - - type "PC_LALT_LEVEL2" { - modifiers = LAlt; - map[None] = Level1; - map[LAlt] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "LAlt"; - }; - - type "PC_RALT_LEVEL2" { - modifiers = RAlt; - map[None] = Level1; - map[RAlt] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "RAlt"; - }; - - type "CTRL+ALT" { - modifiers = Control+Alt; - map[Control+Alt] = Level2; - level_name[Level1] = "Base"; - level_name[Level2] = "Ctrl+Alt"; - }; - - // Local eight level - // Needed when you want part of your layout eight-level but can not use - // LevelFive as modifier, as this will take over right ctrl by default - // for all the layout and is too invasive for your average four-level user - // Needed to fix bug #9529 - // FIXME Should really use RControl but it's seems not to be enabled by - // default and touching this requires a lot of testing - type "LOCAL_EIGHT_LEVEL" { - modifiers = Shift+Lock+LevelThree+Control; - - map[None] = Level1; - map[Lock+Shift] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - - map[LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - - map[Control] = Level5; - map[Lock+Shift+Control] = Level5; - map[Shift+Control] = Level6; - map[Lock+Control] = Level6; - - map[LevelThree+Control] = Level7; - map[Lock+Shift+LevelThree+Control] = Level7; - map[Shift+LevelThree+Control] = Level8; - map[Lock+LevelThree+Control] = Level8; - - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Level3"; - level_name[Level4] = "Shift Level3"; - level_name[Level5] = "Ctrl"; - level_name[Level6] = "Shift Ctrl"; - level_name[Level7] = "Level3 Ctrl"; - level_name[Level8] = "Shift Level3 Ctrl"; - }; - -}; +partial default xkb_types "default" {
+
+ // Some types that are necessary
+ // for a full implementation of
+ // a PC compatible keyboard.
+ virtual_modifiers Alt;
+ virtual_modifiers LevelThree;
+ virtual_modifiers LAlt;
+ virtual_modifiers RAlt;
+ virtual_modifiers RControl;
+ virtual_modifiers LControl;
+
+ type "PC_CONTROL_LEVEL2" {
+ modifiers = Control;
+ map[None] = Level1;
+ map[Control] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Control";
+ };
+
+ type "PC_LCONTROL_LEVEL2" {
+ modifiers = LControl;
+ map[None] = Level1;
+ map[LControl] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "LControl";
+ };
+
+ type "PC_RCONTROL_LEVEL2" {
+ modifiers = RControl;
+ map[None] = Level1;
+ map[RControl] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "RControl";
+ };
+
+ type "PC_ALT_LEVEL2" {
+ modifiers = Alt;
+ map[None] = Level1;
+ map[Alt] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Alt";
+ };
+
+ type "PC_LALT_LEVEL2" {
+ modifiers = LAlt;
+ map[None] = Level1;
+ map[LAlt] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "LAlt";
+ };
+
+ type "PC_RALT_LEVEL2" {
+ modifiers = RAlt;
+ map[None] = Level1;
+ map[RAlt] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "RAlt";
+ };
+
+ type "CTRL+ALT" {
+ modifiers = Control+Alt;
+ map[Control+Alt] = Level2;
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Ctrl+Alt";
+ };
+
+ // Local eight level
+ // Needed when you want part of your layout eight-level but can not use
+ // LevelFive as modifier, as this will take over right ctrl by default
+ // for all the layout and is too invasive for your average four-level user
+ // Needed to fix bug #9529
+ // FIXME Should really use RControl but it's seems not to be enabled by
+ // default and touching this requires a lot of testing
+ type "LOCAL_EIGHT_LEVEL" {
+ modifiers = Shift+Lock+LevelThree+Control;
+
+ map[None] = Level1;
+ map[Lock+Shift] = Level1;
+ map[Shift] = Level2;
+ map[Lock] = Level2;
+
+ map[LevelThree] = Level3;
+ map[Lock+Shift+LevelThree] = Level3;
+ map[Shift+LevelThree] = Level4;
+ map[Lock+LevelThree] = Level4;
+
+ map[Control] = Level5;
+ map[Lock+Shift+Control] = Level5;
+ map[Shift+Control] = Level6;
+ map[Lock+Control] = Level6;
+
+ map[LevelThree+Control] = Level7;
+ map[Lock+Shift+LevelThree+Control] = Level7;
+ map[Shift+LevelThree+Control] = Level8;
+ map[Lock+LevelThree+Control] = Level8;
+
+ level_name[Level1] = "Base";
+ level_name[Level2] = "Shift";
+ level_name[Level3] = "Level3";
+ level_name[Level4] = "Shift Level3";
+ level_name[Level5] = "Ctrl";
+ level_name[Level6] = "Shift Ctrl";
+ level_name[Level7] = "Level3 Ctrl";
+ level_name[Level8] = "Shift Level3 Ctrl";
+ };
+
+};
|