blob: a97deae2a5f42c36fb6f617fdd15dc42cf9f30d5 (
plain)
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
|
default partial xkb_types "default" {
// Some types that are necessary
// for a full implementation of
// a PC-compatible keyboard.
virtual_modifiers Alt, LevelThree;
type "PC_SUPER_LEVEL2" {
modifiers = Mod4;
map[None] = Level1;
map[Mod4] = Level2;
level_name[Level1] = "Base";
level_name[Level2] = "Super";
};
type "PC_CONTROL_LEVEL2" {
modifiers = Control;
map[None] = Level1;
map[Control] = Level2;
level_name[Level1] = "Base";
level_name[Level2] = "Control";
};
type "PC_ALT_LEVEL2" {
modifiers = Alt;
map[None] = Level1;
map[Alt] = Level2;
level_name[Level1] = "Base";
level_name[Level2] = "Alt";
};
type "CTRL+ALT" {
modifiers = Shift + LevelThree + Control + Alt;
map[None] = Level1;
map[Shift] = Level2;
map[LevelThree] = Level3;
map[Shift+LevelThree] = Level4;
map[Control+Alt] = Level5;
preserve[Shift] = Shift;
preserve[Shift+LevelThree] = Shift;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Alt Base";
level_name[Level4] = "Shift Alt";
level_name[Level5] = "Ctrl+Alt";
};
// Local eight level.
// Needed when you want part of your layout eight-level but cannot use
// LevelFive as modifier, as this will take over the right Ctrl by default
// for the whole layout and is too invasive for the average four-level user.
// Needed to fix bug #9529.
// FIXME: Should really use RControl but it 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";
};
};
|