German keyboard layout kinesis ego advantage2

revision ae75255a4d0224fcc41b6e6a6c4c69f7b217797a

raw

cweiske-kinesis.xkb

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
partial
xkb_types "complete" {
    type "FOUR_LEVEL_RALT" {
        modifiers= Shift+LevelThree;
        map[Shift]= Level2;
        map[LevelThree]= Level3;
        map[Shift+LevelThree]= Level4;
        level_name[Level1]= "Base";
        level_name[Level2]= "Shift";
        level_name[Level3]= "Level3";
        level_name[Level4]= "Shift Level3";
    };
};
 
partial
xkb_symbols "pc+de(nodeadkeys)+us:2+de:3+inet(evdev)" {
    include "pc+de(nodeadkeys)+us:2+de:3+inet(evdev)"
 
    key <AC01> {
        type[group1]= "FOUR_LEVEL_ALPHABETIC",
        type[group2]= "FOUR_LEVEL_RALT",
        type[group3]= "FOUR_LEVEL_ALPHABETIC",
        symbols[Group1]= [               a,               A,              ae,              AE ],
        symbols[Group2]= [               a,               A,      adiaeresis,      Adiaeresis ],
        symbols[Group3]= [               a,               A,              ae,              AE ]
    };
    key <AC02> {
        type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
        type[group2]= "FOUR_LEVEL_RALT",
        type[group3]= "FOUR_LEVEL_SEMIALPHABETIC",
        symbols[Group1]= [               s,               S,           U017F,           U1E9E ],
        symbols[Group2]= [               s,               S,          ssharp,          ssharp ],
        symbols[Group3]= [               s,               S,           U017F,           U1E9E ]
    };
 
    key <AD03> {
        type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
        type[group2]= "FOUR_LEVEL_RALT",
        type[group3]= "FOUR_LEVEL_SEMIALPHABETIC",
        symbols[Group1]= [               e,               E,        EuroSign,        EuroSign ],
        symbols[Group2]= [               e,               E,        EuroSign,        EuroSign ],
        symbols[Group3]= [               e,               E,        EuroSign,        EuroSign ]
    };
    key <AD07> {
        type[group1]= "FOUR_LEVEL_SEMIALPHABETIC",
        type[group2]= "FOUR_LEVEL_RALT",
        type[group3]= "FOUR_LEVEL_SEMIALPHABETIC",
        symbols[Group1]= [               u,               U,       downarrow,         uparrow ],
        symbols[Group2]= [               u,               U,      udiaeresis,      Udiaeresis ],
        symbols[Group3]= [               u,               U,       downarrow,         uparrow ]
    };
    key <AD09> {
        type[group1]= "FOUR_LEVEL_ALPHABETIC",
        type[group2]= "FOUR_LEVEL_RALT",
        type[group3]= "FOUR_LEVEL_ALPHABETIC",
        symbols[Group1]= [               o,               O,          oslash,          Oslash ],
        symbols[Group2]= [               o,               O,      odiaeresis,      Odiaeresis ],
        symbols[Group3]= [               o,               O,          oslash,          Oslash ]
    };
};
 
raw

fix-xmodmap-kinesis.sh

1
2
3
#!/bin/sh
xkbcomp ~/.config/xkb-keyboard/cweiske-kinesis-full.xkb $DISPLAY
 
raw

qwerty.txt

[tab]>[caps]
[caps]>[tab]
[Z]>[Y]
[Y]>[Z]
[rwin]>[ralt]
[kp-rwin]>[kp-ralt]
{rctrl}{f8}>{-lctrl}{t}{+lctrl}
{lctrl}{f8}>{-lctrl}{t}{+lctrl}
{rctrl}{t}>{-lshift}{4}{+lshift}{t}{h}{i}{s}{hyphen}{-lshift}{.}{+lshift}
{lctrl}{t}>{-lshift}{4}{+lshift}{t}{h}{i}{s}{hyphen}{-lshift}{.}{+lshift}
{rctrl}{bspace}>{-lalt}{tab}{+lalt}
{lctrl}{bspace}>{-lalt}{tab}{+lalt}
{rctrl}{=}>{space}{=}{-lshift}{.}{+lshift}{space}
{lctrl}{=}>{space}{=}{-lshift}{.}{+lshift}{space}
{rctrl}{hyphen}>{hyphen}{-lshift}{.}{+lshift}
{lctrl}{hyphen}>{hyphen}{-lshift}{.}{+lshift}
raw

state.txt

startup_file=qwerty.txt
key_click_tone=OFF
toggle_tone=ON
macro_disable=OFF
macro_speed=9
status_play_speed=4
power_user=true
program_key_lock=OFF

History