Home | History | Annotate | Line # | Download | only in symbols
      1 //
      2 // Complete set of Romanian keyboards as described in the new Romanian standard
      3 // SR 13392:2004 adopted in December 2004 by ASRO, "Asociatia de Standardizare 
      4 // din Romania".
      5 // 
      6 // The default mapping is the Programmers layout (also known as RO_US) because
      7 // of the lack of Romanian hardware keyboards. The primary standard layout is
      8 // implemented as the "std" variant.
      9 //
     10 // Diacritics with cedillas, as in ISO-8859-2, are no longer supported. This
     11 // error has been corrected in ISO-889-16 through using commabelow accents.
     12 // Pre-Vista MS compatible layout ("winkeys" variant) generates commabelow
     13 // accents too now.
     14 // 
     15 // Created by Cristian Gafton, <gafton (a] redhat.com> (C) 2000
     16 // Modified by Marius Andreiana, <mandreiana (a] yahoo.com> (C) 2001
     17 // Completed by Dumitru Moldovan, <dumol (a] gnome.org> (C) 2001, 2004-2008, 2020
     18 
     19 
     20 default partial alphanumeric_keys
     21 xkb_symbols "basic" {
     22 // This RO_US/Programmers layout, although the secondary layout in the 
     23 // Romanian standard, has always been the "de facto" standard in the 
     24 // Linux/Unix world. It is implemented here as the default layout and it's
     25 // fully compatible with an US keyboard (Euro on AltGr+5 does not count).
     26 
     27     include "us"
     28 
     29     name[Group1]="Romanian";
     30 
     31     key <AE01> { [            1,      exclam,       dead_tilde              ] };
     32     key <AE02> { [            2,          at,       dead_caron              ] };
     33     key <AE03> { [            3,  numbersign,  dead_circumflex              ] };
     34     key <AE04> { [            4,      dollar,       dead_breve              ] };
     35     key <AE05> { [            5,     percent,   dead_abovering              ] };
     36     key <AE06> { [            6, asciicircum,      dead_ogonek              ] };
     37     key <AE07> { [            7,   ampersand,       dead_grave              ] };
     38     key <AE08> { [            8,    asterisk,    dead_abovedot              ] };
     39     key <AE09> { [            9,   parenleft,       dead_acute              ] };
     40     key <AE10> { [            0,  parenright, dead_doubleacute              ] };
     41     key <AE11> { [        minus,  underscore,   dead_diaeresis,      endash ] };
     42     key <AE12> { [        equal,        plus,     dead_cedilla,   plusminus ] };
     43     key <AD01> { [            q,           Q,      acircumflex, Acircumflex ] };
     44     key <AD02> { [            w,           W,           ssharp,       U1e9e ] };
     45     key <AD03> { [            e,           E,         EuroSign              ] };
     46     key <AD05> { [            t,           T,            U021b,       U021a ] };
     47     key <AD08> { [            i,           I,      icircumflex, Icircumflex ] };
     48     key <AD10> { [            p,           P,          section              ] };
     49     key <AD11> { [  bracketleft,   braceleft, doublelowquotemark            ] };
     50     key <AD12> { [ bracketright,  braceright, rightdoublequotemark          ] };
     51     key <AC01> { [            a,           A,           abreve,      Abreve ] };
     52     key <AC02> { [            s,           S,            U0219,       U0218 ] };
     53     key <AC03> { [            d,           D,          dstroke,     Dstroke ] };
     54     key <AC09> { [            l,           L,          lstroke,     Lstroke ] };
     55     key <LSGT> { [    backslash,         bar                                ] };
     56     key <AB03> { [            c,           C,        copyright              ] };
     57     key <AB08> { [        comma,        less,    guillemotleft              ] };
     58     key <AB09> { [       period,     greater,   guillemotright              ] };
     59 
     60     key <KPDL> { [    KP_Delete,  KP_Decimal,    KP_Separator, KP_Separator ] };
     61 
     62     include "level3(ralt_switch)"
     63 };
     64 
     65 
     66 partial alphanumeric_keys
     67 xkb_symbols "std" {
     68     // Primary layout in the new Romanian standard.
     69     // Implemented here as a variant because of the lack of hardware 
     70     // Romanian keyboards and because of the predilection of Romanian
     71     // X users towards the secondary layout from the new standard.
     72 
     73     include "us"
     74 
     75     name[Group1]="Romanian (standard)";
     76 
     77     key <TLDE> { [ doublelowquotemark, rightdoublequotemark, grave, asciitilde ] };
     78     key <AE01> { [            1,      exclam,       dead_tilde              ] };
     79     key <AE02> { [            2,          at,       dead_caron              ] };
     80     key <AE03> { [            3,  numbersign,  dead_circumflex              ] };
     81     key <AE04> { [            4,      dollar,       dead_breve              ] };
     82     key <AE05> { [            5,     percent,   dead_abovering              ] };
     83     key <AE06> { [            6, asciicircum,      dead_ogonek              ] };
     84     key <AE07> { [            7,   ampersand,       dead_grave              ] };
     85     key <AE08> { [            8,    asterisk,    dead_abovedot              ] };
     86     key <AE09> { [            9,   parenleft,       dead_acute              ] };
     87     key <AE10> { [            0,  parenright, dead_doubleacute              ] };
     88     key <AE11> { [        minus,  underscore,   dead_diaeresis,      endash ] };
     89     key <AE12> { [        equal,        plus,     dead_cedilla,   plusminus ] };
     90     key <AD03> { [            e,           E,         EuroSign              ] };
     91     key <AD10> { [            p,           P,          section              ] };
     92     key <AD11> { [       abreve,      Abreve,      bracketleft,   braceleft ] };
     93     key <AD12> { [  icircumflex, Icircumflex,     bracketright,  braceright ] };
     94     key <BKSL> { [  acircumflex, Acircumflex,        backslash,         bar ] };
     95     key <AC02> { [            s,           S,           ssharp,       U1e9e ] };
     96     key <AC03> { [            d,           D,          dstroke,     Dstroke ] };
     97     key <AC09> { [            l,           L,          lstroke,     Lstroke ] };
     98     key <AC10> { [        U0219,       U0218,        semicolon,       colon ] };
     99     key <AC11> { [        U021b,       U021a,       apostrophe,    quotedbl ] };
    100     key <LSGT> { [    backslash,         bar                                ] };
    101     key <AB03> { [            c,           C,        copyright              ] };
    102     key <AB08> { [        comma,   semicolon,           less, guillemotleft ] };
    103     key <AB09> { [       period,       colon,       greater, guillemotright ] };
    104 
    105     key <KPDL> { [    KP_Delete, KP_Separator,      KP_Decimal,  KP_Decimal ] };
    106 
    107     include "level3(ralt_switch)"
    108 };
    109 
    110 
    111 partial alphanumeric_keys
    112 xkb_symbols "winkeys" {
    113     // Romanian (Legacy) QWERTZ keyboard layout, as available on Windows 10,
    114     // but with the correct commabelow accents and the Euro sign on AltGr+e.
    115     // Some Romanian hardware keyboards are still built like this.
    116     // Older Romanian hardware keyboards might be slightly different.
    117     // Created by Manfred Pohler, <Manfred.Pohler (a] t-online.de> (C) 2003
    118     // Updated by Dumitru Moldovan, <dumol (a] gnome.org> (C) 2020
    119 
    120     include "us"
    121 
    122     name[Group1]="Romanian (Windows)";
    123 
    124     key <TLDE> { [ bracketright, bracketleft                                ] };
    125     key <AE01> { [            1,      exclam,       asciitilde              ] };
    126     key <AE02> { [            2,    quotedbl,       dead_caron              ] };
    127     key <AE03> { [            3,  numbersign,  dead_circumflex              ] };
    128     key <AE04> { [            4,    currency,       dead_breve              ] };
    129     key <AE05> { [            5,     percent,   dead_abovering              ] };
    130     key <AE06> { [            6,   ampersand,      dead_ogonek              ] };
    131     key <AE07> { [            7,       slash,       dead_grave              ] };
    132     key <AE08> { [            8,   parenleft,    dead_abovedot              ] };
    133     key <AE09> { [            9,  parenright,       dead_acute              ] };
    134     key <AE10> { [            0,       equal, dead_doubleacute              ] };
    135     key <AE11> { [         plus,    question,   dead_diaeresis              ] };
    136     key <AE12> { [   apostrophe,    asterisk,     dead_cedilla              ] };
    137     key <AD01> { [            q,           Q,        backslash              ] };
    138     key <AD02> { [            w,           W,              bar              ] };
    139     key <AD03> { [            e,           E,         EuroSign              ] };
    140     key <AD06> { [            z,           Z                                ] };
    141     key <AD11> { [       abreve,      Abreve,         division              ] };
    142     key <AD12> { [  icircumflex, Icircumflex,         multiply              ] };
    143     key <AC02> { [            s,           S,          dstroke              ] };
    144     key <AC03> { [            d,           D,          Dstroke              ] };
    145     key <AC08> { [            k,           K,          lstroke              ] };
    146     key <AC09> { [            l,           L,          Lstroke              ] };
    147     key <AC10> { [        U0219,       U0218,           dollar              ] };
    148     key <AC11> { [        U021b,       U021a,           ssharp              ] };
    149     key <BKSL> { [  acircumflex, Acircumflex                                ] };
    150     key <LSGT> { [         less,     greater                                ] };
    151     key <AB01> { [            y,           Y                                ] };
    152     key <AB04> { [            v,           V,               at              ] };
    153     key <AB05> { [            b,           B,        braceleft              ] };
    154     key <AB06> { [            n,           N,       braceright              ] };
    155     key <AB07> { [            m,           M,          section              ] };
    156     key <AB08> { [        comma,   semicolon,             less              ] };
    157     key <AB09> { [       period,       colon,          greater              ] };
    158     key <AB10> { [        minus,  underscore                                ] };
    159 
    160     key <KPDL> { [    KP_Delete, KP_Separator,      KP_Decimal,  KP_Decimal ] };
    161 
    162     include "level3(ralt_switch)"
    163 };
    164 
    165 
    166 // EXTRAS:
    167 
    168 
    169 partial
    170 xkb_symbols "crh_dobruja" {
    171     // Romania-specific Crimean Tatar (Crimean Turkish) Q layout.
    172     // This layout is not yet standard. Common Alt-Q and F layouts are now also 
    173     // available right next to this layout in the new language-centric UI.
    174     // Reat SABIQ <tilde.birlik @ gmail . com>, 2009, 2011
    175     // zgr Qarahan <qarahan @ gmail . com>, 2009
    176 
    177     include "ua(crh)"
    178 
    179     name[Group1]="Crimean Tatar (Dobruja Q)";
    180 
    181     key <AD02> { [            w,           W,           abreve,       Abreve ] };
    182     key <AD05> { [            t,           T,            U021b,        U021a ] };
    183     key <AD10> { [            p,           P,          section               ] };
    184     key <AC02> { [            s,           S,            U0219,        U0218 ] };
    185     key <AC07> { [       ibreve,      Ibreve,                j,            J ] };
    186     key <AB07> { [            m,           M,        trademark,    masculine ] };
    187 };
    188 
    189 
    190 partial alphanumeric_keys
    191 xkb_symbols "ergonomic" {
    192     // This layout is optimized for fast touch-typing in Romanian on a
    193     // US keyboard, and works by swapping out symbols infrequently used
    194     // in written Romanian (q,w,y,k) in favor of native ones, thus reducing
    195     // the need to use modifier keys.
    196     // Created by Gabriel Somlo, <somlo (a] cmu.edu> (C) 2011
    197 
    198     include "ro(basic)"
    199 
    200     name[Group1]="Romanian (ergonomic Touchtype)";
    201 
    202     key <AD01> { [       abreve,      Abreve,                q,           Q ] };
    203     key <AD02> { [        U0219,       U0218,                w,           W ] };
    204     key <AD06> { [        U021b,       U021a,                y,           Y ] };
    205     key <AC01> { [            a,           A,      acircumflex, Acircumflex ] };
    206     key <AC08> { [  icircumflex, Icircumflex,                k,           K ] };
    207 };
    208 
    209 
    210 partial alphanumeric_keys
    211 xkb_symbols "sun_type6" {
    212     include "sun_vndr/ro(sun_type6)"
    213 };
    214