Remove RCS tags
[xorg/xkeyboard-config] / types / pc
1 partial default xkb_types "default" {
2
3     // Some types that are necessary
4     // for a full implementation of
5     // a PC compatible keyboard.
6     virtual_modifiers Alt;
7     virtual_modifiers LevelThree;
8     virtual_modifiers LAlt;
9     virtual_modifiers RAlt;
10     virtual_modifiers RControl;
11     virtual_modifiers LControl;
12
13     type "PC_CONTROL_LEVEL2" {
14         modifiers = Control;
15         map[None] = Level1;
16         map[Control] = Level2;
17         level_name[Level1] = "Base";
18         level_name[Level2] = "Control";
19     };
20
21     type "PC_LCONTROL_LEVEL2" {
22         modifiers = LControl;
23         map[None] = Level1;
24         map[LControl] = Level2;
25         level_name[Level1] = "Base";
26         level_name[Level2] = "LControl";
27     };
28
29     type "PC_RCONTROL_LEVEL2" {
30         modifiers = RControl;
31         map[None] = Level1;
32         map[RControl] = Level2;
33         level_name[Level1] = "Base";
34         level_name[Level2] = "RControl";
35     };
36
37     type "PC_ALT_LEVEL2" {
38         modifiers = Alt;
39         map[None] = Level1;
40         map[Alt] = Level2;
41         level_name[Level1] = "Base";
42         level_name[Level2] = "Alt";
43     };
44
45     type "PC_LALT_LEVEL2" {
46         modifiers = LAlt;
47         map[None] = Level1;
48         map[LAlt] = Level2;
49         level_name[Level1] = "Base";
50         level_name[Level2] = "LAlt";
51     };
52
53     type "PC_RALT_LEVEL2" {
54         modifiers = RAlt;
55         map[None] = Level1;
56         map[RAlt] = Level2;
57         level_name[Level1] = "Base";
58         level_name[Level2] = "RAlt";
59     };
60
61     type "CTRL+ALT" {
62         modifiers = Control+Alt;
63         map[Control+Alt] = Level2;
64         level_name[Level1] = "Base";
65         level_name[Level2] = "Ctrl+Alt";
66     };
67
68    // Local eight level
69    // Needed when you want part of your layout eight-level but can not use
70    // LevelFive as modifier, as this will take over right ctrl by default
71    // for all the layout and is too invasive for your average four-level user
72    // Needed to fix bug #9529
73    // FIXME Should really use RControl but it's seems not to be enabled by
74    // default and touching this requires a lot of testing
75    type "LOCAL_EIGHT_LEVEL" {
76         modifiers = Shift+Lock+LevelThree+Control;
77
78         map[None]       = Level1;
79         map[Lock+Shift] = Level1;
80         map[Shift] = Level2;
81         map[Lock]  = Level2;
82
83         map[LevelThree]            = Level3;
84         map[Lock+Shift+LevelThree] = Level3;
85         map[Shift+LevelThree] = Level4;
86         map[Lock+LevelThree]  = Level4;
87
88         map[Control]            = Level5;
89         map[Lock+Shift+Control] = Level5;
90         map[Shift+Control] = Level6;
91         map[Lock+Control]  = Level6;
92
93         map[LevelThree+Control]            = Level7;
94         map[Lock+Shift+LevelThree+Control] = Level7;
95         map[Shift+LevelThree+Control] = Level8;
96         map[Lock+LevelThree+Control]  = Level8;
97
98         level_name[Level1] = "Base";
99         level_name[Level2] = "Shift";
100         level_name[Level3] = "Level3";
101         level_name[Level4] = "Shift Level3";
102         level_name[Level5] = "Ctrl";
103         level_name[Level6] = "Shift Ctrl";
104         level_name[Level7] = "Level3 Ctrl";
105         level_name[Level8] = "Shift Level3 Ctrl";
106     };
107
108 };