summaryrefslogtreecommitdiff
path: root/types/level5
blob: c8d6f3d9f136dbda2b1b5d8019c6977a4ead82d5 (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
89
90
91
92
93
94
95
// $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_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";
    };

};