fi revision 9d99ee05
1154daed1Smrg// 2c067fea9Sghen// X keyboard maps for Finland 3154daed1Smrg// 4c067fea9Sghen// SFS 5966 / Kotoistus keymap created by Troy Korjuslommi 5c067fea9Sghen// Classic keymap based on traditional by Marko Myllynen 6c067fea9Sghen// Eliminate deadkeys alternative sent by Linus Torvalds 7c067fea9Sghen// 8c067fea9Sghen 9797b363dSmrgdefault partial alphanumeric_keys 10154daed1Smrgxkb_symbols "kotoistus" { 11154daed1Smrg 12c067fea9Sghen // Official keymap for Finland based on SFS 5966 standard 13c067fea9Sghen // 14c067fea9Sghen // This keymap implements all the functionality of Annex 1 15c067fea9Sghen // of the standard and additionally defines the following to 160412cdedSmrg // allow entering these characters with keyboards without LSGT. 17c067fea9Sghen // 18c067fea9Sghen // AE08+4, U+003C : LESS-THAN SIGN (less) 19c067fea9Sghen // AE09+4, U+003E : GREATER-THAN SIGN (greater) 20c067fea9Sghen // AD08+4, U+007C : VERTICAL LINE (bar) 21c067fea9Sghen // 22c067fea9Sghen // Annex 3 of the standard is implemented in fi_FI.UTF-8/Compose 23c067fea9Sghen 24bfd7cbc1Smrg name[Group1]="Finnish"; 25154daed1Smrg 26c067fea9Sghen key <TLDE> { [ section, onehalf, dead_stroke, NoSymbol ] }; 27c067fea9Sghen key <AE01> { [ 1, exclam, NoSymbol, exclamdown ] }; 28c067fea9Sghen key <AE02> { [ 2, quotedbl, at, rightdoublequotemark ] }; 29c067fea9Sghen key <AE03> { [ 3, numbersign, sterling, guillemotright ] }; 30c067fea9Sghen key <AE04> { [ 4, currency, dollar, guillemotleft ] }; 310412cdedSmrg key <AE05> { [ 5, percent, permille, leftdoublequotemark ] }; 32c067fea9Sghen key <AE06> { [ 6, ampersand, singlelowquotemark, doublelowquotemark ] }; 33c067fea9Sghen key <AE07> { [ 7, slash, braceleft, NoSymbol ] }; 34c067fea9Sghen key <AE08> { [ 8, parenleft, bracketleft, less ] }; 35c067fea9Sghen key <AE09> { [ 9, parenright, bracketright, greater ] }; 36c067fea9Sghen key <AE10> { [ 0, equal, braceright, degree ] }; 37c067fea9Sghen key <AE11> { [ plus, question, backslash, questiondown ] }; 38c067fea9Sghen key <AE12> { [ dead_acute, dead_grave, dead_cedilla, dead_ogonek ] }; 39c067fea9Sghen 40c067fea9Sghen key <AD01> { [ q, Q, q, Q ] }; 41c067fea9Sghen key <AD02> { [ w, W, w, W ] }; 42c067fea9Sghen key <AD03> { [ e, E, EuroSign, NoSymbol ] }; 43c067fea9Sghen key <AD04> { [ r, R, r, R ] }; 44c067fea9Sghen key <AD05> { [ t, T, thorn, THORN ] }; 45c067fea9Sghen key <AD06> { [ y, Y, y, Y ] }; 46c067fea9Sghen key <AD07> { [ u, U, u, U ] }; 47c067fea9Sghen key <AD08> { [ i, I, idotless, bar ] }; 48c067fea9Sghen key <AD09> { [ o, O, oe, OE ] }; 49c067fea9Sghen key <AD10> { [ p, P, dead_horn, dead_hook ] }; 50c067fea9Sghen key <AD11> { [ aring, Aring, dead_doubleacute, dead_abovering ] }; 51c067fea9Sghen key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde, dead_macron ] }; 52c067fea9Sghen 53c067fea9Sghen key <AC01> { [ a, A, schwa, SCHWA ] }; 549d99ee05Smrg key <AC02> { [ s, S, ssharp, U1E9E ] }; 55c067fea9Sghen key <AC03> { [ d, D, eth, ETH ] }; 56c067fea9Sghen key <AC04> { [ f, F, f, F ] }; 57c067fea9Sghen key <AC05> { [ g, G, g, G ] }; 58c067fea9Sghen key <AC06> { [ h, H, h, H ] }; 59c067fea9Sghen key <AC07> { [ j, J, j, J ] }; 60c067fea9Sghen key <AC08> { [ k, K, kra, NoSymbol ] }; 61c067fea9Sghen key <AC09> { [ l, L, dead_stroke, NoSymbol ] }; 62c067fea9Sghen key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] }; 63c067fea9Sghen key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] }; 64c067fea9Sghen key <BKSL> { [ apostrophe, asterisk, dead_caron, dead_breve ] }; 65c067fea9Sghen 66c067fea9Sghen key <LSGT> { [ less, greater, bar, NoSymbol ] }; 670412cdedSmrg key <AB01> { [ z, Z, ezh, EZH ] }; 68c067fea9Sghen key <AB02> { [ x, X, multiply, periodcentered ] }; 69c067fea9Sghen key <AB03> { [ c, C, c, C ] }; 70c067fea9Sghen key <AB04> { [ v, V, v, V ] }; 71c067fea9Sghen key <AB05> { [ b, B, b, B ] }; 72c067fea9Sghen key <AB06> { [ n, N, eng, ENG ] }; 73c067fea9Sghen key <AB07> { [ m, M, mu, emdash ] }; 74c067fea9Sghen key <AB08> { [ comma, semicolon, rightsinglequotemark, leftsinglequotemark ] }; 75c067fea9Sghen key <AB09> { [ period, colon, dead_belowdot, dead_abovedot ] }; 76c067fea9Sghen key <AB10> { [ minus, underscore, endash, dead_belowcomma ] }; 77154daed1Smrg 78da6c6c0bSmrg include "nbsp(level4)" 79154daed1Smrg include "nbsp(level3)" 80154daed1Smrg include "kpdl(comma)" 81154daed1Smrg include "level3(ralt_switch)" 82154daed1Smrg}; 83154daed1Smrg 8452a82186Smrgpartial alphanumeric_keys 8552a82186Smrgxkb_symbols "winkeys" { 8652a82186Smrg 8752a82186Smrg include "fi(kotoistus)" 8852a82186Smrg name[Group1]="Finnish (Winkeys)"; 8952a82186Smrg include "eurosign(5)" 9052a82186Smrg}; 9152a82186Smrg 92154daed1Smrgpartial alphanumeric_keys 93154daed1Smrgxkb_symbols "classic" { 94c067fea9Sghen 95154daed1Smrg include "fi(fi)" 96154daed1Smrg 97bfd7cbc1Smrg name[Group1]="Finnish (classic)"; 98154daed1Smrg}; 99154daed1Smrg 10021fe479eSmrghidden partial alphanumeric_keys 101154daed1Smrgxkb_symbols "fi" { 102154daed1Smrg 10352a82186Smrg // Classic Finnish keyboard layout with dead keys 104c067fea9Sghen 105c067fea9Sghen key <TLDE> { [ section, onehalf, onequarter, threequarters ] }; 106c067fea9Sghen key <AE01> { [ 1, exclam, exclamdown, onesuperior ] }; 107c067fea9Sghen key <AE02> { [ 2, quotedbl, at, twosuperior ] }; 108c067fea9Sghen key <AE03> { [ 3, numbersign, sterling, threesuperior ] }; 109c067fea9Sghen key <AE04> { [ 4, currency, dollar, cent ] }; 110c067fea9Sghen key <AE05> { [ 5, percent, EuroSign, masculine ] }; 111c067fea9Sghen key <AE06> { [ 6, ampersand, yen, ordfeminine ] }; 112c067fea9Sghen key <AE07> { [ 7, slash, braceleft, plusminus ] }; 11352a82186Smrg key <AE08> { [ 8, parenleft, bracketleft, less ] }; 11452a82186Smrg key <AE09> { [ 9, parenright, bracketright, greater ] }; 115c067fea9Sghen key <AE10> { [ 0, equal, braceright, degree ] }; 116c067fea9Sghen key <AE11> { [ plus, question, backslash, questiondown ] }; 117c067fea9Sghen key <AE12> { [ dead_acute, dead_grave, dead_cedilla, dead_ogonek ] }; 118c067fea9Sghen 119c067fea9Sghen key <AD01> { [ q, Q, q, Q ] }; 120c067fea9Sghen key <AD02> { [ w, W, w, W ] }; 121c067fea9Sghen key <AD03> { [ e, E, EuroSign, cent ] }; 122c067fea9Sghen key <AD04> { [ r, R, registered, NoSymbol ] }; 123c067fea9Sghen key <AD05> { [ t, T, thorn, THORN ] }; 124c067fea9Sghen key <AD06> { [ y, Y, y, Y ] }; 125c067fea9Sghen key <AD07> { [ u, U, u, U ] }; 126c067fea9Sghen key <AD08> { [ i, I, idotless, bar ] }; 127c067fea9Sghen key <AD09> { [ o, O, o, O ] }; 128c067fea9Sghen key <AD10> { [ p, P, paragraph, NoSymbol ] }; 129c067fea9Sghen key <AD11> { [ aring, Aring, oe, OE ] }; 130c067fea9Sghen key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde, dead_caron ] }; 131c067fea9Sghen 132c067fea9Sghen key <AC01> { [ a, A, schwa, SCHWA ] }; 133c067fea9Sghen key <AC02> { [ s, S, scaron, Scaron ] }; 134c067fea9Sghen key <AC03> { [ d, D, eth, ETH ] }; 135c067fea9Sghen key <AC04> { [ f, F, f, F ] }; 136c067fea9Sghen key <AC05> { [ g, G, eng, ENG ] }; 137c067fea9Sghen key <AC06> { [ h, H, h, H ] }; 138c067fea9Sghen key <AC07> { [ j, J, j, J ] }; 139c067fea9Sghen key <AC08> { [ k, K, kra, NoSymbol ] }; 140c067fea9Sghen key <AC09> { [ l, L, dead_stroke, NoSymbol ] }; 141c067fea9Sghen key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] }; 142c067fea9Sghen key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] }; 143c067fea9Sghen key <BKSL> { [ apostrophe, asterisk, dead_caron, dead_breve ] }; 144c067fea9Sghen 145c067fea9Sghen key <LSGT> { [ less, greater, bar, brokenbar ] }; 146c067fea9Sghen key <AB01> { [ z, Z, zcaron, Zcaron ] }; 147c067fea9Sghen key <AB02> { [ x, X, multiply, division ] }; 148c067fea9Sghen key <AB03> { [ c, C, copyright, cent ] }; 149c067fea9Sghen key <AB04> { [ v, V, v, V ] }; 1509d99ee05Smrg key <AB05> { [ b, B, ssharp, U1E9E ] }; 151c067fea9Sghen key <AB06> { [ n, N, ntilde, Ntilde ] }; 152c067fea9Sghen key <AB07> { [ m, M, mu, NoSymbol ] }; 153c067fea9Sghen key <AB08> { [ comma, semicolon, dead_cedilla, dead_ogonek ] }; 154c067fea9Sghen key <AB09> { [ period, colon, periodcentered, notsign ] }; 155c067fea9Sghen key <AB10> { [ minus, underscore, hyphen, dead_macron ] }; 156c067fea9Sghen 157c067fea9Sghen include "nbsp(level4)" 158154daed1Smrg include "kpdl(comma)" 159154daed1Smrg include "level3(ralt_switch)" 160154daed1Smrg}; 161154daed1Smrg 162154daed1Smrgpartial alphanumeric_keys 163154daed1Smrgxkb_symbols "nodeadkeys" { 164c067fea9Sghen 165c067fea9Sghen // Classic Finnish keyboard layout without dead keys 166c067fea9Sghen 167154daed1Smrg include "fi(fi)" 168154daed1Smrg 1699184b9c8Smrg name[Group1]="Finnish (classic, no dead keys)"; 170154daed1Smrg 171c067fea9Sghen key <AE12> { [ acute, grave, cedilla, ogonek ] }; 172c067fea9Sghen key <AD12> { [ diaeresis, asciicircum, asciitilde, caron ] }; 173c067fea9Sghen key <AC09> { [ l, L, l, L ] }; 174c067fea9Sghen key <BKSL> { [ apostrophe, asterisk, caron, breve ] }; 175c067fea9Sghen key <AB08> { [ comma, semicolon, cedilla, ogonek ] }; 176c067fea9Sghen key <AB10> { [ minus, underscore, hyphen, macron ] }; 177154daed1Smrg}; 178154daed1Smrg 179c067fea9Sghenpartial alphanumeric_keys 180154daed1Smrgxkb_symbols "smi" { 181154daed1Smrg 182154daed1Smrg // Describes the differences between a Norwegian Northern Sami 183154daed1Smrg // (keyboard with dead key support) and a Swedish/Finnish Sami 184154daed1Smrg // keyboard according to the specs at: 185154daed1Smrg // http://www.hum.uit.no/a/trond/se-lat9-sefi-keys.html 186154daed1Smrg 187154daed1Smrg include "no(smi)" 188154daed1Smrg 189bfd7cbc1Smrg name[Group1]="Northern Saami (Finland)"; 190154daed1Smrg 191c067fea9Sghen key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] }; 192c067fea9Sghen key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] }; 193154daed1Smrg}; 194154daed1Smrg 195c067fea9Sghenpartial alphanumeric_keys 196154daed1Smrgxkb_symbols "mac" { 197154daed1Smrg 198c067fea9Sghen // Macintosh keyboard for Finland based on Swedish(Macintosh) keyboard 199154daed1Smrg 200154daed1Smrg include "se(mac)" 201c067fea9Sghen 202bfd7cbc1Smrg name[Group1]="Finnish (Macintosh)"; 203154daed1Smrg}; 2040412cdedSmrg 2050412cdedSmrgpartial alphanumeric_keys 20652a82186Smrgxkb_symbols "sun_type6" { 20752a82186Smrg 20852a82186Smrg // Sun Type 6/7 keyboard for Finland 20952a82186Smrg 21052a82186Smrg include "sun_vndr/fi(sun_type6)" 2110412cdedSmrg}; 212188967beSsnj 213188967beSsnjpartial 214188967beSsnjxkb_symbols "das" { 215188967beSsnj 216188967beSsnj // This is DAS layout for typing Finnish. It is originally designed by 217188967beSsnj // Cristian Seres (cseres at iki.fi). 218188967beSsnj // More information about DAS: http://c.seres.fi/DAS_en.html 219188967beSsnj // This xkeyboard layout is originally made by Joel Lehtonen, 220188967beSsnj // (joel.lehtonen at iki.fi) on 2008-01-14. He released it under Public 221188967beSsnj // domain. 222188967beSsnj 223188967beSsnj name[Group1]="Finnish (DAS)"; 224188967beSsnj 225188967beSsnj key <AE01> { [ 1, exclam, section ] }; 226188967beSsnj key <AE02> { [ 2, quotedbl, twosuperior ] }; 227188967beSsnj key <AE03> { [ 3, at, sterling ] }; 228188967beSsnj key <AE04> { [ 4, EuroSign, dollar ] }; 229188967beSsnj key <AE05> { [ 5, percent, onehalf ] }; 230188967beSsnj key <AE06> { [ 6, ampersand ] }; 231188967beSsnj key <AE07> { [ 7, braceleft ] }; 232188967beSsnj key <AE08> { [ 8, parenleft, bracketleft ] }; 233188967beSsnj key <AE09> { [ 9, parenright, bracketright ] }; 234188967beSsnj key <AE10> { [ 0, braceright, degree ] }; 235188967beSsnj key <AE11> { [ plus, question, currency ] }; 236188967beSsnj key <AE12> { [ equal, numbersign ] }; 237188967beSsnj 238188967beSsnj key <AD01> { [ p, P, Greek_pi ] }; 239188967beSsnj key <AD02> { [ h, H ] }; 240188967beSsnj key <AD03> { [ r, R, dead_circumflex ] }; 241188967beSsnj key <AD04> { [ k, K, dead_caron ] }; 242188967beSsnj key <AD05> { [ less, greater ] }; 243188967beSsnj key <AD06> { [ apostrophe, bar ] }; 244188967beSsnj key <AD07> { [ w, W ] }; 245188967beSsnj key <AD08> { [ u, U ] }; 246188967beSsnj key <AD09> { [ y, Y ] }; 247188967beSsnj key <AD10> { [ b, B ] }; 248188967beSsnj key <AD11> { [ q, Q ] }; 249188967beSsnj key <AD12> { [ z, Z, zcaron, Zcaron ] }; 250188967beSsnj 251188967beSsnj key <AC01> { [ s, S, scaron, Scaron ] }; 252188967beSsnj key <AC02> { [ l, L, dead_acute ] }; 253188967beSsnj key <AC03> { [ n, N, dead_grave ] }; 254188967beSsnj key <AC04> { [ t, T, dead_diaeresis ] }; 255188967beSsnj key <AC05> { [ v, V ] }; 256188967beSsnj key <AC06> { [ g, G ] }; 257188967beSsnj key <AC07> { [ a, A ] }; 258188967beSsnj key <AC08> { [ i, I ] }; 259188967beSsnj key <AC09> { [ o, O ] }; 260188967beSsnj key <AC10> { [ e, E ] }; 261188967beSsnj key <AC11> { [ c, C ] }; 262188967beSsnj key <TLDE> { [ backslash, dead_tilde ] }; 263188967beSsnj 264188967beSsnj key <BKSL> { [ asterisk, slash ] }; 265188967beSsnj key <LSGT> { [ f, F ] }; 266188967beSsnj key <AB01> { [ x, X ] }; 267188967beSsnj key <AB02> { [ d, D ] }; 268188967beSsnj key <AB03> { [ m, M, mu ] }; 269188967beSsnj key <AB04> { [ j, J ] }; 270188967beSsnj key <AB05> { [ aring, Aring ] }; 271188967beSsnj key <AB06> { [ odiaeresis, Odiaeresis, oe, OE ] }; 272188967beSsnj key <AB07> { [ adiaeresis, Adiaeresis, ae, AE ] }; 273188967beSsnj key <AB08> { [ comma, semicolon ] }; 274188967beSsnj key <AB09> { [ period, colon ] }; 275188967beSsnj key <AB10> { [ minus, underscore, U2013, dead_macron ] }; 276188967beSsnj key <SPCE> { [ space, space, space, nobreakspace ] }; 277188967beSsnj 278188967beSsnj include "kpdl(comma)" 279188967beSsnj include "level3(ralt_switch)" 2802ab00627Smrg}; 2812ab00627Smrg 2822ab00627Smrgpartial alphanumeric_keys 2832ab00627Smrgxkb_symbols "fidvorak" { 2842ab00627Smrg 2852ab00627Smrg // Dvorak keyboard layout for use with Finnish by Pekka Oinas. 2862ab00627Smrg // 2872ab00627Smrg // Dedicated keys for Ä and Ö by utilizing the extra LSGT key found on Finnish keyboards 2882ab00627Smrg // and by moving colon and semicolon behind shift-modifiers on comma and period. 2892ab00627Smrg // Less and greater than symbols moved behind 3rd level modifiers on comma and period. 2902ab00627Smrg // Includes an assortment of dead keys but is not made with them in mind. 2912ab00627Smrg 2922ab00627Smrg name[Group1]= "Finnish Dvorak"; 2932ab00627Smrg 2942ab00627Smrg key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; 2952ab00627Smrg key <AE01> { [ 1, exclam, NoSymbol, exclamdown ] }; 2962ab00627Smrg key <AE02> { [ 2, at, cent, rightdoublequotemark ] }; 2972ab00627Smrg key <AE03> { [ 3, numbersign, sterling ] }; 2982ab00627Smrg key <AE04> { [ 4, dollar, currency ] }; 2992ab00627Smrg key <AE05> { [ 5, percent, permille, leftdoublequotemark ] }; 3002ab00627Smrg key <AE06> { [ 6, asciicircum, dead_circumflex, doublelowquotemark ] }; 3012ab00627Smrg key <AE07> { [ 7, ampersand, section, singlelowquotemark ] }; 3022ab00627Smrg key <AE08> { [ 8, asterisk ] }; 3032ab00627Smrg key <AE09> { [ 9, parenleft ] }; 304143081caSmrg key <AE10> { [ 0, parenright, degree, dead_abovering ] }; 3052ab00627Smrg key <AE11> { [ bracketleft, braceleft ] }; 3062ab00627Smrg key <AE12> { [ bracketright, braceright ] }; 3072ab00627Smrg 3082ab00627Smrg key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_doubleacute ] }; 3092ab00627Smrg key <AD02> { [ comma, semicolon, less, leftsinglequotemark ] }; 3102ab00627Smrg key <AD03> { [ period, colon, greater ] }; 3112ab00627Smrg key <AD04> { [ p, P ] }; 3122ab00627Smrg key <AD05> { [ y, Y, yen ] }; 3132ab00627Smrg key <AD06> { [ f, F ] }; 3142ab00627Smrg key <AD07> { [ g, G ] }; 3152ab00627Smrg key <AD08> { [ c, C ] }; 3162ab00627Smrg key <AD09> { [ r, R ] }; 3172ab00627Smrg key <AD10> { [ l, L, notsign ] }; 3182ab00627Smrg key <AD11> { [ slash, question, NoSymbol, questiondown ] }; 3192ab00627Smrg key <AD12> { [ equal, plus ] }; 3202ab00627Smrg 3212ab00627Smrg key <AC01> { [ a, A, schwa, SCHWA ] }; 3222ab00627Smrg key <AC02> { [ o, O, aring, Aring ] }; 3232ab00627Smrg key <AC03> { [ e, E, EuroSign ] }; 3242ab00627Smrg key <AC04> { [ u, U, udiaeresis, Udiaeresis ] }; 3252ab00627Smrg key <AC05> { [ i, I, idotless, Iabovedot ] }; 3262ab00627Smrg key <AC06> { [ d, D, eth, ETH ] }; 3272ab00627Smrg key <AC07> { [ h, H ] }; 3282ab00627Smrg key <AC08> { [ t, T, thorn, THORN ] }; 3292ab00627Smrg key <AC09> { [ n, N, eng, ENG ] }; 3302ab00627Smrg key <AC10> { [ s, S, ssharp, U1E9E ] }; 3312ab00627Smrg key <AC11> { [ minus, underscore, endash, emdash ] }; 3322ab00627Smrg key <BKSL> { [ backslash, bar, dead_caron, dead_breve ] }; 3332ab00627Smrg 3342ab00627Smrg key <LSGT> { [ adiaeresis, Adiaeresis, ae, AE ] }; 3352ab00627Smrg key <AB01> { [ odiaeresis, Odiaeresis, dead_diaeresis, dead_macron ] }; 3362ab00627Smrg key <AB02> { [ q, Q, ooblique, Ooblique ] }; 3372ab00627Smrg key <AB03> { [ j, J ] }; 3382ab00627Smrg key <AB04> { [ k, K, kra ] }; 3392ab00627Smrg key <AB05> { [ x, X, multiply, periodcentered ] }; 3402ab00627Smrg key <AB06> { [ b, B, hyphen ] }; 3412ab00627Smrg key <AB07> { [ m, M, mu, emdash ] }; 3422ab00627Smrg key <AB08> { [ w, W ] }; 3432ab00627Smrg key <AB09> { [ v, V ] }; 3442ab00627Smrg key <AB10> { [ z, Z, ezh, EZH ] }; 3452ab00627Smrg 3462ab00627Smrg include "level3(ralt_switch)" 347188967beSsnj}; 348