File: extra

package info (click to toggle)
xkeyboard-config 2.46-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 10,236 kB
  • sloc: xml: 10,062; python: 2,131; perl: 220; sh: 83; makefile: 17
file content (163 lines) | stat: -rw-r--r-- 5,197 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
default partial xkb_types "default" {

    // Defines types with a four-level shift, similar to the three-level
    // type from iso9995, but they let the Shift key behave "normally".

    virtual_modifiers  Alt, LevelThree, LevelFive, NumLock;

    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] = "AltGr";
	level_name[Level4] = "Shift AltGr";
    };

    type "FOUR_LEVEL_ALPHABETIC" {
	modifiers = Shift + Lock + LevelThree;
	map[None] = Level1;
	map[Shift] = Level2;
	map[Lock] = Level2;
	map[Shift+Lock] = Level1;
	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] = "AltGr";
	level_name[Level4] = "Shift AltGr";
    };

    type "FOUR_LEVEL_SEMIALPHABETIC" {
	modifiers = Shift + Lock + LevelThree;
	map[None] = Level1;
	map[Shift] = Level2;
	map[Lock] = Level2;
	map[Shift+Lock] = Level1;
	map[LevelThree] = Level3;
	map[Shift+LevelThree] = Level4;
	map[Lock+LevelThree] = Level3;
	map[Shift+Lock+LevelThree] = Level4;
	preserve[Lock+LevelThree] = Lock;
	preserve[Shift+Lock+LevelThree] = Lock;
	level_name[Level1] = "Base";
	level_name[Level2] = "Shift";
	level_name[Level3] = "AltGr";
	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.
    type "FOUR_LEVEL_MIXED_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] = Level3;
	map[Shift+NumLock+LevelThree] = Level4;
	level_name[Level1] = "Base";
	level_name[Level2] = "Number";
	level_name[Level3] = "AltGr";
	level_name[Level4] = "Shift AltGr";
    };

    // A variant of FOUR_LEVEL_MIXED_KEYPAD that uses the LevelFive
    // modifier instead of NumLock, to avoid interaction with the keypad.
    // Originally created to lock the digits on layouts with digits on
    // the second level of the digits row (e.g. Azerty layouts).
    type "FOUR_LEVEL_LOCKABLE_LEVEL2" {
	modifiers = Shift + LevelThree + LevelFive;
	map[None] = Level1;
	map[Shift] = Level2;
	map[LevelFive] = Level2;
	map[Shift+LevelFive] = Level1;
	map[LevelThree] = Level3;
	map[Shift+LevelThree] = Level4;
	map[LevelFive+LevelThree] = Level3;
	map[Shift+LevelFive+LevelThree] = Level4;
	level_name[Level1] = "Base";
	level_name[Level2] = "Digit";
	level_name[Level3] = "AltGr";
	level_name[Level4] = "Shift AltGr";
    };

    // Base level, two shifted LevelThree levels, one Ctrl+Alt command level.
    type "FOUR_LEVEL_X" {
	modifiers = Shift + LevelThree + Control + Alt;
	map[None] = Level1;
	map[Shift] = Level1;
	map[LevelThree] = Level2;
	map[Shift+LevelThree] = Level3;
	map[Control+Alt] = Level4;
	level_name[Level1] = "Base";
	level_name[Level2] = "AltGr";
	level_name[Level3] = "Shift AltGr";
	level_name[Level4] = "Ctrl+Alt";
    };

    // A special type for keys used in the Serbian Latin Unicode keymap.
    // 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; etcetera).
    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[Shift+Lock+LevelThree] = Level3;
	preserve[Lock] = Lock;
	preserve[Lock+LevelThree] = Lock;
	level_name[Level1] = "Base";
	level_name[Level2] = "Shift";
	level_name[Level3] = "AltGr";
	level_name[Level4] = "Caps / Shift AltGr";
    };

    // Five levels: the normal four levels with Shift and LevelThree,
    // plus a fifth level when CapsLock (and only CapsLock) is active
    // -- CapsLock is ignored when Shift and/or LevelThree is held.
    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[Shift+Lock] = Level2;
	map[Lock+LevelThree] = Level3;
	map[Shift+Lock+LevelThree] = Level4;
	level_name[Level1] = "Base";
	level_name[Level2] = "Shift";
	level_name[Level3] = "AltGr";
	level_name[Level4] = "Shift AltGr";
	level_name[Level5] = "Lock";
    };
};