Home | History | Annotate | Line # | Download | only in symbols
      1 // 17 May 2003 Modified by Sebastiano Vigna (vigna (a] dsi.unimi.it)
      2 // 03 December 2017 - Added it(intl) and it(scn), please refer to
      3 //                    Cadmia Siciliana <l10n (a] cademiasiciliana.org>
      4 // 18 July 2018 - Fixed inconsistent '' and '' in it(intl)
      5 //                Alessandro Pellegrini <pellegrini (a] dis.uniroma1.it>
      6 // 28 February 2017 - Added it(fur), please refer to
      7 //                Fabio Tomat <f.t.public (a] gmail.com>
      8 
      9 default partial alphanumeric_keys
     10 xkb_symbols "basic" {
     11 
     12     include "latin(type4)"
     13 
     14     name[Group1]="Italian";
     15 
     16     key <TLDE>	{ [ backslash,        bar,      notsign,    brokenbar ]	};
     17 
     18     key <AE02>	{ [         2,   quotedbl,  twosuperior, dead_doubleacute ] };
     19     key <AE03>	{ [         3,   sterling,threesuperior,   dead_tilde ]	};
     20     key <AE04>	{ [         4,     dollar,   onequarter,    oneeighth ] };
     21 
     22     key <AE10>	{ [         0,      equal,   braceright,  dead_ogonek ] };
     23     key <AE11>	{ [apostrophe,   question,        grave, questiondown ]	};
     24     key <AE12>	{ [    igrave, asciicircum,  asciitilde, dead_circumflex ] };
     25 
     26     key <AD11>	{ [    egrave,     eacute,  bracketleft,    braceleft ]	};
     27     key <AD12>	{ [      plus,   asterisk, bracketright,   braceright ]	};
     28 
     29     key <AC10>	{ [    ograve,   ccedilla,           at, dead_cedilla ] };
     30     key <AC11>	{ [    agrave,     degree,   numbersign, dead_abovering ] };
     31     key <BKSL>	{ [    ugrave,    section,   dead_grave,   dead_breve ] };
     32 
     33     key <LSGT>	{ [      less,    greater,guillemotleft,guillemotright] };
     34     key <AB04>	{ [         v,          V, leftdoublequotemark, leftsinglequotemark ]	};
     35     key <AB05>	{ [         b,          B, rightdoublequotemark, rightsinglequotemark ] };
     36     key <AB06>	{ [         n,          N,       ntilde,       Ntilde ]	};
     37     key <AB08>	{ [     comma,  semicolon,   dead_acute,     multiply ]	};
     38     key <AB09>	{ [    period,      colon,periodcentered, dead_diaeresis ] };
     39     key <AB10>	{ [     minus, underscore,  dead_macron,     division ] };
     40 
     41     include "level3(ralt_switch)"
     42 };
     43 
     44 partial alphanumeric_keys
     45 xkb_symbols "nodeadkeys" {
     46 
     47     // Modifies the basic italian layout to eliminate all dead keys
     48 
     49     include "it(basic)"
     50 
     51     name[Group1]="Italian (no dead keys)";
     52 
     53     key <AE02>	{ [         2,   quotedbl,  twosuperior,  doubleacute ] };
     54     key <AE03>	{ [         3,   sterling,threesuperior,   asciitilde ]	};
     55 
     56     key <AE10>	{ [         0,       equal,  braceright,       ogonek ]	};
     57     key <AE12>	{ [    igrave, asciicircum,  asciitilde,  asciicircum ] };
     58 
     59     key <AC10>	{ [    ograve,   ccedilla,           at,      cedilla ] };
     60     key <AC11>	{ [    agrave,     degree,   numbersign,       degree ] };
     61     key <BKSL>	{ [    ugrave,    section,        grave,        breve ]	};
     62 
     63     key <AB08>	{ [     comma,  semicolon,        acute,     multiply ]	};
     64     key <AB09>	{ [    period,      colon,periodcentered,   diaeresis ] };
     65     key <AB10>	{ [     minus, underscore,       macron,     division ] };
     66 };
     67 
     68 partial alphanumeric_keys
     69 xkb_symbols "winkeys" {
     70 
     71    include "it(basic)"
     72    name[Group1]="Italian (Windows)";
     73    include "eurosign(5)"
     74 };
     75 
     76 // Copied from macintosh_vndr/it
     77 partial alphanumeric_keys
     78 xkb_symbols "mac" {
     79 
     80     name[Group1]= "Italian (Macintosh)";
     81 
     82     key <TLDE> {        [        at,    numbersign,    periodcentered              ]	};
     83     key <AE01> {	[   ampersand,    1, guillemotleft,guillemotright	]	};
     84     key <AE02> {	[    quotedbl,    2 		]	};
     85     key <AE03> {	[  apostrophe,    3         	]	};
     86     key <AE04> {	[   parenleft,    4,    braceleft,    bracketleft	]	};
     87     key <AE05> {	[    ccedilla,    5,     Ccedilla,    Iacute	]	};
     88     key <AE06> {	[      egrave,    6,    paragraph,    periodcentered]	};
     89     key <AE07> {	[  parenright,    7,   braceright,	  bracketright	]	};
     90     key <AE08> {	[    sterling,    8,   infinity			]	};
     91     key <AE09> {	[      agrave,    9,        acute,    Ocircumflex	]	};
     92     key <AE10> {	[      eacute,    0,        grave,    Oacute	]	};
     93     key <AE11> {	[       minus,    underscore	]	};
     94     key <AE12> {	[       equal, 	  plus,     notequal,    plusminus	]	};
     95 
     96     key <AD01> {	[           q,  Q 		]	};
     97     key <AD02> {	[	    z,  Z		]	};
     98     key <AD03> {	[	    e,  E,	EuroSign	]	};
     99     key <AD04> {	[	    r,  R,   registered			] 	};
    100     key <AD05> {	[	    t,  T		]	};
    101     key <AD06> {	[	    y,  Y,       Uacute,	ydiaeresis      ] 	};
    102     key <AD07> {	[	    u,  U		]	};
    103     key <AD08> {	[	    i,  I,  icircumflex,	idiaeresis      ] 	};
    104     key <AD09> {	[	    o,  O		]	};
    105     key <AD10> {	[	    p,  P		]	};
    106     key <AD11> {	[      igrave,  asciicircum     ]	};
    107     key <AD12> {	[      dollar,	asterisk        ]	};
    108 
    109     key <AC01> {	[	  a,	A,      aring,   Aring		] 	};
    110     key <AC02> {	[	  s,	S,     ssharp,	 U1E9E		]	};
    111     key <AC03> {	[	  d,	D		]	};
    112     key <AC04> {	[	  f,	F		]	};
    113     key <AC05> {	[	  g,	G		]	};
    114     key <AC06> {	[	  h,	H,     Igrave,    Icircumflex     ]	};
    115     key <AC07> {	[	  j,	J,  Idiaeresis,   Iacute          ]	};
    116     key <AC08> {	[	  k,	K,     Egrave,    Ediaeresis      ]	};
    117     key <AC09> {	[	  l,	L,     ssharp,    bar		]	};
    118     key <AC10> {	[         m,	M,         mu,    Oacute		]	};
    119     key <AC11> {	[    ugrave,	percent,         ae,    AE		]	};
    120     key <BKSL> {	[   section,	degree,          at,  numbersign	]	};
    121 
    122     key <LSGT> {	[        less,  greater   	]	};
    123     key <AB01> {	[	  w,	W 		]	};
    124     key <AB02> {	[	  x,	X		]	};
    125     key <AB03> {	[	  c,	C,  copyright,    copyright	]	};
    126     key <AB04> {	[	  v,	V		]	};
    127     key <AB05> {	[	  b,	B		]	};
    128     key <AB06> {	[	  n,	N,  dead_tilde                    ]       };
    129     key <AB07> {	[     comma,	question,          questiondown		]	};
    130     key <AB08> {	[ semicolon,	period          ]	};
    131     key <AB09> {	[     colon,	slash,        bar,    backslash	]	};
    132     key <AB10> {	[    ograve,	exclam,     exclamdown			]	};
    133 
    134     include "kpdl(dot)"
    135     include "level3(ralt_switch)"
    136 };
    137 
    138 // Used by Georgian people in Italy, 
    139 // contributed by Vladimer Sichinava
    140 partial alphanumeric_keys
    141 xkb_symbols "geo" {
    142     include "it"
    143     include "ge(basic)"
    144     name[Group1]= "Georgian (Italy)";
    145 
    146     key <TLDE> { [ backslash, bar, notsign, brokenbar ] };
    147     key <AE01> { [ 1, exclam, onesuperior ] };
    148     key <AE02> { [ 2, quotedbl, twosuperior, dead_doubleacute ] };
    149     key <AE03> { [ 3, sterling, threesuperior, dead_tilde ] };
    150     key <AE04> { [ 4, dollar, onequarter, oneeighth ] };
    151     key <AE05> { [ 5, percent, onehalf ] };
    152     key <AE06> { [ 6, ampersand ] };
    153     key <AE07> { [ 7, slash, braceleft ] };
    154     key <AE08> { [ 8, parenleft, bracketleft ] };
    155     key <AE09> { [ 9, parenright ] };
    156     key <AE10> { [ 0, equal, braceright, dead_ogonek ] };
    157     key <AE11> { [ apostrophe, question, grave, questiondown ] };
    158     key <AE12> { [ igrave, asciicircum, asciitilde, dead_circumflex ] };
    159 
    160     key <AD03> { [ 0x010010d4, E, EuroSign ] };
    161     key <AD11> { [ egrave, eacute, bracketleft, braceleft ] };
    162     key <AD12> { [ plus, asterisk, bracketright, braceright ] };
    163 
    164     key <AC10> { [ ograve, ccedilla, at, dead_cedilla ] };
    165     key <AC11> { [ agrave, degree, numbersign, degree ] };
    166     key <BKSL> { [ ugrave, section, dead_grave, dead_breve ] };
    167 
    168     key <LSGT> { [ less, greater ] };
    169     key <AB08> { [ comma, semicolon ] };
    170     key <AB09> { [ period, colon ] };
    171     key <AB10> { [ minus, underscore ] };
    172 };
    173 
    174 // OLPC Section
    175 xkb_symbols "olpc" {
    176 
    177     include "it(basic)"
    178 
    179     key <AE12> { [ igrave,  asciicircum,    asciitilde,     dead_tilde ] };
    180     key <BKSL> { [ ugrave,      section,        Egrave,     dead_breve ] };
    181     key <I219> { [ less,        greater, guillemotleft, guillemotright ] };
    182 };
    183 
    184 partial alphanumeric_keys modifier_keys
    185 xkb_symbols "us" {
    186 
    187     include "us(basic)"
    188 
    189     name[Group1]= "Italian (US)";
    190 
    191     key <TLDE> { [     grave, asciitilde,    dead_grave,       dead_tilde ] };
    192     key <AE01> { [         1,     exclam,   onesuperior                   ] };
    193     key <AE02> { [         2,         at,   twosuperior                   ] };
    194     key <AE03> { [         3, numbersign, threesuperior                   ] };
    195     key <AE06> { [         6,asciicircum,dead_circumflex                  ] };
    196     key <AE10> { [         0, parenright,        degree                   ] };
    197     key <AE11> { [     minus, underscore,   dead_macron                   ] };
    198 
    199     key <AD03> { [         e,          E,        egrave,           Egrave ] };
    200     key <AD04> { [         r,          R,    registered                   ] };
    201     key <AD07> { [         u,          U,        ugrave,           Ugrave ] };
    202     key <AD08> { [         i,          I,        igrave,           Igrave ] };
    203     key <AD09> { [         o,          O,        ograve,           Ograve ] };
    204 
    205     key <AC01> { [         a,          A,        agrave,           Agrave ] };
    206     key <AC03> { [         d,          D,        eacute,           Eacute ] };
    207     key <AC07> { [         j,          J,        uacute,           Uacute ] };
    208     key <AC08> { [         k,          K,        iacute,           Iacute ] };
    209     key <AC09> { [         l,          L,        oacute,           Oacute ] };
    210     key <AC10> { [ semicolon,      colon,dead_diaeresis,   dead_diaeresis ] };
    211     key <AC11> { [apostrophe,   quotedbl,    dead_acute                   ] };
    212 
    213     key <AB01> { [         z,          Z,        aacute,           Aacute ] };
    214     key <AB03> { [         c,          C,     copyright                   ] };
    215     key <AB06> { [         n,          N,        ntilde,           Ntilde ] };
    216     key <AB08> { [     comma,       less,   guillemotleft                 ] };
    217     key <AB09> { [    period,    greater,  guillemotright                 ] };
    218 
    219     include "level3(ralt_switch)"
    220     include "eurosign(5)"
    221 };
    222 
    223 partial alphanumeric_keys
    224 xkb_symbols "ibm" {
    225 
    226     include "us"
    227 
    228     name[Group1]="Italian (IBM 142)";
    229 
    230     key <TLDE>	{ [ backslash,        bar                             ] };
    231 
    232     key <AE02>	{ [         2,   quotedbl                             ] };
    233     key <AE03>	{ [         3,   sterling,   numbersign               ] };
    234     key <AE06>	{ [         6,  ampersand                             ] };
    235     key <AE07>	{ [         7,      slash,    braceleft               ] };
    236     key <AE08>	{ [         8,  parenleft,  bracketleft               ] };
    237     key <AE09>	{ [         9, parenright, bracketright               ] };
    238     key <AE10>	{ [         0,      equal,   braceright               ] };
    239     key <AE11>	{ [apostrophe,   question                             ] };
    240     key <AE12>	{ [    igrave, asciicircum                            ] };
    241 
    242     key <AD01>	{ [         q,           Q,          at               ] };
    243     key <AD03>	{ [         e,           E,    EuroSign               ] };
    244     key <AD11>	{ [    egrave,     eacute                             ] };
    245     key <AD12>	{ [      plus,   asterisk,   asciitilde               ] };
    246 
    247     key <AC10>	{ [    ograve,   ccedilla                             ] };
    248     key <AC11>	{ [    agrave,     degree                             ] };
    249     key <BKSL>	{ [    ugrave,    section,       grave                ] };
    250 
    251     key <LSGT>	{ [      less,    greater                             ] };
    252     key <AB08>	{ [     comma,  semicolon                             ] };
    253     key <AB09>	{ [    period,      colon                             ] };
    254     key <AB10>	{ [     minus, underscore                             ] };
    255 
    256     include "level3(ralt_switch)"
    257     include "kpdl(comma)"
    258 };
    259 
    260 
    261 partial alphanumeric_keys
    262 xkb_symbols "fur" {
    263 
    264 	include "latin(type4)"
    265 
    266 	name[Group1] = "Friulian (Italy)";
    267 
    268 	key <TLDE>	{[ backslash,        bar,       notsign,     brokenbar ]};
    269 
    270 	key <AE02>	{[         2,   quotedbl,   twosuperior,dead_doubleacute]};
    271 	key <AE03>	{[         3,   sterling, threesuperior,         U1D49 ]};
    272 	key <AE04>	{[         4,     dollar,    onequarter,     oneeighth ]};
    273 	key <AE05>	{[         5,    percent,      EuroSign,       onehalf ]};
    274 	key <AE10>	{[         0,      equal,    braceright,   dead_ogonek ]};
    275 	key <AE11>	{[apostrophe,   question,         grave,  questiondown ]};
    276 	key <AE12>	{[    igrave, asciicircum,   asciitilde,dead_circumflex]};
    277 
    278 	key <AD03>	{[         e,          E,   ecircumflex,   Ecircumflex ]};
    279 	key <AD05>	{[         t,          T,         U1D57,         U1D40 ]};
    280 	key <AD07>	{[         u,          U,   ucircumflex,      NoSymbol ]};
    281 	key <AD08>	{[         i,          I,   icircumflex,   Icircumflex ]};
    282 	key <AD09>	{[         o,          O,   ocircumflex,   Ocircumflex ]};
    283 	key <AD11>	{[    egrave,     eacute,   bracketleft,     braceleft ]};
    284 	key <AD12>	{[      plus,   asterisk,  bracketright,    braceright ]};
    285 
    286 	key <AC01>	{[         a,          A,   acircumflex,   Acircumflex ]};
    287 	key <AC03>	{[         d,          D,         U1D48                ]};
    288 	key <AC04>	{[         f,          F,         U1DA0,   ordfeminine ]};
    289 	key <AC10>	{[    ograve,   ccedilla,            at,  dead_cedilla ]};
    290 	key <AC11>	{[    agrave,     degree,    numbersign,dead_abovering ]};
    291 	key <BKSL>	{[    ugrave,    section,    dead_grave,    dead_breve ]};
    292 
    293 	key <LSGT>	{[      less,    greater, guillemotleft,guillemotright ]};
    294 	key <AB03>	{[         c,          C,         U1D9C,     copyright ]};
    295 	key <AB06>	{[         n,          N,         U207F,        Ntilde ]};
    296 	key <AB07>	{[         m,          M,         U1D50,            mu ]};
    297 	key <AB08>	{[     comma,  semicolon,    dead_acute,      multiply ]};
    298 	key <AB09>	{[    period,      colon,periodcentered,dead_diaeresis ]};
    299 	key <AB10>	{[     minus, underscore,   dead_macron,      division ]};
    300 
    301 	include "level3(ralt_switch)"
    302 };
    303 
    304 // EXTRAS:
    305 
    306 partial alphanumeric_keys
    307 	xkb_symbols "sun_type6" {
    308 	include "sun_vndr/it(sun_type6)"
    309 };
    310 
    311 partial alphanumeric_keys
    312 xkb_symbols "lld" {
    313     include "it(basic)"
    314     name[Group1] = "Italian (Ladin)";
    315 
    316     key <AD08> { [ i, I, idiaeresis, Idiaeresis ] };
    317     key <AD10> { [ p, P, ediaeresis, Ediaeresis ] };
    318 
    319     key <AC01> { [ a, A, aacute, Aacute ] };
    320     key <AC02> { [ s, S, sacute, Sacute ] };
    321 
    322     key <AB03> { [ c, C, cacute, Cacute ] };
    323 };
    324 
    325 partial alphanumeric_keys
    326 xkb_symbols "intl" {
    327     include "it(basic)"
    328     name[Group1] = "Italian (intl., with dead keys)";
    329 
    330     key <AE12> { [ igrave, asciicircum,  asciitilde, dead_circumflex ] };
    331 
    332     key <AD03> { [      e,           E,    EuroSign,           U0259 ] };
    333 
    334     key <AC03> { [      d,           D,       U1E0D,           U1E0C ] };
    335     key <AC04> { [      f,           F,       U0111,           U0110 ] };
    336     key <AC06> { [      h,           H,       U1E25,           U1E24 ] };
    337     key <AC11> { [ agrave,      degree,  numbersign,           U1D58 ] };
    338     key <BKSL> { [ ugrave,     section,  dead_grave,      dead_breve ] };
    339 
    340     key <AB01> { [      z,           Z                               ] };
    341     key <AB02> { [      x,           X,       U03C7,           U03A7 ] };
    342 };
    343 
    344 partial alphanumeric_keys
    345 xkb_symbols "scn" {
    346     include "it(basic)"
    347     name[Group1] = "Sicilian";
    348 
    349     key <AE12> { [ iacute, asciicircum,  asciitilde, dead_circumflex ] };
    350 
    351     key <AD03> { [      e,           E,    EuroSign,     ecircumflex ] };
    352     key <AD04> { [      r,           R,  ediaeresis,      Ediaeresis ] };
    353     key <AD07> { [      u,           U, ucircumflex,     Ucircumflex ] };
    354     key <AD08> { [      i,           I, icircumflex,     Icircumflex ] };
    355     key <AD09> { [      o,           O, ocircumflex,     Ocircumflex ] };
    356 
    357     key <AC01> { [      a,           A, acircumflex,     Acircumflex ] };
    358     key <AC02> { [      s,           S,      scaron,          Scaron ] };
    359     key <AC03> { [      d,           D,       U1E0D,           U1E0C ] };
    360     key <AC04> { [      f,           F,       U0111,           U0110 ] };
    361     key <AC11> { [ agrave,      degree,  numbersign,           U1D58 ] };
    362 
    363     // Replaced dead_grave by ugrave, since it's common to write mixed
    364     // Sicilian - Italian (where we replaced ugrave with uacute)
    365     key <BKSL> { [ uacute,     section,      ugrave,      dead_breve ] };
    366 
    367     // In our Windows layout, there is no , but . Since this character
    368     // is available via CapsLock, I decided to keep  in place, as the
    369     // Italian layout.
    370     key <AB02> { [      x,           X,       U03C7,           U03A7 ] };
    371     key <AB03> { [      c,           C,    ccedilla,       copyright ] };
    372 };
    373 
    374 // layout for Italian Dvorak
    375 // based on https://web.archive.org/web/20170331132815/http://idvorak.altervista.org/
    376 
    377 partial alphanumeric_keys
    378 xkb_symbols "dvorak" {
    379     include "it(basic)"
    380     name[Group1]= "Italian (Dvorak)";
    381 
    382     key <AD01> { [ agrave, degree, numbersign ] };
    383     key <AD02> { [ comma, semicolon ] };
    384     key <AD03> { [ period, colon ] };
    385     key <AD04> { [ p, P ] };
    386     key <AD05> { [ y, Y ] };
    387     key <AD06> { [ f, F ] };
    388     key <AD07> { [ g, G ] };
    389     key <AD08> { [ c, C ] };
    390     key <AD09> { [ r, R ] };
    391     key <AD10> { [ l, L ] };
    392     key <AD11> { [ egrave, eacute, bracketleft ] };
    393     key <AD12> { [ plus, asterisk, bracketright ] };
    394 
    395     key <AC01> { [ a, A ] };
    396     key <AC02> { [ o, O ] };
    397     key <AC03> { [ e, E ] };
    398     key <AC04> { [ u, U ] };
    399     key <AC05> { [ i, I ] };
    400     key <AC06> { [ d, D ] };
    401     key <AC07> { [ h, H ] };
    402     key <AC08> { [ t, T ] };
    403     key <AC09> { [ n, N ] };
    404     key <AC10> { [ s, S ] };
    405     key <AC11> { [ minus, underscore ] };
    406     key <AC12> { [ ugrave, section ] };
    407 
    408     key <AB01> { [ ograve, ccedilla, at ] };
    409     key <AB02> { [ q, Q ] } ;
    410     key <AB03> { [ j, J ] };
    411     key <AB04> { [ k, K ] };
    412     key <AB05> { [ x, X ] };
    413     key <AB06> { [ b, B ] };
    414     key <AB07> { [ m, M ] };
    415     key <AB08> { [ w, W ] };
    416     key <AB09> { [ v, V ] };
    417     key <AB10> { [ z, Z ] };
    418 };
    419