summaryrefslogtreecommitdiffstats
path: root/xkb/ergodox.xkb
blob: 227097f8030503f416181af598c5358621d3848f (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
96
97
98
99
100
101
// Ravi's Ergodox xkb layout
// Enable using: xkbcomp -xkb ergodox.xkb $DISPLAY

xkb_keymap {
    xkb_keycodes  {
        include "evdev+aliases(qwerty)"
    };
    xkb_types     {
        include "complete"
    };
    xkb_compat    {
        include "complete"
    };
    xkb_symbols   {
    key <ESC>  {        [ Escape                        ]       };

    // the extra key on most European keyboards
    key <LSGT> {        [      less,    greater,          bar,    brokenbar ]   };

    // these keys are common to all layouts
    key <BKSL> {        [ backslash,    bar             ]       };
    key <SPCE> {        [        space                  ]       };


        include "srvr_ctrl(fkey2vt)"
    key <PRSC> {[  Print,  Sys_Req  ], type="PC_ALT_LEVEL2" };
    key <SCLK> {[  Scroll_Lock  ]};
    key <PAUS> {[  Pause,  Break  ], type="PC_CONTROL_LEVEL2" };

    key  <INS> {[  Insert  ]};
    key <DELE> {[  Delete  ]};
    key <HOME> {[  Home    ]};
    key  <END> {[  End     ]};
    key <PGUP> {[  Prior   ]};
    key <PGDN> {[  Next    ]};

    key   <UP> {[  Up      ]};
    key <DOWN> {[  Down    ]};
    key <LEFT> {[  Left    ]};
    key <RGHT> {[  Right   ]};

    //key <NMLK> {[  Num_Lock  ]};
        include "keypad(x11)"

    key <BKSP> {        [ BackSpace, BackSpace  ]       };

    key  <TAB> {        [ Tab,  ISO_Left_Tab    ]       };
    key <RTRN> {        [ Return        ]       };

    key <CAPS> {        [ Caps_Lock     ]       };

    key <NMLK> {        [ Num_Lock      ]       };

    key <LFSH> {        [ Shift_L       ]       };
    key <LCTL> {        [ Control_L     ]       };

    key <LWIN> {        [ Meta_L                       ]       };

    key <RTSH> {        [ Shift_R       ]       };
    key <RCTL> {        [ Control_R     ]       };

    key <RWIN> {        [ Super_L                       ]       };

    key <MENU> {        [ Menu                  ]       };

        include "us"
        include "inet(evdev)"
        include "terminate(ctrl_alt_bksp)"

        key <LALT> { [ Alt_L     ] };
        key <RALT> { [ Hyper_L     ] };

    modifier_map Shift  { Shift_L, Shift_R };
    modifier_map Lock   { Caps_Lock };
    modifier_map Control{ Control_L, Control_R };
    modifier_map Mod1   { Meta_L };
    modifier_map Mod2   { Alt_L };
    modifier_map Mod3   { Hyper_L };
    modifier_map Mod4   { Super_L, Super_R };

    //  Fake keys for virtual<->real modifiers mapping
    key <LVL3> {        [ ISO_Level3_Shift      ]       };
    key <MDSW> {        [ Mode_switch           ]       };
    modifier_map Mod5   { <LVL3>, <MDSW> };

    key <META> {        [ NoSymbol, Meta_L      ]       };
    modifier_map Mod1   { <META> };

    key <SUPR> {        [ NoSymbol, Super_L     ]       };
    modifier_map Mod4   { <SUPR> };

    key <HYPR> {        [ NoSymbol, Hyper_L     ]       };
    modifier_map Mod3   { <HYPR> };


    };
    xkb_geometry  {
        include "pc(pc104)"
    };
};