diff options
| -rw-r--r-- | xkb/ergodox.xkb | 85 | ||||
| -rw-r--r-- | xkb/kinesis.xkb | 8 |
2 files changed, 93 insertions, 0 deletions
diff --git a/xkb/ergodox.xkb b/xkb/ergodox.xkb new file mode 100644 index 0000000..10d0f89 --- /dev/null +++ b/xkb/ergodox.xkb @@ -0,0 +1,85 @@ +// 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)" + include "pc(editing)" + 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> { [ Super_L ] }; + + key <RTSH> { [ Shift_R ] }; + key <RCTL> { [ Control_R ] }; + + key <RWIN> { [ Meta_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)" + }; +}; + diff --git a/xkb/kinesis.xkb b/xkb/kinesis.xkb new file mode 100644 index 0000000..84a9215 --- /dev/null +++ b/xkb/kinesis.xkb @@ -0,0 +1,8 @@ +xkb_keymap { + xkb_keycodes { include "evdev+aliases(qwerty)" }; + xkb_types { include "complete" }; + xkb_compat { include "complete" }; + xkb_symbols { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)" }; + xkb_geometry { include "kinesis(model100)" }; +}; + |
