summaryrefslogtreecommitdiffstats
path: root/linux/X/types
diff options
context:
space:
mode:
authorstephan <stephan@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2009-05-20 12:13:22 +0000
committerstephan <stephan@b9310e46-f624-0410-8ea1-cfbb3a30dc96>2009-05-20 12:13:22 +0000
commit45d37559f386a4d357344704e5c11d569591dcc3 (patch)
tree792a2aba3650693c927fd16d1de2eec251c12c70 /linux/X/types
parent884d0ec395fa76225b60412aa33a5ae8ca2072bf (diff)
Weitere Modifier ausgelagert um Kompatibilität zu anderen Layouts zu verbessern.
Dateien wurden gruppiert, aber die alten sicherheitshalber beibehalten. Für die neuen Dateien muss noch die Makefile editiert werden. git-svn-id: https://svn.neo-layout.org@1864 b9310e46-f624-0410-8ea1-cfbb3a30dc96
Diffstat (limited to 'linux/X/types')
-rw-r--r--linux/X/types/level5213
1 files changed, 213 insertions, 0 deletions
diff --git a/linux/X/types/level5 b/linux/X/types/level5
new file mode 100644
index 0000000..7a03d1e
--- /dev/null
+++ b/linux/X/types/level5
@@ -0,0 +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_NEO_LOCKS" {
+ // 'NumLock' is used for the (Neo-)Mod4-Lock.
+ modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
+
+ preserve[LevelFive+Shift] = Shift;
+ preserve[NumLock+Shift] = Shift;
+ preserve[Lock+LevelFive+Shift] = Shift;
+ preserve[Lock+NumLock+Shift] = Shift;
+
+ 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;
+
+ level_name[Level1] = "Neo Level1";
+ level_name[Level2] = "Neo Level2";
+ level_name[Level3] = "Neo Level3";
+ level_name[Level4] = "Neo Level5";
+ level_name[Level5] = "Neo Level4";
+ level_name[Level6] = "Neo Level4 Shift";
+ level_name[Level7] = "Neo Level6";
+ level_name[Level8] = "Neo Level6 Shift";
+ };
+
+ type "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC" {
+ // 'NumLock' is used for the (Neo-)Mod4-Lock.
+ modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
+
+ preserve[LevelFive+Shift] = Shift;
+ preserve[NumLock+Shift] = Shift;
+
+ 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] = Level3;
+ map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4;
+
+ level_name[Level1] = "Neo Level1";
+ level_name[Level2] = "Neo Level2";
+ level_name[Level3] = "Neo Level3";
+ level_name[Level4] = "Neo Level5";
+ level_name[Level5] = "Neo Level4";
+ level_name[Level6] = "Neo Level4 Shift";
+ level_name[Level7] = "Neo Level6";
+ level_name[Level8] = "Neo Level6 Shift";
+ };
+
+ 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";
+ };
+
+};
+