Hi there,
I've made a small localization-related adjustment to Colemak. Post updated to include the config itself.
It makes using Colemak more comfortable, if you're typing in Czech (and possibly Slovak, I guess). I've changed the 105th key (now used for diacritic-mark dead keys) and the 3rd/4th layer (aka AltGraph combos) to add Czech typographic symbols¹ and make symbols with diacritic marks easier to type². These symbols are placed logically (to make learning easier). I originally planned to make it reasonably efficient for typing German/French/whatever names, possibly IPA and some math symbols as well; it's never stabilized, though.
I've used this layout on daily basis to post online and write/edit various articles as well as my thesis. If you have an opportunity to use symmetrical AltGraph (and/or 105th) keys for proper touch typing, it's a big improvement. (See the JIS Master Race for symmetrical AltGraph; a snippet that maps muhenkan and henkan keys to AltGraph is now included at the end of the keymap here.)
An XKB config file follows, feel free to use/modify/redistribute it³.
default
partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "Czech (Colemak)";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde, dead_tilde, asciitilde ] };
key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
key <AE02> { [ 2, at, masculine, twosuperior ] };
key <AE03> { [ 3, numbersign, ordfeminine, threesuperior ] };
key <AE04> { [ 4, dollar, EuroSign, sterling ] };
key <AE05> { [ 5, percent, cent, yen ] };
key <AE06> { [ 6, asciicircum, hstroke, Hstroke ] };
key <AE07> { [ 7, ampersand, eth, ETH ] };
key <AE08> { [ 8, asterisk, thorn, THORN ] };
key <AE09> { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] };
key <AE10> { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] };
key <AE11> { [ minus, underscore, endash, emdash ] };
key <AE12> { [ equal, plus, multiply, division ] };
key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] };
key <AD02> { [ w, W, aring, Aring ] };
key <AD03> { [ f, F, ecaron, Ecaron ] };
key <AD04> { [ p, P, oslash, Ooblique ] };
key <AD05> { [ g, G, dead_ogonek, asciitilde ] };
key <AD06> { [ j, J, dstroke, Dstroke ] };
key <AD07> { [ l, L, lcaron, Lcaron ] };
key <AD08> { [ u, U, uacute, Uacute ] };
key <AD09> { [ y, Y, yacute, Yacute ] };
key <AD10> { [ semicolon, colon, odiaeresis, Odiaeresis ] };
key <AD11> { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] };
key <AD12> { [ bracketright, braceright, guillemotright, 0x100203a ] };
key <BKSL> { [ backslash, bar, asciitilde, asciitilde ] };
key <AC01> { [ a, A, aacute, Aacute ] };
key <AC02> { [ r, R, rcaron, Rcaron ] };
key <AC03> { [ s, S, scaron, Scaron ] };
key <AC04> { [ t, T, tcaron, Tcaron ] };
key <AC05> { [ d, D, dcaron, Dcaron ] };
key <AC06> { [ h, H, dead_caron, asciitilde ] };
key <AC07> { [ n, N, ncaron, Ncaron ] };
key <AC08> { [ e, E, eacute, Eacute ] };
key <AC09> { [ i, I, iacute, Iacute ] };
key <AC10> { [ o, O, oacute, Oacute ] };
key <AC11> { [ apostrophe, quotedbl, doublelowquotemark, leftdoublequotemark ] };
key <AB01> { [ z, Z, zcaron, Zcaron ] };
key <AB02> { [ x, X, dead_circumflex, asciitilde ] };
key <AB03> { [ c, C, ccaron, Ccaron ] };
key <AB04> { [ v, V, uring, Uring ] };
key <AB05> { [ b, B, ssharp, asciitilde ] };
key <AB06> { [ k, K, dead_abovering, asciitilde ] };
key <AB07> { [ m, M, dead_macron, asciitilde ] };
key <AB08> { [ comma, less, singlelowquotemark, leftsinglequotemark ] };
key <AB09> { [ period, greater, ellipsis, plusminus ] };
key <AB10> { [ slash, question, questiondown, plusminus ] };
key <SPCE> { [ space, space, nobreakspace, thinspace ] };
// Colemak Backspace
key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] };
// ISO keyboard
// use the extra key for "dead" accents
key <LSGT> { [ dead_acute, dead_caron, dead_abovering, dead_diaeresis ] };
// JIS keyboard
key <AB11> { [ dead_acute, dead_caron, dead_abovering, dead_diaeresis ] };
key <AE13> { [ yen, bar ] };
// modifiers: Muhenkan (102/ff22), Henkan_Mode (100/ff23), Hiragana_Katakana (101/ff27)
// note: these are usually overwritten by `inet`, `/usr/share/X11/xkb/symbols/inet`
key <MUHE> { [ ISO_Level3_Shift ] };
key <HENK> { [ ISO_Level3_Shift ] };
key <HKTG> { [ Alt_L ] };
include "level3(ralt_switch)"
};
¹ esp. „quotation marks“
² AltGr+c = č, AltGr+Shift+c = Č,…
³ stock Colemak is public domain, but I'm not sure about its legal status outside the USA, thus assume the terms of WTFPL:
This work is free. You can redistribute it and/or modify it under the terms of the Do What The Fuck You Want To Public License, Version 2, as published by Sam Hocevar. See http://www.wtfpl.net/ for more details.
Get yourself an ergonomic keyboard. Learn Maltron. Or stenography.