// carpalx layouts // see http://mkweb.bcgsc.ca/carpalx/ // xkb keymap prepared by sven moritz hallberg // see http://www.khjk.org/log/2011/jan/carpalx.html // copyright 2011, isc license // to use, copy to /usr/share/X11/xkb/symbols/carpalx and add the following // lines to /usr/share/X11/xkb/symbols.dir: // // -dp----- a------- carpalx(qgmlwb) // --p----- a------- carpalx(qgmlwy) // --p----- a------- carpalx(qfmlwy) // --p----- a------- carpalx(qwkrfy) // --p----- a------- carpalx(qwyrfm) // --p----- a------- carpalx(tnwmlc) // // then load with, e.g. // // setxkbmap carpalx # defaults to QGMLWB // setxkbmap -layout carpalx -variant qwkrfy # to select other variants default partial alphanumeric_keys xkb_symbols "qgmlwb" { include "carpalx(qfmlwy)" name[Group1] = "QGMLWB - full optimization, Colemak lettermask"; key { [ g, G, eng, ENG ] }; key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; key { [ y, Y, leftarrow, yen ] }; key { [ u, U, downarrow, uparrow ] }; key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; key { [ semicolon, colon, dead_acute, dead_doubleacute ] }; key { [ o, O, oslash, Ooblique ] }; key { [ h, H, hstroke, Hstroke ] }; key { [ x, X, guillemotright, greater ] }; key { [ c, C, cent, copyright ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ j, J ] }; key { [ k, K, kra, ampersand ] }; key { [ p, P, thorn, THORN ] }; }; partial alphanumeric_keys xkb_symbols "qgmlwy" { include "carpalx(qgmlwb)" name[Group1] = "QGMLWY - full optimization, Colemak lettermask, ZXCV like QWERTY"; key { [ y, Y, leftarrow, yen ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; }; partial alphanumeric_keys xkb_symbols "qfmlwy" { include "latin" include "latin(nodeadkeys)" name[Group1] = "QFMLWY - full optimization, QWERTY lettermask"; key { [ q, Q, at, Greek_OMEGA ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ m, M, mu, masculine ] }; key { [ l, L, lstroke, Lstroke ] }; key { [ w, W, lstroke, Lstroke ] }; key { [ y, Y, leftarrow, yen ] }; key { [ u, U, downarrow, uparrow ] }; key { [ o, O, oslash, Ooblique ] }; key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; key { [ j, J ] }; key { [ d, D, eth, ETH ] }; key { [ s, S, ssharp, section ] }; key { [ t, T, tslash, Tslash ] }; key { [ n, N ] }; key { [ r, R, paragraph, registered ] }; key { [ i, I, rightarrow, idotless ] }; key { [ a, A, ae, AE ] }; key { [ e, E, EuroSign ] }; key { [ h, H, hstroke, Hstroke ] }; key { [ z, Z, guillemotleft, less ] }; key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; key { [ g, G, eng, ENG ] }; key { [ c, C, cent, copyright ] }; key { [ x, X, guillemotright, greater ] }; key { [ p, P, thorn, THORN ] }; key { [ k, K, kra, ampersand ] }; }; partial alphanumeric_keys xkb_symbols "qwkrfy" { include "latin" include "latin(nodeadkeys)" name[Group1] = "QWKRFY - 5 keys swapped wrt. QWERTY"; key { [ k, K, kra, ampersand ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ j, J ] }; key { [ d, D, eth, ETH ] }; key { [ a, A, ae, AE ] }; key { [ t, T, tslash, Tslash ] }; key { [ n, N ] }; key { [ o, O, oslash, Ooblique ] }; key { [ e, E ] }; key { [ g, G, eng, ENG ] }; }; partial alphanumeric_keys xkb_symbols "qwyrfm" { include "latin" include "latin(nodeadkeys)" name[Group1] = "QWYRFM - 10 keys swapped wrt. QWERTY"; key { [ y, Y, leftarrow, yen ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ m, M, mu, masculine ] }; key { [ l, L, lstroke, Lstroke ] }; key { [ u, U, downarrow, uparrow ] }; key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; key { [ d, D, eth, ETH ] }; key { [ a, A, ae, AE ] }; key { [ t, T, tslash, Tslash ] }; key { [ n, N ] }; key { [ o, O, oslash, Ooblique ] }; key { [ e, E ] }; key { [ i, I, rightarrow, idotless ] }; key { [ j, J ] }; key { [ g, G, eng, ENG ] }; key { [ k, K, kra, ampersand ] }; }; partial xkb_symbols "tnwmlc" { include "latin" include "latin(nodeadkeys)" name[Group1] = "TNWMLC - worst layout!"; key { [ t, T, tslash, Tslash ] }; key { [ n, N ] }; key { [ w, W, lstroke, Lstroke ] }; key { [ m, M, mu, masculine ] }; key { [ l, L, lstroke, Lstroke ] }; key { [ c, C, cent, copyright ] }; key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; key { [ p, P, thorn, THORN ] }; key { [ r, R, paragraph, registered ] }; key { [ h, H, hstroke, Hstroke ] }; key { [ s, S, ssharp, section ] }; key { [ g, G, eng, ENG ] }; key { [ x, X, guillemotright, greater ] }; key { [ j, J ] }; key { [ f, F, dstroke, ordfeminine ] }; key { [ k, K, kra, ampersand ] }; key { [ q, Q, at, Greek_OMEGA ] }; key { [ z, Z, guillemotleft, less ] }; key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; key { [ a, A, ae, AE ] }; key { [ e, E ] }; key { [ d, D, eth, ETH ] }; key { [ i, I, rightarrow, idotless ] }; key { [ o, O, oslash, Ooblique ] }; key { [ y, Y, leftarrow, yen ] }; key { [ u, U, downarrow, uparrow ] }; };