added ke(kik)
[xorg/xkeyboard-config] / symbols / ir
1 // $XKeyboardConfig$
2
3 // Iranian keyboard layout
4
5 ////////////////////////////////////////
6 // Persian layout,
7 // based on
8 // Information Technology – Layout of Persian Letters and Symbols on Computer Keyboards
9 // ISIRI 9147 – 1st Edition
10 // Institute of Standards and Industrial Research of Iran
11 // http://www.isiri.org/UserStd/DownloadStd.aspx?id=9147
12 // http://behnam.esfahbod.info/standards/isiri-keyboard-9147.pdf
13 //
14 // Author: Behnam Esfahbod <behnam@esfahbod.info>
15 //
16
17 partial default alphanumeric_keys
18 xkb_symbols "pes" {
19     name[Group1]= "Iran";
20
21     include "ir(pes_part_basic)";
22     include "ir(pes_part_ext)";
23
24     include "nbsp(zwnj2nb3nnb4)";
25     include "level3(ralt_switch)";
26 };
27
28
29 partial alphanumeric_keys
30 xkb_symbols "pes_keypad" {
31     name[Group1]= "Iran - Persian, with Persian Keypad";
32
33     include "ir(pes_part_basic)";
34     include "ir(pes_part_keypad)";
35
36     include "nbsp(zwnj2nb3nnb4)";
37     include "level3(ralt_switch)";
38 };
39
40 partial hidden alphanumeric_keys
41 xkb_symbols "pes_part_basic" {
42
43     // Persian digits
44     key <AE01> { [ 0x10006f1,   exclam,         quoteleft               ] };
45     key <AE02> { [ 0x10006f2,   0x100066c,      at                      ] };
46     key <AE03> { [ 0x10006f3,   0x100066b,      numbersign              ] };
47     key <AE04> { [ 0x10006f4,   0x100fdfc,      dollar                  ] };
48     key <AE05> { [ 0x10006f5,   0x100066a,      percent                 ] };
49     key <AE06> { [ 0x10006f6,   multiply,       asciicircum             ] };
50     key <AE07> { [ 0x10006f7,   Arabic_comma,   ampersand               ] };
51     key <AE08> { [ 0x10006f8,   asterisk,       enfilledcircbullet      ] };
52     key <AE09> { [ 0x10006f9,   parenright,     0x100200e               ] };
53     key <AE10> { [ 0x10006f0,   parenleft,      0x100200f               ] };
54
55     // Persian letters and symbols
56     key <AD01> { [ Arabic_dad,          Arabic_sukun,           degree          ] };
57     key <AD02> { [ Arabic_sad,          Arabic_dammatan,        VoidSymbol      ] };
58     key <AD03> { [ Arabic_theh,         Arabic_kasratan,        0x13a4          ] };
59     key <AD04> { [ Arabic_qaf,          Arabic_fathatan,        VoidSymbol      ] };
60     key <AD05> { [ Arabic_feh,          Arabic_damma,           VoidSymbol      ] };
61     key <AD06> { [ Arabic_ghain,        Arabic_kasra,           VoidSymbol      ] };
62     key <AD07> { [ Arabic_ain,          Arabic_fatha,           VoidSymbol      ] };
63     key <AD08> { [ Arabic_heh,          Arabic_shadda,          0x100202d       ] };
64     key <AD09> { [ Arabic_khah,         bracketright,           0x100202e       ] };
65     key <AD10> { [ Arabic_hah,          bracketleft,            0x100202c       ] };
66     key <AD11> { [ Arabic_jeem,         braceright,             0x100202a       ] };
67     key <AD12> { [ 0x1000686,           braceleft,              0x100202b       ] };
68
69     key <AC01> { [ Arabic_sheen,        Arabic_hamzaonwaw,      VoidSymbol      ] };
70     key <AC02> { [ Arabic_seen,         Arabic_hamzaonyeh,      VoidSymbol      ] };
71     key <AC03> { [ 0x10006cc,           Arabic_yeh,             Arabic_alefmaksura ] };
72     key <AC04> { [ Arabic_beh,          Arabic_hamzaunderalef,  VoidSymbol      ] };
73     key <AC05> { [ Arabic_lam,          Arabic_hamzaonalef,     VoidSymbol      ] };
74     key <AC06> { [ Arabic_alef,         Arabic_maddaonalef,     0x1000671       ] };
75     key <AC07> { [ Arabic_teh,          Arabic_tehmarbuta,      VoidSymbol      ] };
76     key <AC08> { [ Arabic_noon,         guillemotright,         0x100fd3e       ] };
77     key <AC09> { [ Arabic_meem,         guillemotleft,          0x100fd3f       ] };
78     key <AC10> { [ 0x10006a9,           colon,                  semicolon       ] };
79     key <AC11> { [ 0x10006af,           Arabic_semicolon,       quotedbl        ] };
80
81     key <AB01> { [ Arabic_zah,          Arabic_kaf,             VoidSymbol      ] };
82     key <AB02> { [ Arabic_tah,          0x1000653,              VoidSymbol      ] };
83     key <AB03> { [ Arabic_zain,         0x1000698,              VoidSymbol      ] };
84     key <AB04> { [ Arabic_ra,           0x1000670,              0x1000656       ] };
85     key <AB05> { [ Arabic_thal,         0x100200c,              0x100200d       ] };
86     key <AB06> { [ Arabic_dal,          0x1000654,              0x1000655       ] };
87     key <AB07> { [ 0x100067e,           Arabic_hamza,           ellipsis        ] };
88     key <AB08> { [ Arabic_waw,          greater,                comma           ] };
89     key <AB09> { [ period,              less,                   apostrophe      ] };
90     key <AB10> { [ slash,               Arabic_question_mark,   question        ] };
91
92     key <TLDE> { [ 0x100200d,           division,               asciitilde      ] };
93     key <AE11> { [ minus,               Arabic_tatweel,         underscore      ] };
94     key <AE12> { [ equal,               plus,                   0x1002212       ] };
95     key <BKSL> { [ backslash,           bar,                    0x1002010       ] };
96 };
97
98 partial hidden alphanumeric_keys
99 xkb_symbols "pes_part_ext" {
100
101     // Persian and ASCII digits
102     key <AE01> { [ 0x10006f1,   exclam,         quoteleft,              1       ] };
103     key <AE02> { [ 0x10006f2,   0x100066c,      at,                     2       ] };
104     key <AE03> { [ 0x10006f3,   0x100066b,      numbersign,             3       ] };
105     key <AE04> { [ 0x10006f4,   0x100fdfc,      dollar,                 4       ] };
106     key <AE05> { [ 0x10006f5,   0x100066a,      percent,                5       ] };
107     key <AE06> { [ 0x10006f6,   multiply,       asciicircum,            6       ] };
108     key <AE07> { [ 0x10006f7,   Arabic_comma,   ampersand,              7       ] };
109     key <AE08> { [ 0x10006f8,   asterisk,       enfilledcircbullet,     8       ] };
110     key <AE09> { [ 0x10006f9,   parenright,     0x100200e,              9       ] };
111     key <AE10> { [ 0x10006f0,   parenleft,      0x100200f,              0       ] };
112 };
113
114 partial hidden alphanumeric_keys
115 xkb_symbols "pes_part_keypad" {
116
117     // Persian digits and Mathematical operators
118     key <KPDV> { [ division,    XF86_Ungrab     ] };
119     key <KPMU> { [ multiply,    XF86_ClearGrab  ] };
120     key <KPSU> { [ 0x1002212,   XF86_Prev_VMode ] };
121     key <KPAD> { [ plus,        XF86_Next_VMode ] };
122
123     key <KPEN> { [ KP_Enter     ] };
124     key <KPEQ> { [ equal        ] };
125
126     key <KP7>  { [ KP_Home,     0x10006f7       ] };
127     key <KP8>  { [ KP_Up,       0x10006f8       ] };
128     key <KP9>  { [ KP_Prior,    0x10006f9       ] };
129
130     key <KP4>  { [ KP_Left,     0x10006f4       ] };
131     key <KP5>  { [ KP_Begin,    0x10006f5       ] };
132     key <KP6>  { [ KP_Right,    0x10006f6       ] };
133
134     key <KP1>  { [ KP_End,      0x10006f1       ] };
135     key <KP2>  { [ KP_Down,     0x10006f2       ] };
136     key <KP3>  { [ KP_Next,     0x10006f3       ] };
137
138     key <KP0>  { [ KP_Insert,   0x10006f0       ] };
139     key <KPDL> { [ KP_Delete,   0x100066b       ] };
140 };
141
142
143 ////////////////////////////////////////
144 // Kurdish Layout
145
146 partial alphanumeric_keys
147 xkb_symbols "ku" {
148     include "tr(ku)"
149     name[Group1]= "Iran - Kurdish, Latin Q";
150 };
151
152 partial alphanumeric_keys
153 xkb_symbols "ku_f" {
154     include "tr(ku_f)"
155     name[Group1]= "Iran - Kurdish, (F)";
156 };
157
158 partial alphanumeric_keys
159 xkb_symbols "ku_alt" {
160     include "tr(ku_alt)"
161     name[Group1]= "Iran - Kurdish, Latin Alt-Q";
162 };
163
164 ////////////////////////////////////////
165 // Kurdish Soranî Bahdînî (Arabic) keyboard layout,
166 // based on the Kurdî Soranî Bahdînî keyboard from KurdITGroup
167 // which is based on National Iranian Keyboard Standard (ISIRI 2901:1994),
168 // with additions.
169 //
170 // Copyright (C) 2006 Erdal Ronahî, published under the GPL v2
171 //
172 // Special copyright note: author explicitly permitted to license this 
173 // layout under MIT/X11 license, for details see
174 // https://bugs.freedesktop.org/show_bug.cgi?id=9541
175 //
176 // Author: Erdal Ronahî  <erdal.ronahi@gmail.com>
177 //
178 // Kurdish Arabic-Latin Layout for Soranî
179
180 partial alphanumeric_keys
181 xkb_symbols "ku_ara" {
182     name[Group1]= "Iran - Kurdish, Arabic-Latin";
183
184     // Other 3-Level symbols
185     key <TLDE> { [ 0x100200d,           division,               asciitilde      ] };
186     key <BKSL> { [ backslash,           bar,                    ccedilla, Ccedilla      ] };
187
188     // Digits
189     key <AE01> { [ 1,   exclam,         0x10006f1,      quoteleft       ] };
190     key <AE02> { [ 2,   at,             0x10006f2,      at              ] };
191     key <AE03> { [ 3,   numbersign,     0x10006f3,      0x100066b       ] };
192     key <AE04> { [ 4,   dollar,         0x10006f4,      0x100fdfc       ] };
193     key <AE05> { [ 5,   percent,        0x10006f5,      0x100066a       ] };
194     key <AE06> { [ 6,   asciicircum,    0x10006f6,      multiply        ] };
195     key <AE07> { [ 7,   ampersand,      0x10006f7,      Arabic_comma    ] };
196     key <AE08> { [ 8,   asterisk,       0x10006f8,      enfilledcircbullet      ] };
197     key <AE09> { [ 9,   parenright,     0x10006f9,      0x100200e       ] };
198     key <AE10> { [ 0,   parenleft,      0x10006f0,      0x100200f       ] };
199     key <AE11> { [ minus,               Arabic_tatweel,         underscore      ] };
200     key <AE12> { [ equal,               plus,                   0x1002212       ] };
201
202     key <AD01> { [         Arabic_qaf,            X,  q,  Q ] };
203     key <AD02> { [         Arabic_waw,            X,  w,  W ] };
204     key <AD03> { [          0x10006d5,   Arabic_heh,  e,  E ] };
205     key <AD04> { [         Arabic_ra ,    0x1000695,  r,  R ] };
206     key <AD05> { [         Arabic_teh,   Arabic_tah,  t,  T ] };
207     key <AD06> { [          0x10006cc,    0x10006ce,  y,  Y ] };
208     key <AD07> { [  Arabic_hamzaonyeh, Arabic_hamza,  u,  U ] };
209     key <AD08> { [         Arabic_hah,   Arabic_ain,  i,  I ] };
210     key <AD09> { [          0x10006c6, Arabic_hamzaonwaw,  o,  O ] };
211     key <AD10> { [          0x100067e,  Arabic_theh,  p,  P ] };
212     key <AD11> { [ bracketright,        braceright,     ucircumflex, Ucircumflex        ] };
213     key <AD12> { [ bracketleft,         braceleft,      scedilla, Scedilla      ] };
214
215     key <AC01> { [ Arabic_alef, Arabic_maddaonalef,     a, A    ] };
216     key <AC02> { [ Arabic_seen,         Arabic_sheen,   s, S    ] };
217     key <AC03> { [  Arabic_dal,         Arabic_thal,    d, D    ] };
218     key <AC04> { [  Arabic_feh, Arabic_hamzaunderalef,  f, F    ] };
219     key <AC05> { [   0x10006af,         Arabic_ghain,   g, G    ] };
220     key <AC06> { [  Arabic_heh,         0x100200c,      h, H    ] };
221     key <AC07> { [   0x1000698, Arabic_hamzaonalef,     j, J    ] };
222     key <AC08> { [   0x10006a9,         Arabic_kaf,     k, K    ] };
223     key <AC09> { [  Arabic_lam,         0x10006b5,      l, L    ] };
224     key <AC10> { [  Arabic_semicolon,   colon,          ecircumflex, Ecircumflex        ] };
225     key <AC11> { [  apostrophe,         quotedbl,       icircumflex, Icircumflex        ] };
226
227     key <AB01> { [ Arabic_zain,         Arabic_dad,     z, Z    ] };
228     key <AB02> { [ Arabic_khah,         Arabic_sad,     x, X    ] };
229     key <AB03> { [ Arabic_jeem,         0x1000686,      c, C    ] };
230     key <AB04> { [   0x10006a4,         Arabic_zah,     v, V    ] };
231     key <AB05> { [ Arabic_beh,          0x1000649,      b, B    ] };
232     key <AB06> { [ Arabic_noon, Arabic_tehmarbuta,      n, N    ] };
233     key <AB07> { [ Arabic_meem, Arabic_tatweel,         m, M    ] };
234     key <AB08> { [ Arabic_comma,        greater,        comma           ] };
235     key <AB09> { [ period,              less,           apostrophe      ] };
236     key <AB10> { [ slash,               Arabic_question_mark,   question        ] };
237
238     include "nbsp(zwnj2nb3)"
239     include "level3(ralt_switch)"
240 };
241