ir revision 1.9 1 1.2 wiz // Iranian keyboard layout
2 1.2 wiz
3 1.2 wiz ////////////////////////////////////////
4 1.2 wiz // Persian layout,
5 1.2 wiz // based on
6 1.2 wiz // Information Technology Layout of Persian Letters and Symbols on Computer Keyboards
7 1.2 wiz // ISIRI 9147 1st Edition
8 1.2 wiz // Institute of Standards and Industrial Research of Iran
9 1.2 wiz // http://www.isiri.org/UserStd/DownloadStd.aspx?id=9147
10 1.2 wiz // http://behnam.esfahbod.info/standards/isiri-keyboard-9147.pdf
11 1.1 mrg //
12 1.1 mrg // Author: Behnam Esfahbod <behnam (a] esfahbod.info>
13 1.1 mrg //
14 1.1 mrg
15 1.7 mrg default partial alphanumeric_keys
16 1.2 wiz xkb_symbols "pes" {
17 1.6 mrg name[Group1]= "Persian";
18 1.1 mrg
19 1.4 mrg include "ir(pes_part_basic)"
20 1.4 mrg include "ir(pes_part_ext)"
21 1.1 mrg
22 1.4 mrg include "nbsp(zwnj2nb3nnb4)"
23 1.4 mrg include "level3(ralt_switch)"
24 1.2 wiz };
25 1.2 wiz
26 1.2 wiz
27 1.2 wiz partial alphanumeric_keys
28 1.2 wiz xkb_symbols "pes_keypad" {
29 1.8 mrg name[Group1]= "Persian (with Persian keypad)";
30 1.2 wiz
31 1.4 mrg include "ir(pes_part_basic)"
32 1.9 mrg include "ir(pes_part_ext)"
33 1.4 mrg include "ir(pes_part_keypad)"
34 1.2 wiz
35 1.4 mrg include "nbsp(zwnj2nb3nnb4)"
36 1.4 mrg include "level3(ralt_switch)"
37 1.2 wiz };
38 1.2 wiz
39 1.9 mrg hidden partial alphanumeric_keys
40 1.2 wiz xkb_symbols "pes_part_basic" {
41 1.1 mrg
42 1.1 mrg // Persian digits
43 1.7 mrg key <AE01> { [ Farsi_1, exclam, grave ] };
44 1.5 mrg key <AE02> { [ Farsi_2, 0x100066c, at ] };
45 1.5 mrg key <AE03> { [ Farsi_3, 0x100066b, numbersign ] };
46 1.5 mrg key <AE04> { [ Farsi_4, 0x100fdfc, dollar ] };
47 1.5 mrg key <AE05> { [ Farsi_5, 0x100066a, percent ] };
48 1.5 mrg key <AE06> { [ Farsi_6, multiply, asciicircum ] };
49 1.5 mrg key <AE07> { [ Farsi_7, Arabic_comma, ampersand ] };
50 1.5 mrg key <AE08> { [ Farsi_8, asterisk, enfilledcircbullet ] };
51 1.5 mrg key <AE09> { [ Farsi_9, parenright, 0x100200e ] };
52 1.5 mrg key <AE10> { [ Farsi_0, parenleft, 0x100200f ] };
53 1.1 mrg
54 1.2 wiz // Persian letters and symbols
55 1.1 mrg key <AD01> { [ Arabic_dad, Arabic_sukun, degree ] };
56 1.1 mrg key <AD02> { [ Arabic_sad, Arabic_dammatan, VoidSymbol ] };
57 1.1 mrg key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x13a4 ] };
58 1.1 mrg key <AD04> { [ Arabic_qaf, Arabic_fathatan, VoidSymbol ] };
59 1.1 mrg key <AD05> { [ Arabic_feh, Arabic_damma, VoidSymbol ] };
60 1.1 mrg key <AD06> { [ Arabic_ghain, Arabic_kasra, VoidSymbol ] };
61 1.1 mrg key <AD07> { [ Arabic_ain, Arabic_fatha, VoidSymbol ] };
62 1.1 mrg key <AD08> { [ Arabic_heh, Arabic_shadda, 0x100202d ] };
63 1.1 mrg key <AD09> { [ Arabic_khah, bracketright, 0x100202e ] };
64 1.1 mrg key <AD10> { [ Arabic_hah, bracketleft, 0x100202c ] };
65 1.1 mrg key <AD11> { [ Arabic_jeem, braceright, 0x100202a ] };
66 1.7 mrg key <AD12> { [ Arabic_tcheh, braceleft, 0x100202b ] };
67 1.1 mrg
68 1.1 mrg key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, VoidSymbol ] };
69 1.1 mrg key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, VoidSymbol ] };
70 1.5 mrg key <AC03> { [ Farsi_yeh, Arabic_yeh, Arabic_alefmaksura ] };
71 1.1 mrg key <AC04> { [ Arabic_beh, Arabic_hamzaunderalef, VoidSymbol ] };
72 1.1 mrg key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, VoidSymbol ] };
73 1.1 mrg key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] };
74 1.1 mrg key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, VoidSymbol ] };
75 1.1 mrg key <AC08> { [ Arabic_noon, guillemotright, 0x100fd3e ] };
76 1.1 mrg key <AC09> { [ Arabic_meem, guillemotleft, 0x100fd3f ] };
77 1.7 mrg key <AC10> { [ Arabic_keheh, colon, semicolon ] };
78 1.5 mrg key <AC11> { [ Arabic_gaf, Arabic_semicolon, quotedbl ] };
79 1.1 mrg
80 1.1 mrg key <AB01> { [ Arabic_zah, Arabic_kaf, VoidSymbol ] };
81 1.1 mrg key <AB02> { [ Arabic_tah, 0x1000653, VoidSymbol ] };
82 1.5 mrg key <AB03> { [ Arabic_zain, Arabic_jeh, VoidSymbol ] };
83 1.7 mrg key <AB04> { [ Arabic_ra, Arabic_superscript_alef,0x1000656 ] };
84 1.1 mrg key <AB05> { [ Arabic_thal, 0x100200c, 0x100200d ] };
85 1.7 mrg key <AB06> { [ Arabic_dal, Arabic_hamza_above, Arabic_hamza_below ] };
86 1.5 mrg key <AB07> { [ Arabic_peh, Arabic_hamza, ellipsis ] };
87 1.1 mrg key <AB08> { [ Arabic_waw, greater, comma ] };
88 1.1 mrg key <AB09> { [ period, less, apostrophe ] };
89 1.1 mrg key <AB10> { [ slash, Arabic_question_mark, question ] };
90 1.1 mrg
91 1.2 wiz key <TLDE> { [ 0x100200d, division, asciitilde ] };
92 1.2 wiz key <AE11> { [ minus, Arabic_tatweel, underscore ] };
93 1.2 wiz key <AE12> { [ equal, plus, 0x1002212 ] };
94 1.2 wiz key <BKSL> { [ backslash, bar, 0x1002010 ] };
95 1.1 mrg };
96 1.1 mrg
97 1.9 mrg hidden partial alphanumeric_keys
98 1.2 wiz xkb_symbols "pes_part_ext" {
99 1.1 mrg
100 1.2 wiz // Persian and ASCII digits
101 1.9 mrg key <AE01> { [ Farsi_1, exclam, grave, 1 ] };
102 1.9 mrg key <AE02> { [ Farsi_2, 0x100066c, at, 2 ] };
103 1.9 mrg key <AE03> { [ Farsi_3, 0x100066b, numbersign, 3 ] };
104 1.9 mrg key <AE04> { [ Farsi_4, 0x100fdfc, dollar, 4 ] };
105 1.9 mrg key <AE05> { [ Farsi_5, 0x100066a, percent, 5 ] };
106 1.9 mrg key <AE06> { [ Farsi_6, multiply, asciicircum, 6 ] };
107 1.9 mrg key <AE07> { [ Farsi_7, Arabic_comma, ampersand, 7 ] };
108 1.9 mrg key <AE08> { [ Farsi_8, asterisk, enfilledcircbullet, 8 ] };
109 1.9 mrg key <AE09> { [ Farsi_9, parenright, 0x100200e, 9 ] };
110 1.9 mrg key <AE10> { [ Farsi_0, parenleft, 0x100200f, 0 ] };
111 1.1 mrg };
112 1.1 mrg
113 1.9 mrg hidden partial alphanumeric_keys
114 1.2 wiz xkb_symbols "pes_part_keypad" {
115 1.1 mrg
116 1.1 mrg // Persian digits and Mathematical operators
117 1.1 mrg key <KPDV> { [ division, XF86_Ungrab ] };
118 1.1 mrg key <KPMU> { [ multiply, XF86_ClearGrab ] };
119 1.1 mrg key <KPSU> { [ 0x1002212, XF86_Prev_VMode ] };
120 1.1 mrg key <KPAD> { [ plus, XF86_Next_VMode ] };
121 1.1 mrg
122 1.1 mrg key <KPEN> { [ KP_Enter ] };
123 1.1 mrg key <KPEQ> { [ equal ] };
124 1.1 mrg
125 1.9 mrg key <KP7> { [ KP_Home, Farsi_7 ] };
126 1.9 mrg key <KP8> { [ KP_Up, Farsi_8 ] };
127 1.9 mrg key <KP9> { [ KP_Prior, Farsi_9 ] };
128 1.9 mrg
129 1.9 mrg key <KP4> { [ KP_Left, Farsi_4 ] };
130 1.9 mrg key <KP5> { [ KP_Begin, Farsi_5 ] };
131 1.9 mrg key <KP6> { [ KP_Right, Farsi_6 ] };
132 1.9 mrg
133 1.9 mrg key <KP1> { [ KP_End, Farsi_1 ] };
134 1.9 mrg key <KP2> { [ KP_Down, Farsi_2 ] };
135 1.9 mrg key <KP3> { [ KP_Next, Farsi_3 ] };
136 1.1 mrg
137 1.9 mrg key <KP0> { [ KP_Insert, Farsi_0 ] };
138 1.1 mrg key <KPDL> { [ KP_Delete, 0x100066b ] };
139 1.1 mrg };
140 1.1 mrg
141 1.1 mrg
142 1.2 wiz ////////////////////////////////////////
143 1.2 wiz // Kurdish Layout
144 1.1 mrg
145 1.1 mrg partial alphanumeric_keys
146 1.1 mrg xkb_symbols "ku" {
147 1.1 mrg include "tr(ku)"
148 1.6 mrg name[Group1]= "Kurdish (Iran, Latin Q)";
149 1.1 mrg };
150 1.1 mrg
151 1.1 mrg partial alphanumeric_keys
152 1.1 mrg xkb_symbols "ku_f" {
153 1.1 mrg include "tr(ku_f)"
154 1.6 mrg name[Group1]= "Kurdish (Iran, F)";
155 1.1 mrg };
156 1.1 mrg
157 1.1 mrg partial alphanumeric_keys
158 1.1 mrg xkb_symbols "ku_alt" {
159 1.1 mrg include "tr(ku_alt)"
160 1.6 mrg name[Group1]= "Kurdish (Iran, Latin Alt-Q)";
161 1.1 mrg };
162 1.1 mrg
163 1.2 wiz ////////////////////////////////////////
164 1.1 mrg // Kurdish Soran Bahdn (Arabic) keyboard layout,
165 1.1 mrg // based on the Kurd Soran Bahdn keyboard from KurdITGroup
166 1.1 mrg // which is based on National Iranian Keyboard Standard (ISIRI 2901:1994),
167 1.1 mrg // with additions.
168 1.1 mrg //
169 1.1 mrg // Copyright (C) 2006 Erdal Ronah, published under the GPL v2
170 1.1 mrg //
171 1.7 mrg // Special copyright note: author explicitly permitted to license this
172 1.1 mrg // layout under MIT/X11 license, for details see
173 1.1 mrg // https://bugs.freedesktop.org/show_bug.cgi?id=9541
174 1.1 mrg //
175 1.1 mrg // Author: Erdal Ronah <erdal.ronahi (a] gmail.com>
176 1.1 mrg //
177 1.1 mrg // Kurdish Arabic-Latin Layout for Soran
178 1.2 wiz
179 1.1 mrg partial alphanumeric_keys
180 1.1 mrg xkb_symbols "ku_ara" {
181 1.6 mrg name[Group1]= "Kurdish (Iran, Arabic-Latin)";
182 1.1 mrg
183 1.1 mrg // Other 3-Level symbols
184 1.1 mrg key <TLDE> { [ 0x100200d, division, asciitilde ] };
185 1.1 mrg key <BKSL> { [ backslash, bar, ccedilla, Ccedilla ] };
186 1.1 mrg
187 1.1 mrg // Digits
188 1.9 mrg key <AE01> { [ 1, exclam, Farsi_1, grave ] };
189 1.9 mrg key <AE02> { [ 2, at, Farsi_2, at ] };
190 1.9 mrg key <AE03> { [ 3, numbersign, Farsi_3, 0x100066b ] };
191 1.9 mrg key <AE04> { [ 4, dollar, Farsi_4, 0x100fdfc ] };
192 1.9 mrg key <AE05> { [ 5, percent, Farsi_5, 0x100066a ] };
193 1.9 mrg key <AE06> { [ 6, asciicircum, Farsi_6, multiply ] };
194 1.9 mrg key <AE07> { [ 7, ampersand, Farsi_7, Arabic_comma ] };
195 1.9 mrg key <AE08> { [ 8, asterisk, Farsi_8, enfilledcircbullet ] };
196 1.9 mrg key <AE09> { [ 9, parenright, Farsi_9, 0x100200e ] };
197 1.9 mrg key <AE10> { [ 0, parenleft, Farsi_0, 0x100200f ] };
198 1.1 mrg key <AE11> { [ minus, Arabic_tatweel, underscore ] };
199 1.1 mrg key <AE12> { [ equal, plus, 0x1002212 ] };
200 1.1 mrg
201 1.1 mrg key <AD01> { [ Arabic_qaf, X, q, Q ] };
202 1.1 mrg key <AD02> { [ Arabic_waw, X, w, W ] };
203 1.1 mrg key <AD03> { [ 0x10006d5, Arabic_heh, e, E ] };
204 1.1 mrg key <AD04> { [ Arabic_ra , 0x1000695, r, R ] };
205 1.1 mrg key <AD05> { [ Arabic_teh, Arabic_tah, t, T ] };
206 1.1 mrg key <AD06> { [ 0x10006cc, 0x10006ce, y, Y ] };
207 1.1 mrg key <AD07> { [ Arabic_hamzaonyeh, Arabic_hamza, u, U ] };
208 1.1 mrg key <AD08> { [ Arabic_hah, Arabic_ain, i, I ] };
209 1.1 mrg key <AD09> { [ 0x10006c6, Arabic_hamzaonwaw, o, O ] };
210 1.1 mrg key <AD10> { [ 0x100067e, Arabic_theh, p, P ] };
211 1.1 mrg key <AD11> { [ bracketright, braceright, ucircumflex, Ucircumflex ] };
212 1.1 mrg key <AD12> { [ bracketleft, braceleft, scedilla, Scedilla ] };
213 1.1 mrg
214 1.1 mrg key <AC01> { [ Arabic_alef, Arabic_maddaonalef, a, A ] };
215 1.1 mrg key <AC02> { [ Arabic_seen, Arabic_sheen, s, S ] };
216 1.1 mrg key <AC03> { [ Arabic_dal, Arabic_thal, d, D ] };
217 1.1 mrg key <AC04> { [ Arabic_feh, Arabic_hamzaunderalef, f, F ] };
218 1.1 mrg key <AC05> { [ 0x10006af, Arabic_ghain, g, G ] };
219 1.1 mrg key <AC06> { [ Arabic_heh, 0x100200c, h, H ] };
220 1.1 mrg key <AC07> { [ 0x1000698, Arabic_hamzaonalef, j, J ] };
221 1.1 mrg key <AC08> { [ 0x10006a9, Arabic_kaf, k, K ] };
222 1.1 mrg key <AC09> { [ Arabic_lam, 0x10006b5, l, L ] };
223 1.1 mrg key <AC10> { [ Arabic_semicolon, colon, ecircumflex, Ecircumflex ] };
224 1.1 mrg key <AC11> { [ apostrophe, quotedbl, icircumflex, Icircumflex ] };
225 1.1 mrg
226 1.1 mrg key <AB01> { [ Arabic_zain, Arabic_dad, z, Z ] };
227 1.1 mrg key <AB02> { [ Arabic_khah, Arabic_sad, x, X ] };
228 1.1 mrg key <AB03> { [ Arabic_jeem, 0x1000686, c, C ] };
229 1.1 mrg key <AB04> { [ 0x10006a4, Arabic_zah, v, V ] };
230 1.1 mrg key <AB05> { [ Arabic_beh, 0x1000649, b, B ] };
231 1.1 mrg key <AB06> { [ Arabic_noon, Arabic_tehmarbuta, n, N ] };
232 1.1 mrg key <AB07> { [ Arabic_meem, Arabic_tatweel, m, M ] };
233 1.1 mrg key <AB08> { [ Arabic_comma, greater, comma ] };
234 1.1 mrg key <AB09> { [ period, less, apostrophe ] };
235 1.1 mrg key <AB10> { [ slash, Arabic_question_mark, question ] };
236 1.1 mrg
237 1.2 wiz include "nbsp(zwnj2nb3)"
238 1.1 mrg include "level3(ralt_switch)"
239 1.2 wiz };
240 1.1 mrg
241 1.6 mrg // EXTRAS:
242 1.6 mrg
243 1.6 mrg /////////////////////////////////////////////////////////////////////////////////
244 1.6 mrg //
245 1.6 mrg // Generated keyboard layout file with the Keyboard Layout Editor.
246 1.6 mrg // For more about the software, see http://code.google.com/p/keyboardlayouteditor
247 1.6 mrg //
248 1.6 mrg // Version 0.2, fixed AD09.
249 1.6 mrg //
250 1.6 mrg // Layout by Ernst Tremel, http://ubuntuforums.org/showpost.php?p=9365469&postcount=32
251 1.6 mrg // Creation of this file by Simos Xenitellis.
252 1.6 mrg
253 1.6 mrg partial alphanumeric_keys
254 1.6 mrg xkb_symbols "ave"
255 1.6 mrg {
256 1.6 mrg name[Group1] = "Avestan";
257 1.6 mrg
258 1.7 mrg key <AB01> { [ U10B30, U10B32 ] }; //
259 1.7 mrg key <AB02> { [ U10B11, U10B12 ] }; //
260 1.7 mrg key <AB03> { [ U10B17, UE102 ] }; //
261 1.7 mrg key <AB04> { [ U10B2C, U10B13 ] }; //
262 1.7 mrg key <AB05> { [ U10B20, U10B21 ] }; //
263 1.7 mrg key <AB06> { [ U10B25, U10B27 ] }; //
264 1.7 mrg key <AB07> { [ U10B28, U10B29 ] }; //
265 1.7 mrg key <AB08> { [ U10B3C, U10B39 ] }; //
266 1.7 mrg key <AB09> { [ U10B3E, U10B3D ] }; //
267 1.7 mrg key <AB10> { [ U10B3F, periodcentered ] }; //
268 1.7 mrg
269 1.7 mrg key <AC01> { [ U10B00, U10B01 ] }; //
270 1.7 mrg key <AC02> { [ U10B2F, U10B31 ] }; //
271 1.7 mrg key <AC03> { [ U10B1B, U10B1C ] }; //
272 1.7 mrg key <AC04> { [ U10B1F, U10B16 ] }; //
273 1.7 mrg key <AC05> { [ U10B14, U10B15 ] }; //
274 1.7 mrg key <AC06> { [ U10B35, UE100 ] }; //
275 1.7 mrg key <AC07> { [ U10B18, U10B24 ] }; //
276 1.7 mrg key <AC08> { [ U10B10, UE101 ] }; //
277 1.7 mrg key <AC09> { [ U10B2E, UE103 ] }; //
278 1.7 mrg key <AC10> { [ U10B3B, U10B3A ] }; //
279 1.7 mrg key <AC11> { [ U10B1D ] }; //
280 1.7 mrg
281 1.7 mrg key <AD01> { [ U10B22, U10B23 ] }; //
282 1.7 mrg key <AD02> { [ U10B33, U10B34 ] }; //
283 1.7 mrg key <AD03> { [ U10B08, U10B09 ] }; //
284 1.7 mrg key <AD04> { [ U10B2D, U10B26 ] }; //
285 1.7 mrg key <AD05> { [ U10B19, U10B1A ] }; //
286 1.7 mrg key <AD06> { [ U10B2B, U10B2A ] }; //
287 1.7 mrg key <AD07> { [ U10B0E, U10B0F ] }; //
288 1.7 mrg key <AD08> { [ U10B0C, U10B0D ] }; //
289 1.6 mrg key <AD09> { [ U10B0A, U10B0B ] }; //
290 1.7 mrg key <AD10> { [ U10B1E ] }; //
291 1.7 mrg key <AD11> { [ U10B06, U10B07 ] }; //
292 1.7 mrg key <AD12> { [ U10B02, U10B03 ] }; //
293 1.7 mrg
294 1.7 mrg key <AE01> { [ U10B78 ] }; //
295 1.7 mrg key <AE02> { [ U10B79 ] }; //
296 1.7 mrg key <AE03> { [ U10B7A ] }; //
297 1.7 mrg key <AE04> { [ U10B7B ] }; //
298 1.7 mrg key <AE05> { [ U10B7C ] }; //
299 1.7 mrg key <AE06> { [ U10B7D ] }; //
300 1.7 mrg key <AE07> { [ U10B7E ] }; //
301 1.7 mrg key <AE08> { [ U10B7F ] }; //
302 1.6 mrg
303 1.7 mrg key <BKSL> { [ U10B04, U10B05 ] }; //
304 1.7 mrg key <LSGT> { [ U10B04, U10B05 ] }; //
305 1.6 mrg };
306