aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/xkeyboard-config/types/level5
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/xkeyboard-config/types/level5')
-rw-r--r--xorg-server/xkeyboard-config/types/level5217
1 files changed, 217 insertions, 0 deletions
diff --git a/xorg-server/xkeyboard-config/types/level5 b/xorg-server/xkeyboard-config/types/level5
new file mode 100644
index 000000000..05dafecf6
--- /dev/null
+++ b/xorg-server/xkeyboard-config/types/level5
@@ -0,0 +1,217 @@
+// $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";
+ };
+
+};
+