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