tmk_keyboard/keyboard/ergodox/addons/etc/layout/xkb/workman
2013-09-09 05:46:46 +03:00

180 lines
8.9 KiB
Text

// workman layouts
// see http://viralintrospection.wordpress.com/2010/09/06/a-different-philosophy-in-designing-keyboard-layouts/
// xkb keymap prepared by Oleg Kostyuk <cub@cub.org.ua>
// copyright 2012, bsd license
// to use, copy to /usr/share/X11/xkb/symbols/workman and add the following
// lines to /usr/share/X11/xkb/symbols.dir:
//
// -dp----- a------- workman(wkm)
// --p----- a------- workman(wcp)
// --p----- a------- workman(wco)
// --p----- a------- workman(wdp)
//
// then load with, e.g.
//
// setxkbmap workman # default layout
// setxkbmap -layout workman -variant wdp # to select other variants
default
partial alphanumeric_keys
xkb_symbols "wkm" {
name[Group1] = "The Workman Keyboard Layout";
include "latin"
include "latin(nodeadkeys)"
name[Group1] = "QFMLWY - full optimization, QWERTY lettermask";
// Unmodified Shift AltGr Shift+AltGr
key <AD01> { [ q, Q, at, Greek_OMEGA ] };
key <AD02> { [ d, D, dstroke, ordfeminine ] };
key <AD03> { [ r, R, mu, masculine ] };
key <AD04> { [ w, W, lstroke, Lstroke ] };
key <AD05> { [ b, B, lstroke, Lstroke ] };
key <AD06> { [ j, J, leftarrow, yen ] };
key <AD07> { [ f, F, downarrow, uparrow ] };
key <AD08> { [ u, U, oslash, Ooblique ] };
key <AD09> { [ p, P, rightdoublequotemark, rightsinglequotemark ] };
key <AD10> { [ semicolon, colon, rightdoublequotemark, rightsinglequotemark ] };
// Unmodified Shift AltGr Shift+AltGr
key <AC01> { [ a, A, eth, ETH ] };
key <AC02> { [ s, S, ssharp, section ] };
key <AC03> { [ h, H, tslash, Tslash ] };
key <AC04> { [ t, T ] };
key <AC05> { [ g, G, paragraph, registered ] };
key <AC06> { [ y, Y, rightarrow, idotless ] };
key <AC07> { [ n, N, ae, AE ] };
key <AC08> { [ e, E, EuroSign ] };
key <AC09> { [ o, O, hstroke, Hstroke ] };
key <AC10> { [ i, I, hstroke, Hstroke ] };
// Unmodified Shift AltGr Shift+AltGr
key <AB01> { [ z, Z, guillemotleft, less ] };
key <AB02> { [ x, X, leftdoublequotemark, leftsinglequotemark ] };
key <AB03> { [ m, M, eng, ENG ] };
key <AB04> { [ c, C, cent, copyright ] };
key <AB05> { [ v, V, guillemotright, greater ] };
key <AB06> { [ k, K, thorn, THORN ] };
key <AB07> { [ l, L, kra, ampersand ] };
};
partial alphanumeric_keys
xkb_symbols "wco" {
include "workman(wkm)"
name[Group1] = "Workman for Programmers, with light modifications from cub@uanic (old)";
// Unmodified Shift AltGr Shift+AltGr
// symbols row, left side
key <TLDE> { [ asciitilde, grave, dead_grave ] };
key <AE01> { [ exclam, 1, exclamdown ] };
key <AE02> { [ braceleft, 2, currency ] };
key <AE03> { [ numbersign, 3, cent ] };
key <AE04> { [ semicolon, 4, yen ] };
key <AE05> { [ braceright, 5, EuroSign ] };
key <AE06> { [ bracketleft, 6, sterling ] };
// symbols row, right side
key <AE07> { [ ampersand, 7 ] };
key <AE08> { [ asterisk, 8, onehalf ] };
key <AE09> { [ parenleft, 9 ] };
key <AE10> { [ parenright, 0 ] };
key <AE11> { [ bracketright, percent ] };
key <AE12> { [ equal, plus ] };
key <BKSP> { [ BackSpace ] };
// upper row, right side
key <AD10> { [ dollar, at, dead_acute, dead_doubleacute ] };
key <AD11> { [ colon, asciicircum, dead_circumflex, dead_caron ] };
key <AD12> { [ apostrophe, quotedbl ] };
// home row, right side
key <AC11> { [ minus, underscore, hyphen ] };
// lower row, left side
key <LSGT> { [ greater, less, bar, brokenbar ] };
};
partial alphanumeric_keys
xkb_symbols "wcp" {
include "workman(wco)"
name[Group1] = "Workman for Programmers, with light modifications from cub@uanic";
// Unmodified Shift AltGr Shift+AltGr
// symbols row, left side
key <AE01> { [ semicolon, 1, exclamdown ] };
key <AE02> { [ exclam, 2, currency ] };
key <AE04> { [ braceleft, 4, yen ] };
// symbols row, right side
key <AE07> { [ bracketright, 7 ] };
key <AE11> { [ ampersand, percent ] };
};
partial alphanumeric_keys
xkb_symbols "wce" {
include "workman(wcp)"
name[Group1] = "Workman for Programmers, with light modifications from cub@uanic, for Ergodox";
// Unmodified Shift AltGr Shift+AltGr
key <AD11> { [ apostrophe, quotedbl ] };
key <AD12> { [ asciicircum, backslash ] };
key <AC11> { [ colon, percent ] };
key <AE11> { [ underscore, minus, hyphen ] };
key <BKSL> { [ bar, ampersand ] };
};
partial alphanumeric_keys
xkb_symbols "wdp" {
include "workman(wkm)"
name[Group1] = "Workman for Programmers, with modifications from Dvorak for programmers";
// Unmodified Shift AltGr Shift+AltGr
// symbols row, left side
key <TLDE> { [ asciitilde, grave, dead_grave ] };
key <AE01> { [ semicolon, ampersand ] };
key <AE02> { [ bracketleft, 7, currency ] };
key <AE03> { [ braceleft, 5, cent ] };
key <AE04> { [ braceright, 3, yen ] };
key <AE05> { [ parenleft, 1, EuroSign ] };
key <AE06> { [ equal, 9, sterling ] };
// symbols row, right side
key <AE07> { [ asterisk, 0 ] };
key <AE08> { [ parenright, 2, onehalf ] };
key <AE09> { [ plus, 4 ] };
key <AE10> { [ bracketright, 6 ] };
key <AE11> { [ percent, 8 ] };
key <AE12> { [ exclam, numbersign, exclamdown ] };
key <BKSP> { [ BackSpace ] };
// upper row, right side
key <AD10> { [ dollar, at, dead_acute, dead_doubleacute ] };
key <AD11> { [ colon, asciicircum, dead_circumflex, dead_caron ] };
key <AD12> { [ apostrophe, quotedbl ] };
// home row, right side
key <AC11> { [ minus, underscore, hyphen ] };
// lower row, left side
key <LSGT> { [ greater, less, bar, brokenbar ] };
};