// Keyboard layouts for Great Britain. default partial alphanumeric_keys xkb_symbols "basic" { // The basic UK layout, also known as the IBM 166 layout, // but with the useless brokenbar pushed two levels up. include "latin" name[Group1]="English (UK)"; key { [ grave, notsign, bar, bar ] }; key { [ 2, quotedbl, twosuperior, oneeighth ] }; key { [ 3, sterling, threesuperior, sterling ] }; key { [ 4, dollar, EuroSign, onequarter ] }; key { [apostrophe, at, dead_circumflex, dead_caron] }; key { [numbersign, asciitilde, dead_grave, dead_breve ] }; key { [ backslash, bar, bar, brokenbar ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "intl" { // A UK layout but with five accents made into dead keys: // grave, diaeresis, circumflex, acute, and tilde. // By Phil Jones . include "latin" name[Group1]="English (UK, intl., with dead keys)"; key { [ dead_grave, notsign, bar, bar ] }; key { [ 2, dead_diaeresis, twosuperior, onehalf ] }; key { [ 3, sterling, threesuperior, onethird ] }; key { [ 4, dollar, EuroSign, onequarter ] }; key { [ 6, dead_circumflex, threequarters, onesixth ] }; key { [ dead_acute, at, apostrophe, bar ] }; key { [ numbersign, dead_tilde, bar, bar ] }; key { [ backslash, bar, bar, bar ] }; key { [ comma, less, ccedilla, Ccedilla ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "extd" { // Clone of the Microsoft "United Kingdom Extended" layout, which // includes dead keys for: grave; diaeresis; circumflex; tilde; and // accute. It also enables direct access to accute characters using // the Multi_key (Alt Gr). // // Taken from... // "Windows Keyboard Layouts" // https://docs.microsoft.com/en-gb/globalization/windows-keyboard-layouts#U // // -- Jonathan Miles include "latin" name[Group1]="English (UK, extended, Windows)"; key { [ dead_grave, notsign, brokenbar, NoSymbol ] }; key { [ 2, quotedbl, dead_diaeresis, onehalf ] }; key { [ 3, sterling, threesuperior, onethird ] }; key { [ 4, dollar, EuroSign, onequarter ] }; key { [ 6, asciicircum, dead_circumflex, NoSymbol ] }; key { [ w, W, wacute, Wacute ] }; key { [ e, E, eacute, Eacute ] }; key { [ y, Y, yacute, Yacute ] }; key { [ u, U, uacute, Uacute ] }; key { [ i, I, iacute, Iacute ] }; key { [ o, O, oacute, Oacute ] }; key { [ bracketright, braceright, NoSymbol, bar ] }; key { [ a, A, aacute, Aacute ] }; key { [ apostrophe, at, dead_acute, grave ] }; key { [ numbersign, asciitilde, dead_tilde, backslash ] }; key { [ backslash, bar, NoSymbol, NoSymbol ] }; key { [ c, C, ccedilla, Ccedilla ] }; include "level3(ralt_switch)" }; // Describe the differences between the US Colemak layout // and a UK variant. By Andy Buckley (andy@insectnation.org) partial alphanumeric_keys xkb_symbols "colemak" { include "us(colemak)" name[Group1]="English (UK, Colemak)"; key { [ grave, notsign, bar, asciitilde ] }; key { [ 2, quotedbl, twosuperior, oneeighth ] }; key { [ 3, sterling, threesuperior, sterling ] }; key { [ 4, dollar, EuroSign, onequarter ] }; key { [apostrophe, at, dead_circumflex, dead_caron] }; key { [numbersign, asciitilde, dead_grave, dead_breve ] }; key { [ backslash, bar, asciitilde, brokenbar ] }; }; // Colemak-DH (ISO) layout, UK Variant, https://colemakmods.github.io/mod-dh/ partial alphanumeric_keys xkb_symbols "colemak_dh" { include "us(colemak_dh)" name[Group1]="English (UK, Colemak-DH)"; key { [ grave, notsign, bar, asciitilde ] }; key { [ 2, quotedbl, twosuperior, oneeighth ] }; key { [ 3, sterling, threesuperior, sterling ] }; key { [ 4, dollar, EuroSign, onequarter ] }; key { [apostrophe, at, dead_circumflex, dead_caron] }; key { [numbersign, asciitilde, dead_grave, dead_breve ] }; key { [ backslash, bar, asciitilde, brokenbar ] }; }; // Dvorak (UK) keymap (by odaen) allowing the usage of // the £ and ? key and swapping the @ and " keys. partial alphanumeric_keys xkb_symbols "dvorak" { include "us(dvorak-alt-intl)" name[Group1]="English (UK, Dvorak)"; key { [ grave, notsign, bar, bar ] }; key { [ 2, quotedbl, twosuperior, NoSymbol ] }; key { [ 3, sterling, threesuperior, NoSymbol ] }; key { [ apostrophe, at ] }; key { [ numbersign, asciitilde ] }; key { [ backslash, bar ] }; }; // Dvorak letter positions, but punctuation all in the normal UK positions. partial alphanumeric_keys xkb_symbols "dvorakukp" { include "gb(dvorak)" name[Group1]="English (UK, Dvorak, with UK punctuation)"; key { [ minus, underscore ] }; key { [ equal, plus ] }; key { [ bracketleft, braceleft ] }; key { [ bracketright, braceright ] }; key { [ slash, question ] }; key { [apostrophe, at, dead_circumflex, dead_caron] }; }; partial alphanumeric_keys xkb_symbols "mac" { include "latin" name[Group1]= "English (UK, Macintosh)"; key { [ section, plusminus ] }; key { [ 2, at, EuroSign ] }; key { [ 3, sterling, numbersign ] }; key { [ grave, asciitilde ] }; include "level3(ralt_switch)" include "level3(enter_switch)" }; partial alphanumeric_keys xkb_symbols "mac_intl" { include "latin" name[Group1]="English (UK, Macintosh, intl.)"; key { [ section, plusminus, notsign, notsign ] }; //dead_grave key { [ 2, at, EuroSign, onehalf ] }; key { [ 3, sterling, twosuperior, onethird ] }; key { [ 4, dollar, threesuperior, onequarter ] }; key { [ 6, dead_circumflex, NoSymbol, onesixth ] }; key { [ o, O, oe, OE ] }; key { [ dead_acute, dead_diaeresis, dead_diaeresis, bar ] }; //dead_doubleacute key { [ backslash, bar, numbersign, bar ] }; key { [ dead_grave, dead_tilde, brokenbar, bar ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "pl" { // Polish accented letters on upper levels of corresponding base letters. // Idea from Wawrzyniec Niewodniczański, adapted by Aleksander Kowalski. include "gb(basic)" name[Group1]="Polish (British keyboard)"; key { [ e, E, eogonek, Eogonek ] }; key { [ o, O, oacute, Oacute ] }; key { [ a, A, aogonek, Aogonek ] }; key { [ s, S, sacute, Sacute ] }; key { [ z, Z, zabovedot, Zabovedot ] }; key { [ x, X, zacute, Zacute ] }; key { [ c, C, cacute, Cacute ] }; key { [ n, N, nacute, Nacute ] }; }; partial alphanumeric_keys xkb_symbols "gla" { // Grave-accented letters on the upper levels of the relevant vowels. include "gb(basic)" name[Group1]="Scottish Gaelic"; key { [ e, E, egrave, Egrave ] }; key { [ u, U, ugrave, Ugrave ] }; key { [ i, I, igrave, Igrave ] }; key { [ o, O, ograve, Ograve ] }; key { [ a, A, agrave, Agrave ] }; }; // EXTRAS: partial alphanumeric_keys xkb_symbols "sun_type6" { include "sun_vndr/gb(sun_type6)" };