Add keymap that will extend USA map with Indian Rupee
[xorg/xkeyboard-config] / symbols / ro
1 // $XKeyboardConfig$
2 // $XFree86: xc/programs/xkbcomp/symbols/ro,v 1.6 2003/09/08 13:12:51 pascal Exp $
3 //
4 // Complete set of Romanian keyboards as described in the new Romanian standard
5 // SR 13392:2004 adopted in December 2004 by ASRO, "Asociatia de Standardizare 
6 // din Romania".
7 // 
8 // The default mapping is the RO_US/Programmers layout because of the lack of 
9 // Romanian hardware keyboards. The primary standard layout is implemented as 
10 // the "std" variant. If you're determined to get cedillas as in ISO-8859-2  
11 // (and not commabelow accents as in ISO-8859-16) use the defined variants 
12 // "cedilla" for the default layout or "std_cedilla" for the standard one. 
13 // Pre-Vista MS compatible layout included (use the "winkeys" variant).
14 // 
15 // Created by Cristian Gafton, <gafton@redhat.com> (C) 2000
16 // Modified by Marius Andreiana, <mandreiana@yahoo.com> (C) 2001
17 // Completed by Misu Moldovan, <dumol@gnome.ro> (C) 2001, 2004-2008.
18 // v 1.4
19
20
21 partial default alphanumeric_keys
22 xkb_symbols "basic" {
23 // This RO_US/Programmers layout, although the secondary layout in the 
24 // Romanian standard, has always been the "de facto" standard in the 
25 // Linux/Unix world. It is implemented here as the default layout and it's
26 // fully compatible with an US keyboard (Euro on AltGr+5 doesn't count).
27
28     include "us"
29
30     name[Group1]="Romania";
31
32     key <AE01> { [ 1,                 exclam,  dead_tilde                 ] };
33     key <AE02> { [ 2,                     at,  dead_caron                 ] };
34     key <AE03> { [ 3,             numbersign,  dead_circumflex            ] };
35     key <AE04> { [ 4,                 dollar,  dead_breve                 ] };
36     key <AE05> { [ 5,                percent,  dead_abovering             ] };
37     key <AE06> { [ 6,            asciicircum,  dead_ogonek                ] };
38     key <AE07> { [ 7,              ampersand,  dead_grave                 ] };
39     key <AE08> { [ 8,               asterisk,  dead_abovedot              ] };
40     key <AE09> { [ 9,              parenleft,  dead_acute                 ] };
41     key <AE10> { [ 0,             parenright,  dead_doubleacute           ] };
42     key <AE11> { [ minus,         underscore,  dead_diaeresis,     endash ] };
43     key <AE12> { [ equal,               plus,  dead_cedilla,    plusminus ] };
44     key <AD01> { [ q,                      Q,  acircumflex,   Acircumflex ] };
45     key <AD02> { [ w,                      W,  ssharp                     ] };
46     key <AD03> { [ e,                      E,  EuroSign                   ] };
47     key <AD05> { [ t,                      T,  0x100021b,       0x100021a ] };
48     key <AD08> { [ i,                      I,  icircumflex,   Icircumflex ] };
49     key <AD10> { [ p,                      P,  section                    ] };
50     key <AD11> { [ bracketleft,    braceleft,  doublelowquotemark         ] };
51     key <AD12> { [ bracketright,  braceright,  rightdoublequotemark       ] };
52     key <AC01> { [ a,                      A,  abreve,             Abreve ] };
53     key <AC02> { [ s,                      S,  0x1000219,       0x1000218 ] };
54     key <AC03> { [ d,                      D,  dstroke,           Dstroke ] };
55     key <AC09> { [ l,                      L,  lstroke,           Lstroke ] };
56     key <LSGT> { [ backslash,            bar                              ] };
57     key <AB03> { [ c,                      C,  copyright                  ] };
58     key <AB08> { [ comma,               less,  guillemotleft              ] };
59     key <AB09> { [ period,           greater,  guillemotright             ] };
60
61     include "level3(ralt_switch)"
62 };
63
64 partial alphanumeric_keys
65 xkb_symbols "cedilla" {
66     // Variant of the basic layout with cedillas.
67     // Implements S and T with cedilllas as in ISO-8859-2.
68     // Included for compatibility reasons (this used to be the def variant).
69
70     include "ro(basic)"
71
72     name[Group1]="Romania - Cedilla";
73
74     key <AD05> { [ t,                      T,  tcedilla,         Tcedilla ] };
75     key <AC02> { [ s,                      S,  scedilla,         Scedilla ] };
76 };
77
78 partial alphanumeric_keys
79 xkb_symbols "std" {
80     // Primary layout in the new Romanian standard.
81     // Implemented here as a variant because of the lack of hardware 
82     // Romanian keyboards and because of the predilection of Romanian
83     // X users towards the secondary layout from the new standard.
84
85     include "us"
86
87     name[Group1]="Romania - Standard";
88
89     key <TLDE> { [ doublelowquotemark, rightdoublequotemark, grave, asciitilde ] };
90     key <AE01> { [ 1,                 exclam,  dead_tilde                 ] };
91     key <AE02> { [ 2,                     at,  dead_caron                 ] };
92     key <AE03> { [ 3,             numbersign,  dead_circumflex            ] };
93     key <AE04> { [ 4,                 dollar,  dead_breve                 ] };
94     key <AE05> { [ 5,                percent,  dead_abovering             ] };
95     key <AE06> { [ 6,            asciicircum,  dead_ogonek                ] };
96     key <AE07> { [ 7,              ampersand,  dead_grave                 ] };
97     key <AE08> { [ 8,               asterisk,  dead_abovedot              ] };
98     key <AE09> { [ 9,              parenleft,  dead_acute                 ] };
99     key <AE10> { [ 0,             parenright,  dead_doubleacute           ] };
100     key <AE11> { [ minus,         underscore,  dead_diaeresis,     endash ] };
101     key <AE12> { [ equal,               plus,  dead_cedilla,    plusminus ] };
102     key <AD03> { [ e,                      E,  EuroSign                   ] };
103     key <AD10> { [ p,                      P,  section                    ] };
104     key <AD11> { [ abreve,            Abreve,  bracketleft,     braceleft ] };
105     key <AD12> { [ icircumflex,  Icircumflex,  bracketright,   braceright ] };
106     key <BKSL> { [ acircumflex,  Acircumflex,  backslash,             bar ] };
107     key <AC02> { [ s,                      S,  ssharp                     ] };
108     key <AC03> { [ d,                      D,  dstroke,           Dstroke ] };
109     key <AC09> { [ l,                      L,  lstroke,           Lstroke ] };
110     key <AC10> { [ 0x1000219,      0x1000218,  semicolon,           colon ] };
111     key <AC11> { [ 0x100021b,      0x100021a,  apostrophe,       quotedbl ] };
112     key <LSGT> { [ backslash,            bar                              ] };
113     key <AB03> { [ c,                      C,  copyright                  ] };
114     key <AB08> { [ comma,          semicolon,  less,        guillemotleft ] };
115     key <AB09> { [ period,             colon,  greater,    guillemotright ] };
116
117     key <KPDL> { [ KP_Delete,   KP_Separator ] };
118
119     include "level3(ralt_switch)"
120 };
121
122
123 partial alphanumeric_keys
124 xkb_symbols "std_cedilla" {
125     // Variant of the "std" layout with cedillas.
126     // Implements S and T with cedillas as in ISO-8859-2.
127     // Included for compatibility reasons.
128
129     include "ro(std)"
130
131     name[Group1]="Romania - Standard (Cedilla)";
132
133     key <AC10> { [ scedilla,        Scedilla ] };
134     key <AC11> { [ tcedilla,        Tcedilla ] };
135 };
136
137
138 partial alphanumeric_keys
139 xkb_symbols "winkeys" {
140     // Describes the differences between a very simple US/ASCII
141     // keyboard and a very simple Romanian keybaord
142     // Created by Manfred Pohler, <Manfred.Pohler@t-online.de> (C) 2003
143
144     include "latin"
145
146     name[Group1]="Romania - Winkeys";
147
148     // Alphanumeric section
149     key <TLDE> { [ bracketright, bracketleft            ]       };
150
151     key <AE01> { [            1,      exclam,  asciitilde, asciitilde   ] };
152     key <AE02> { [            2,    quotedbl,          at,         at   ] };
153     key <AE03> { [            3,  numbersign, asciicircum,asciicircum   ] };
154     key <AE04> { [            4,    currency            ]       };
155     key <AE05> { [            5,     percent,      degree,     degree   ] };
156     key <AE06> { [            6,   ampersand            ]       };
157     key <AE07> { [            7,       slash,       grave,      grave   ] };
158     key <AE08> { [            8,   parenleft            ]       };
159     key <AE09> { [            9,  parenright            ]       };
160     key <AE10> { [            0,       equal            ]       };
161     key <AE11> { [         plus,    question            ]       };
162     key <AE12> { [   apostrophe,    asterisk            ]       };
163
164     key <AD01> { [           q,           Q,    backslash,  backslash   ] };
165     key <AD02> { [           w,           W,          bar,        bar   ] };
166     key <AD03> { [           e,           E,     EuroSign,   EuroSign   ] };
167     key <AD05> { [           t,           T             ]       };
168     key <AD06> { [           z,           Z             ]       };
169     key <AD07> { [           u,           U             ]       };
170     key <AD08> { [           i,           I             ]       };
171     key <AD11> { [      abreve,      Abreve,     division,   division   ] };
172     key <AD12> { [ icircumflex, Icircumflex,     multiply,   multiply   ] };
173
174     key <AC04> { [           f,           F             ]       };
175     key <AC05> { [           g,           G             ]       };
176     key <AC10> { [    scedilla,    Scedilla,       dollar,     dollar   ] };
177     key <AC11> { [    tcedilla,    Tcedilla,       ssharp,     ssharp   ] };
178
179     key <AB01> { [           y,           Y             ]       };
180     key <AB05> { [           b,           B,    braceleft,  braceleft   ] };
181     key <AB06> { [           n,           N,   braceright, braceright   ] };
182     key <AB07> { [           m,           M,      section,    section   ] };
183     key <AB08> { [       comma,   semicolon,         less,       less   ] };
184     key <AB09> { [      period,       colon,      greater,    greater   ] };
185     key <AB10> { [       minus,  underscore             ]       };
186
187     key <BKSL> { [ acircumflex, Acircumflex             ]       };
188
189     // End alphanumeric section, begin "Keypad"
190     include "kpdl(comma)"
191     // End "Keypad" section
192
193     include "level3(ralt_switch)"
194
195 };
196
197 // Crimean Tatar (Crimean Turkish) layouts.
198 partial
199 xkb_symbols "crh_f" {
200     include "tr(crh_f)"
201
202     name[Group1]="Romania - Crimean Tatar (Turkish F)";
203 };
204
205 partial
206 xkb_symbols "crh_alt" {
207     include "tr(crh_alt)"
208
209     name[Group1]="Romania - Crimean Tatar (Turkish Alt-Q)";
210 };
211
212 partial
213 xkb_symbols "crh_dobruca1" {
214     include "tr(crh)"
215
216     name[Group1]="Romania - Crimean Tatar (Dobruca-1 Q)";
217
218     key <AD05>  { [         t,          T,       tcedilla,       Tcedilla ]     };
219     key <AD10>  { [         p,          P,         abreve,         Abreve ]     };
220
221     key <AC04>  { [         f,          F,         ibreve,         Ibreve ]     };
222     key <AC07>  { [    iacute,     Iacute,              j,              J ]     };
223
224     key <AB07>  { [         m,          M,      trademark,      masculine ]     };
225 };
226
227 partial
228 xkb_symbols "crh_dobruca2" {
229     include "ro(crh_dobruca1)"
230
231     name[Group1]="Romania - Crimean Tatar (Dobruca-2 Q)";
232
233     key <AC04>  { [         f,          F,          iacute,          Iacute ]   };
234     key <AC07>  { [    ibreve,     Ibreve,               j,               J ]   };
235 };