Home | History | Annotate | Line # | Download | only in symbols
fi revision 1.1.1.13
      1 //
      2 // X keyboard maps for Finland
      3 //
      4 // SFS 5966 / Kotoistus keymap created by Troy Korjuslommi
      5 // Classic keymap based on traditional by Marko Myllynen
      6 // Eliminate deadkeys alternative sent by Linus Torvalds
      7 //
      8 
      9 default  partial alphanumeric_keys
     10 xkb_symbols "kotoistus" {
     11 
     12     // Official keymap for Finland based on SFS 5966 standard
     13     //
     14     // This keymap implements all the functionality of Annex 1
     15     // of the standard and additionally defines the following to
     16     // allow entering these characters with keyboards without LSGT.
     17     //
     18     // AE08+4, U+003C : LESS-THAN SIGN     (less)
     19     // AE09+4, U+003E : GREATER-THAN SIGN  (greater)
     20     // AD08+4, U+007C : VERTICAL LINE      (bar)
     21     //
     22     // Annex 3 of the standard is implemented in fi_FI.UTF-8/Compose
     23 
     24     name[Group1]="Finnish";
     25 
     26     key <TLDE> { [  section,         onehalf,          dead_stroke,           NoSymbol              ] };
     27     key <AE01> { [  1,               exclam,           NoSymbol,              exclamdown            ] };
     28     key <AE02> { [  2,               quotedbl,         at,                    rightdoublequotemark  ] };
     29     key <AE03> { [  3,               numbersign,       sterling,              guillemotright        ] };
     30     key <AE04> { [  4,               currency,         dollar,                guillemotleft         ] };
     31     key <AE05> { [  5,               percent,          permille,              leftdoublequotemark   ] };
     32     key <AE06> { [  6,               ampersand,        singlelowquotemark,    doublelowquotemark    ] };
     33     key <AE07> { [  7,               slash,            braceleft,             NoSymbol              ] };
     34     key <AE08> { [  8,               parenleft,        bracketleft,           less                  ] };
     35     key <AE09> { [  9,               parenright,       bracketright,          greater               ] };
     36     key <AE10> { [  0,               equal,            braceright,            degree                ] };
     37     key <AE11> { [  plus,            question,         backslash,             questiondown          ] };
     38     key <AE12> { [  dead_acute,      dead_grave,       dead_cedilla,          dead_ogonek           ] };
     39 
     40     key <AD01> { [  q,               Q,                q,                     Q                     ] };
     41     key <AD02> { [  w,               W,                w,                     W                     ] };
     42     key <AD03> { [  e,               E,                EuroSign,              NoSymbol              ] };
     43     key <AD04> { [  r,               R,                r,                     R                     ] };
     44     key <AD05> { [  t,               T,                thorn,                 THORN                 ] };
     45     key <AD06> { [  y,               Y,                y,                     Y                     ] };
     46     key <AD07> { [  u,               U,                u,                     U                     ] };
     47     key <AD08> { [  i,               I,                idotless,              bar                   ] };
     48     key <AD09> { [  o,               O,                oe,                    OE                    ] };
     49     key <AD10> { [  p,               P,                dead_horn,             dead_hook             ] };
     50     key <AD11> { [  aring,           Aring,            dead_doubleacute,      dead_abovering        ] };
     51     key <AD12> { [  dead_diaeresis,  dead_circumflex,  dead_tilde,            dead_macron           ] };
     52 
     53     key <AC01> { [  a,               A,                schwa,                 SCHWA                 ] };
     54     key <AC02> { [  s,               S,                ssharp,                NoSymbol              ] };
     55     key <AC03> { [  d,               D,                eth,                   ETH                   ] };
     56     key <AC04> { [  f,               F,                f,                     F                     ] };
     57     key <AC05> { [  g,               G,                g,                     G                     ] };
     58     key <AC06> { [  h,               H,                h,                     H                     ] };
     59     key <AC07> { [  j,               J,                j,                     J                     ] };
     60     key <AC08> { [  k,               K,                kra,                   NoSymbol              ] };
     61     key <AC09> { [  l,               L,                dead_stroke,           NoSymbol              ] };
     62     key <AC10> { [  odiaeresis,      Odiaeresis,       oslash,                Oslash                ] };
     63     key <AC11> { [  adiaeresis,      Adiaeresis,       ae,                    AE                    ] };
     64     key <BKSL> { [  apostrophe,      asterisk,         dead_caron,            dead_breve            ] };
     65 
     66     key <LSGT> { [  less,            greater,          bar,                   NoSymbol              ] };
     67     key <AB01> { [  z,               Z,                ezh,                   EZH                   ] };
     68     key <AB02> { [  x,               X,                multiply,              periodcentered        ] };
     69     key <AB03> { [  c,               C,                c,                     C                     ] };
     70     key <AB04> { [  v,               V,                v,                     V                     ] };
     71     key <AB05> { [  b,               B,                b,                     B                     ] };
     72     key <AB06> { [  n,               N,                eng,                   ENG                   ] };
     73     key <AB07> { [  m,               M,                mu,                    emdash                ] };
     74     key <AB08> { [  comma,           semicolon,        rightsinglequotemark,  leftsinglequotemark   ] };
     75     key <AB09> { [  period,          colon,            dead_belowdot,         dead_abovedot         ] };
     76     key <AB10> { [  minus,           underscore,       endash,                dead_belowcomma       ] };
     77 
     78     include "nbsp(level4)"
     79     include "nbsp(level3)"
     80     include "kpdl(comma)"
     81     include "level3(ralt_switch)"
     82 };
     83 
     84 partial alphanumeric_keys
     85 xkb_symbols "winkeys" {
     86 
     87     include "fi(kotoistus)"
     88     name[Group1]="Finnish (Winkeys)";
     89     include "eurosign(5)"
     90 };
     91 
     92 partial alphanumeric_keys
     93 xkb_symbols "classic" {
     94 
     95     include "fi(fi)"
     96 
     97     name[Group1]="Finnish (classic)";
     98 };
     99 
    100 hidden partial alphanumeric_keys
    101 xkb_symbols "fi" {
    102 
    103     // Classic Finnish keyboard layout with dead keys
    104 
    105     key <TLDE> { [  section,         onehalf,          onequarter,            threequarters         ] };
    106     key <AE01> { [  1,               exclam,           exclamdown,            onesuperior           ] };
    107     key <AE02> { [  2,               quotedbl,         at,                    twosuperior           ] };
    108     key <AE03> { [  3,               numbersign,       sterling,              threesuperior         ] };
    109     key <AE04> { [  4,               currency,         dollar,                cent                  ] };
    110     key <AE05> { [  5,               percent,          EuroSign,              masculine             ] };
    111     key <AE06> { [  6,               ampersand,        yen,                   ordfeminine           ] };
    112     key <AE07> { [  7,               slash,            braceleft,             plusminus             ] };
    113     key <AE08> { [  8,               parenleft,        bracketleft,           less                  ] };
    114     key <AE09> { [  9,               parenright,       bracketright,          greater               ] };
    115     key <AE10> { [  0,               equal,            braceright,            degree                ] };
    116     key <AE11> { [  plus,            question,         backslash,             questiondown          ] };
    117     key <AE12> { [  dead_acute,      dead_grave,       dead_cedilla,          dead_ogonek           ] };
    118 
    119     key <AD01> { [  q,               Q,                q,                     Q                     ] };
    120     key <AD02> { [  w,               W,                w,                     W                     ] };
    121     key <AD03> { [  e,               E,                EuroSign,              cent                  ] };
    122     key <AD04> { [  r,               R,                registered,            NoSymbol              ] };
    123     key <AD05> { [  t,               T,                thorn,                 THORN                 ] };
    124     key <AD06> { [  y,               Y,                y,                     Y                     ] };
    125     key <AD07> { [  u,               U,                u,                     U                     ] };
    126     key <AD08> { [  i,               I,                idotless,              bar                   ] };
    127     key <AD09> { [  o,               O,                o,                     O                     ] };
    128     key <AD10> { [  p,               P,                paragraph,             NoSymbol              ] };
    129     key <AD11> { [  aring,           Aring,            oe,                    OE                    ] };
    130     key <AD12> { [  dead_diaeresis,  dead_circumflex,  dead_tilde,            dead_caron            ] };
    131 
    132     key <AC01> { [  a,               A,                schwa,                 SCHWA                 ] };
    133     key <AC02> { [  s,               S,                scaron,                Scaron                ] };
    134     key <AC03> { [  d,               D,                eth,                   ETH                   ] };
    135     key <AC04> { [  f,               F,                f,                     F                     ] };
    136     key <AC05> { [  g,               G,                eng,                   ENG                   ] };
    137     key <AC06> { [  h,               H,                h,                     H                     ] };
    138     key <AC07> { [  j,               J,                j,                     J                     ] };
    139     key <AC08> { [  k,               K,                kra,                   NoSymbol              ] };
    140     key <AC09> { [  l,               L,                dead_stroke,           NoSymbol              ] };
    141     key <AC10> { [  odiaeresis,      Odiaeresis,       oslash,                Oslash                ] };
    142     key <AC11> { [  adiaeresis,      Adiaeresis,       ae,                    AE                    ] };
    143     key <BKSL> { [  apostrophe,      asterisk,         dead_caron,            dead_breve            ] };
    144 
    145     key <LSGT> { [  less,            greater,          bar,                   brokenbar             ] };
    146     key <AB01> { [  z,               Z,                zcaron,                Zcaron                ] };
    147     key <AB02> { [  x,               X,                multiply,              division              ] };
    148     key <AB03> { [  c,               C,                copyright,             cent                  ] };
    149     key <AB04> { [  v,               V,                v,                     V                     ] };
    150     key <AB05> { [  b,               B,                ssharp,                NoSymbol              ] };
    151     key <AB06> { [  n,               N,                ntilde,                Ntilde                ] };
    152     key <AB07> { [  m,               M,                mu,                    NoSymbol              ] };
    153     key <AB08> { [  comma,           semicolon,        dead_cedilla,          dead_ogonek           ] };
    154     key <AB09> { [  period,          colon,            periodcentered,        notsign               ] };
    155     key <AB10> { [  minus,           underscore,       hyphen,                dead_macron           ] };
    156 
    157     include "nbsp(level4)"
    158     include "kpdl(comma)"
    159     include "level3(ralt_switch)"
    160 };
    161 
    162 partial alphanumeric_keys
    163 xkb_symbols "nodeadkeys" {
    164 
    165     // Classic Finnish keyboard layout without dead keys
    166 
    167     include "fi(fi)"
    168 
    169     name[Group1]="Finnish (classic, no dead keys)";
    170 
    171     key <AE12> { [  acute,           grave,            cedilla,               ogonek                ] };
    172     key <AD12> { [  diaeresis,       asciicircum,      asciitilde,            caron                 ] };
    173     key <AC09> { [  l,               L,                l,                     L                     ] };
    174     key <BKSL> { [  apostrophe,      asterisk,         caron,                 breve                 ] };
    175     key <AB08> { [  comma,           semicolon,        cedilla,               ogonek                ] };
    176     key <AB10> { [  minus,           underscore,       hyphen,                macron                ] };
    177 };
    178 
    179 partial alphanumeric_keys
    180 xkb_symbols "smi" {
    181 
    182     // Describes the differences between a Norwegian Northern Sami
    183     // (keyboard with dead key support) and a Swedish/Finnish Sami
    184     // keyboard according to the specs at:
    185     // http://www.hum.uit.no/a/trond/se-lat9-sefi-keys.html
    186 
    187     include "no(smi)"
    188 
    189     name[Group1]="Northern Saami (Finland)";
    190 
    191     key <AC10> { [  odiaeresis,      Odiaeresis,       oslash,                Oslash                ] };
    192     key <AC11> { [  adiaeresis,      Adiaeresis,       ae,                    AE                    ] };
    193 };
    194 
    195 partial alphanumeric_keys
    196 xkb_symbols "mac" {
    197 
    198     // Macintosh keyboard for Finland based on Swedish(Macintosh) keyboard
    199 
    200     include "se(mac)"
    201 
    202     name[Group1]="Finnish (Macintosh)";
    203 };
    204 
    205 partial alphanumeric_keys
    206 xkb_symbols "sun_type6" {
    207 
    208     // Sun Type 6/7 keyboard for Finland
    209 
    210     include "sun_vndr/fi(sun_type6)"
    211 };
    212 
    213 partial
    214 xkb_symbols "das" {
    215 
    216     // This is DAS layout for typing Finnish. It is originally designed by
    217     // Cristian Seres (cseres at iki.fi).
    218     // More information about DAS: http://c.seres.fi/DAS_en.html
    219     // This xkeyboard layout is originally made by Joel Lehtonen,
    220     // (joel.lehtonen at iki.fi) on 2008-01-14. He released it under Public
    221     // domain.
    222 
    223     name[Group1]="Finnish (DAS)";
    224 
    225     key <AE01> { [  1,               exclam,           section                                      ] };
    226     key <AE02> { [  2,               quotedbl,         twosuperior                                  ] };
    227     key <AE03> { [  3,               at,               sterling                                     ] };
    228     key <AE04> { [  4,               EuroSign,         dollar                                       ] };
    229     key <AE05> { [  5,               percent,          onehalf                                      ] };
    230     key <AE06> { [  6,               ampersand                                                      ] };
    231     key <AE07> { [  7,               braceleft                                                      ] };
    232     key <AE08> { [  8,               parenleft,        bracketleft                                  ] };
    233     key <AE09> { [  9,               parenright,       bracketright                                 ] };
    234     key <AE10> { [  0,               braceright,       degree                                       ] };
    235     key <AE11> { [  plus,            question,         currency                                     ] };
    236     key <AE12> { [  equal,           numbersign                                                     ] };
    237 
    238     key <AD01> { [  p,               P,                Greek_pi                                     ] };
    239     key <AD02> { [  h,               H                                                              ] };
    240     key <AD03> { [  r,               R,                dead_circumflex                              ] };
    241     key <AD04> { [  k,               K,                dead_caron                                   ] };
    242     key <AD05> { [  less,            greater                                                        ] };
    243     key <AD06> { [  apostrophe,      bar                                                            ] };
    244     key <AD07> { [  w,               W                                                              ] };
    245     key <AD08> { [  u,               U                                                              ] };
    246     key <AD09> { [  y,               Y                                                              ] };
    247     key <AD10> { [  b,               B                                                              ] };
    248     key <AD11> { [  q,               Q                                                              ] };
    249     key <AD12> { [  z,               Z,                zcaron,                Zcaron                ] };
    250 
    251     key <AC01> { [  s,               S,                scaron,                Scaron                ] };
    252     key <AC02> { [  l,               L,                dead_acute                                   ] };
    253     key <AC03> { [  n,               N,                dead_grave                                   ] };
    254     key <AC04> { [  t,               T,                dead_diaeresis                               ] };
    255     key <AC05> { [  v,               V                                                              ] };
    256     key <AC06> { [  g,               G                                                              ] };
    257     key <AC07> { [  a,               A                                                              ] };
    258     key <AC08> { [  i,               I                                                              ] };
    259     key <AC09> { [  o,               O                                                              ] };
    260     key <AC10> { [  e,               E                                                              ] };
    261     key <AC11> { [  c,               C                                                              ] };
    262     key <TLDE> { [  backslash,       dead_tilde                                                     ] };
    263 
    264     key <BKSL> { [  asterisk,        slash                                                          ] };
    265     key <LSGT> { [  f,               F                                                              ] };
    266     key <AB01> { [  x,               X                                                              ] };
    267     key <AB02> { [  d,               D                                                              ] };
    268     key <AB03> { [  m,               M,                mu                                           ] };
    269     key <AB04> { [  j,               J                                                              ] };
    270     key <AB05> { [  aring,           Aring                                                          ] };
    271     key <AB06> { [  odiaeresis,      Odiaeresis,       oe,                    OE                    ] };
    272     key <AB07> { [  adiaeresis,      Adiaeresis,       ae,                    AE                    ] };
    273     key <AB08> { [  comma,           semicolon                                                      ] };
    274     key <AB09> { [  period,          colon                                                          ] };
    275     key <AB10> { [  minus,           underscore,       U2013,                 dead_macron           ] };
    276     key <SPCE> { [  space,           space,            space,                 nobreakspace          ] };
    277 
    278     include "kpdl(comma)"
    279     include "level3(ralt_switch)"
    280 };
    281 
    282 partial alphanumeric_keys
    283 xkb_symbols "fidvorak" {
    284 
    285     // Dvorak keyboard layout for use with Finnish by Pekka Oinas.
    286     //
    287     // Dedicated keys for  and  by utilizing the extra LSGT key found on Finnish keyboards
    288     // and by moving colon and semicolon behind shift-modifiers on comma and period.
    289     // Less and greater than symbols moved behind 3rd level modifiers on comma and period.
    290     // Includes an assortment of dead keys but is not made with them in mind.
    291 
    292     name[Group1]= "Finnish Dvorak";
    293 
    294     key <TLDE> { [  grave,           asciitilde,       dead_grave,            dead_tilde            ] };
    295     key <AE01> { [  1,               exclam,           NoSymbol,              exclamdown            ] };
    296     key <AE02> { [  2,               at,               cent,                  rightdoublequotemark  ] };
    297     key <AE03> { [  3,               numbersign,       sterling                                     ] };
    298     key <AE04> { [  4,               dollar,           currency                                     ] };
    299     key <AE05> { [  5,               percent,          permille,              leftdoublequotemark   ] };
    300     key <AE06> { [  6,               asciicircum,      dead_circumflex,       doublelowquotemark    ] };
    301     key <AE07> { [  7,               ampersand,        section,               singlelowquotemark    ] };
    302     key <AE08> { [  8,               asterisk                                                       ] };
    303     key <AE09> { [  9,               parenleft                                                      ] };
    304     key <AE10> { [  0,               parenright,       degree,                dead_abovering        ] };
    305     key <AE11> { [  bracketleft,     braceleft                                                      ] };
    306     key <AE12> { [  bracketright,    braceright                                                     ] };
    307 
    308     key <AD01> { [  apostrophe,      quotedbl,         dead_acute,            dead_doubleacute      ] };
    309     key <AD02> { [  comma,           semicolon,        less,                  leftsinglequotemark   ] };
    310     key <AD03> { [  period,          colon,            greater                                      ] };
    311     key <AD04> { [  p,               P                                                              ] };
    312     key <AD05> { [  y,               Y,                yen                                          ] };
    313     key <AD06> { [  f,               F                                                              ] };
    314     key <AD07> { [  g,               G                                                              ] };
    315     key <AD08> { [  c,               C                                                              ] };
    316     key <AD09> { [  r,               R                                                              ] };
    317     key <AD10> { [  l,               L,                notsign                                      ] };
    318     key <AD11> { [  slash,           question,         NoSymbol,              questiondown          ] };
    319     key <AD12> { [  equal,           plus                                                           ] };
    320 
    321     key <AC01> { [  a,               A,                schwa,                 SCHWA                 ] };
    322     key <AC02> { [  o,               O,                aring,                 Aring                 ] };
    323     key <AC03> { [  e,               E,                EuroSign                                     ] };
    324     key <AC04> { [  u,               U,                udiaeresis,            Udiaeresis            ] };
    325     key <AC05> { [  i,               I,                idotless,              Iabovedot             ] };
    326     key <AC06> { [  d,               D,                eth,                   ETH                   ] };
    327     key <AC07> { [  h,               H                                                              ] };
    328     key <AC08> { [  t,               T,                thorn,                 THORN                 ] };
    329     key <AC09> { [  n,               N,                eng,                   ENG                   ] };
    330     key <AC10> { [  s,               S,                ssharp,                U1E9E                 ] };
    331     key <AC11> { [  minus,           underscore,       endash,                emdash                ] };
    332     key <BKSL> { [  backslash,       bar,              dead_caron,            dead_breve            ] };
    333 
    334     key <LSGT> { [  adiaeresis,      Adiaeresis,       ae,                    AE                    ] };
    335     key <AB01> { [  odiaeresis,      Odiaeresis,       dead_diaeresis,        dead_macron           ] };
    336     key <AB02> { [  q,               Q,                ooblique,              Ooblique              ] };
    337     key <AB03> { [  j,               J                                                              ] };
    338     key <AB04> { [  k,               K,                kra                                          ] };
    339     key <AB05> { [  x,               X,                multiply,              periodcentered        ] };
    340     key <AB06> { [  b,               B,                hyphen                                       ] };
    341     key <AB07> { [  m,               M,                mu,                    emdash                ] };
    342     key <AB08> { [  w,               W                                                              ] };
    343     key <AB09> { [  v,               V                                                              ] };
    344     key <AB10> { [  z,               Z,                ezh,                   EZH                   ] };
    345 
    346     include "level3(ralt_switch)"
    347 };
    348