1// based on a keyboard map from an 'xkb/symbols/gb' file 2 3default partial alphanumeric_keys 4xkb_symbols "basic" { 5 6 // Describes the differences between a very simple en_US 7 // keyboard and a very simple U.K. keyboard layout defined by 8 // the SVR4 European Language Supplement and sometimes also 9 // known as the IBM 166 layout. 10 11 include "latin" 12 13 name[Group1]="English (UK)"; 14 15 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] }; 16 key <AE03> { [ 3, sterling, threesuperior, sterling ] }; 17 key <AE04> { [ 4, dollar, EuroSign, onequarter ] }; 18 19 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] }; 20 key <TLDE> { [ grave, notsign, bar, bar ] }; 21 22 key <BKSL> { [numbersign, asciitilde, dead_grave, dead_breve ] }; 23 key <LSGT> { [ backslash, bar, bar, brokenbar ] }; 24 25 include "level3(ralt_switch_multikey)" 26}; 27 28partial alphanumeric_keys 29xkb_symbols "intl" { 30 31 // Describes the differences between a very simple en_US 32 // keyboard and a very simple U.K. keyboard layout with 33 // dead keys. By Phil Jones (philjones1@blueyonder.co.uk) 34 35 // Includes the following keys: 36 // dead_grave 37 // dead_acute 38 // dead_circumflex 39 // dead_tilde 40 // dead_diaeresis 41 42 include "latin" 43 44 name[Group1]="English (UK, intl., with dead keys)"; 45 46 key <AE02> { [ 2, dead_diaeresis, twosuperior, onehalf ] }; 47 key <AE03> { [ 3, sterling, threesuperior, onethird ] }; 48 key <AE04> { [ 4, dollar, EuroSign, onequarter ] }; 49 key <AE06> { [ 6, dead_circumflex, NoSymbol, onesixth ] }; 50 51 key <AC11> { [ dead_acute, at, apostrophe, bar ] }; 52 key <TLDE> { [ dead_grave, notsign, bar, bar ] }; 53 54 key <BKSL> { [ numbersign, dead_tilde, bar, bar ] }; 55 key <LSGT> { [ backslash, bar, bar, bar ] }; 56 57 key <AB08> { [ comma, less, ccedilla, Ccedilla ] }; 58 59 include "level3(ralt_switch)" 60}; 61 62partial alphanumeric_keys 63xkb_symbols "extd" { 64 // Clone of the Microsoft "English (UK, Extended" layout, which 65 // includes dead keys for: grave; diaeresis; circumflex; tilde; and 66 // accute. It also enables direct access to accute characters using 67 // the Multi_key (Alt Gr). 68 // 69 // Taken from... 70 // "Windows Keyboard Layouts" 71 // http://msdn.microsoft.com/en-us/goglobal/bb964651.aspx 72 // 73 // -- Jonathan Miles <jon@cybah.co.uk> 74 75 include "latin" 76 77 name[Group1]="English (UK, extended, Windows)"; 78 79 key <TLDE> { [ dead_grave, notsign, brokenbar, NoSymbol ] }; 80 81 key <AE02> { [ 2, quotedbl, dead_diaeresis, onehalf ] }; 82 key <AE03> { [ 3, sterling, threesuperior, onethird ] }; 83 key <AE04> { [ 4, dollar, EuroSign, onequarter ] }; 84 key <AE06> { [ 6, asciicircum, dead_circumflex, NoSymbol ] }; 85 86 key <AD02> { [ w, W, wacute, Wacute ] }; 87 key <AD03> { [ e, E, eacute, Eacute ] }; 88 key <AD06> { [ y, Y, yacute, Yacute ] }; 89 key <AD07> { [ u, U, uacute, Uacute ] }; 90 key <AD08> { [ i, I, iacute, Iacute ] }; 91 key <AD09> { [ o, O, oacute, Oacute ] }; 92 93 key <AC01> { [ a, A, aacute, Aacute ] }; 94 key <AC11> { [ apostrophe, at, dead_acute, NoSymbol ] }; 95 96 key <AB03> { [ c, C, ccedilla, Ccedilla ] }; 97 98 key <BKSL> { [ numbersign, asciitilde, dead_tilde, NoSymbol ] }; 99 key <LSGT> { [ backslash, bar, NoSymbol, NoSymbol ] }; 100 101 include "level3(ralt_switch)" 102}; 103 104// Describe the differences between the US Colemak layout 105// and a UK variant. By Andy Buckley (andy@insectnation.org) 106 107partial alphanumeric_keys 108xkb_symbols "colemak" { 109 include "us(colemak)" 110 111 name[Group1]="English (UK, Colemak)"; 112 113 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] }; 114 key <AE03> { [ 3, sterling, threesuperior, sterling ] }; 115 key <AE04> { [ 4, dollar, EuroSign, onequarter ] }; 116 117 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] }; 118 key <TLDE> { [ grave, notsign, bar, bar ] }; 119 120 key <BKSL> { [numbersign, asciitilde, dead_grave, dead_breve ] }; 121 key <LSGT> { [ backslash, bar, bar, brokenbar ] }; 122 123 include "level3(ralt_switch_multikey)" 124}; 125 126 127// Dvorak (UK) keymap (by odaen) allowing the usage of 128// the £ and ? key and swapping the @ and " keys. 129 130partial alphanumeric_keys 131xkb_symbols "dvorak" { 132 include "us(dvorak-alt-intl)" 133 134 name[Group1]="English (UK, Dvorak)"; 135 136 key <AD01> { [ apostrophe, at ] }; 137 key <AE02> { [ 2, quotedbl, twosuperior, NoSymbol ] }; 138 key <AE03> { [ 3, sterling, threesuperior, NoSymbol ] }; 139 key <BKSL> { [ numbersign, asciitilde ] }; 140 key <LSGT> { [ backslash, bar ] }; 141 key <TLDE> { [ grave, notsign, bar, bar ] }; 142}; 143 144// Dvorak letter positions, but punctuation all in the normal UK positions. 145partial alphanumeric_keys 146xkb_symbols "dvorakukp" { 147 include "gb(dvorak)" 148 149 name[Group1]="English (UK, Dvorak, with UK punctuation)"; 150 151 key <AE11> { [ minus, underscore ] }; 152 key <AE12> { [ equal, plus ] }; 153 key <AD11> { [ bracketleft, braceleft ] }; 154 key <AD12> { [ bracketright, braceright ] }; 155 key <AD01> { [ slash, question ] }; 156 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] }; 157}; 158 159// Copied from macintosh_vndr/gb 160partial alphanumeric_keys 161xkb_symbols "mac" { 162 163 // Describes the differences between a very simple en_US 164 // keyboard and a very simple U.K. keyboard layout 165 166 include "latin" 167 168 name[Group1]= "English (UK, Macintosh)"; 169 170 key <AE02> { [ 2, at, EuroSign ] }; 171 key <AE03> { [ 3, sterling, numbersign ] }; 172 key <TLDE> { [ section, plusminus ] }; 173 key <LSGT> { [ grave, asciitilde ] }; 174 175 include "level3(ralt_switch)" 176 include "level3(enter_switch)" 177}; 178 179 180partial alphanumeric_keys 181xkb_symbols "mac_intl" { 182 183 include "latin" 184 185 name[Group1]="English (UK, Macintosh, intl.)"; 186 187 key <AE02> { [ 2, at, EuroSign, onehalf ] }; 188 key <AE03> { [ 3, sterling, twosuperior, onethird ] }; 189 key <AE04> { [ 4, dollar, threesuperior, onequarter ] }; 190 key <AE06> { [ 6, dead_circumflex, NoSymbol, onesixth ] }; 191 key <AD09> { [ o, O, oe, OE ] }; 192 193 key <AC11> { [ dead_acute, dead_diaeresis, dead_diaeresis, bar ] }; //dead_doubleacute 194 key <TLDE> { [ section, plusminus, notsign, notsign ] }; //dead_grave 195 196 key <BKSL> { [ backslash, bar, numbersign, bar ] }; 197 key <LSGT> { [ dead_grave, dead_tilde, brokenbar, bar ] }; 198 199 include "level3(ralt_switch)" 200}; 201 202partial alphanumeric_keys 203xkb_symbols "pl" { 204 205 // Polish layout based on British keyboard 206 // Adopted 2016 by Aleksander Kowalski 207 208 include "latin" 209 210 name[Group1]="Polish (British keyboard)"; 211 212 key <AE02>{ [ 2, quotedbl, twosuperior, oneeighth ]}; 213 key <AE03>{ [ 3, sterling, threesuperior, sterling ]}; 214 key <AE04>{ [ 4, dollar, EuroSign, onequarter ]}; 215 216 key <AC11>{ [apostrophe, at, dead_circumflex, dead_caron]}; 217 key <TLDE>{ [ grave, notsign, bar, bar ]}; 218 219 key <BKSL>{ [numbersign, asciitilde, dead_grave, dead_breve ]}; 220 key <LSGT>{ [ backslash, bar, bar, brokenbar ]}; 221 222 key <AD01> { [ q, Q ] }; 223 key <AD02> { [ w, W ] }; 224 key <AD03>{ [ e, E, eogonek, Eogonek ] }; 225 key <AD09> { [ o, O, oacute, Oacute ] }; 226 227 key <AC01> { [ a, A, aogonek, Aogonek ] }; 228 key <AC02> { [ s, S, sacute, Sacute ] }; 229 key <AC04> { [ f, F ] }; 230 231 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 232 key <AB02> { [ x, X, zacute, Zacute ] }; 233 key <AB03> { [ c, C, cacute, Cacute ] }; 234 key <AB06> { [ n, N, nacute, Nacute ] }; 235 236 237 include "level3(ralt_switch)" 238}; 239 240// EXTRAS: 241 242partial alphanumeric_keys 243 xkb_symbols "sun_type6" { 244 include "sun_vndr/gb(sun_type6)" 245}; 246