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