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