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