ir revision 154daed1
1154daed1Smrg// $XKeyboardConfig: xkeyboard-config/symbols/ir,v 1.9 2007/01/04 23:41:09 svu Exp $
2154daed1Smrg// Iranian keyboard layout,
3154daed1Smrg// based on National Iranian Keyboard Standard (ISIRI 2901:1994),
4154daed1Smrg// with additions.
5154daed1Smrg//
6154daed1Smrg// Author: Behnam Esfahbod <behnam@esfahbod.info>
7154daed1Smrg//
8154daed1Smrg
9154daed1Smrg
10154daed1Smrg// 3-Level layout
11154daed1Smrg
12154daed1Smrgpartial default alphanumeric_keys
13154daed1Smrgxkb_symbols "basic" {
14154daed1Smrg    name[Group1]= "Iran";
15154daed1Smrg
16154daed1Smrg    // Persian digits
17154daed1Smrg    key <AE01> { [ 0x10006f1,	exclam,		quoteleft		] };
18154daed1Smrg    key <AE02> { [ 0x10006f2,	0x100066c,	at			] };
19154daed1Smrg    key <AE03> { [ 0x10006f3,	0x100066b,	numbersign		] };
20154daed1Smrg    key <AE04> { [ 0x10006f4,	0x100fdfc,	dollar			] };
21154daed1Smrg    key <AE05> { [ 0x10006f5,	0x100066a,	percent			] };
22154daed1Smrg    key <AE06> { [ 0x10006f6,	multiply,	asciicircum		] };
23154daed1Smrg    key <AE07> { [ 0x10006f7,	Arabic_comma,	ampersand		] };
24154daed1Smrg    key <AE08> { [ 0x10006f8,	asterisk,	enfilledcircbullet	] };
25154daed1Smrg    key <AE09> { [ 0x10006f9,	parenright,	0x100200e		] };
26154daed1Smrg    key <AE10> { [ 0x10006f0,	parenleft,	0x100200f		] };
27154daed1Smrg
28154daed1Smrg    // Other 3-Level symbols
29154daed1Smrg    key <TLDE> { [ 0x100200d,		division,		asciitilde	] };
30154daed1Smrg    key <AE11> { [ minus,		Arabic_tatweel,		underscore	] };
31154daed1Smrg    key <AE12> { [ equal,		plus,			0x1002212	] };
32154daed1Smrg    key <BKSL> { [ backslash,		bar,			0x1002010	] };
33154daed1Smrg    key <SPCE> { [ space,		0x100200c,		nobreakspace	] };
34154daed1Smrg
35154daed1Smrg    key <AD01> { [ Arabic_dad,		Arabic_sukun,		degree		] };
36154daed1Smrg    key <AD02> { [ Arabic_sad,		Arabic_dammatan,	VoidSymbol	] };
37154daed1Smrg    key <AD03> { [ Arabic_theh,		Arabic_kasratan,	0x13a4		] };
38154daed1Smrg    key <AD04> { [ Arabic_qaf,		Arabic_fathatan,	VoidSymbol	] };
39154daed1Smrg    key <AD05> { [ Arabic_feh,		Arabic_damma,		VoidSymbol	] };
40154daed1Smrg    key <AD06> { [ Arabic_ghain,	Arabic_kasra,		VoidSymbol	] };
41154daed1Smrg    key <AD07> { [ Arabic_ain,		Arabic_fatha,		VoidSymbol	] };
42154daed1Smrg    key <AD08> { [ Arabic_heh,		Arabic_shadda,		0x100202d	] };
43154daed1Smrg    key <AD09> { [ Arabic_khah,		bracketright,		0x100202e	] };
44154daed1Smrg    key <AD10> { [ Arabic_hah,		bracketleft,		0x100202c	] };
45154daed1Smrg    key <AD11> { [ Arabic_jeem,		braceright,		0x100202a	] };
46154daed1Smrg    key <AD12> { [ 0x1000686,		braceleft,		0x100202b	] };
47154daed1Smrg
48154daed1Smrg    key <AC01> { [ Arabic_sheen,	Arabic_hamzaonwaw,	VoidSymbol	] };
49154daed1Smrg    key <AC02> { [ Arabic_seen,		Arabic_hamzaonyeh,	VoidSymbol	] };
50154daed1Smrg    key <AC03> { [ 0x10006cc,		Arabic_yeh,		Arabic_alefmaksura ] };
51154daed1Smrg    key <AC04> { [ Arabic_beh,		Arabic_hamzaunderalef,	VoidSymbol	] };
52154daed1Smrg    key <AC05> { [ Arabic_lam,		Arabic_hamzaonalef,	VoidSymbol	] };
53154daed1Smrg    key <AC06> { [ Arabic_alef,		Arabic_maddaonalef,	0x1000671	] };
54154daed1Smrg    key <AC07> { [ Arabic_teh,		Arabic_tehmarbuta,	VoidSymbol	] };
55154daed1Smrg    key <AC08> { [ Arabic_noon,		guillemotright,		0x100fd3e	] };
56154daed1Smrg    key <AC09> { [ Arabic_meem,		guillemotleft,		0x100fd3f	] };
57154daed1Smrg    key <AC10> { [ 0x10006a9,		colon,			semicolon	] };
58154daed1Smrg    key <AC11> { [ 0x10006af,		Arabic_semicolon,	quotedbl	] };
59154daed1Smrg
60154daed1Smrg    key <AB01> { [ Arabic_zah,		Arabic_kaf,		VoidSymbol	] };
61154daed1Smrg    key <AB02> { [ Arabic_tah,		0x1000653,		VoidSymbol	] };
62154daed1Smrg    key <AB03> { [ Arabic_zain,		0x1000698,		VoidSymbol	] };
63154daed1Smrg    key <AB04> { [ Arabic_ra,		0x1000670,		0x1000656	] };
64154daed1Smrg    key <AB05> { [ Arabic_thal,		0x100200c,		0x100200d	] };
65154daed1Smrg    key <AB06> { [ Arabic_dal,		0x1000654,		0x1000655	] };
66154daed1Smrg    key <AB07> { [ 0x100067e,		Arabic_hamza,		ellipsis	] };
67154daed1Smrg    key <AB08> { [ Arabic_waw,		greater,		comma		] };
68154daed1Smrg    key <AB09> { [ period,		less,			apostrophe	] };
69154daed1Smrg    key <AB10> { [ slash,		Arabic_question_mark,	question	] };
70154daed1Smrg
71154daed1Smrg    include "level3(ralt_switch)"
72154daed1Smrg};
73154daed1Smrg
74154daed1Smrg
75154daed1Smrgpartial hidden alphanumeric_keys
76154daed1Smrgxkb_symbols "part_pro" {
77154daed1Smrg
78154daed1Smrg    // Persian and English (ASCII) digits
79154daed1Smrg    key <AE01> { [ 0x10006f1,	exclam,		quoteleft,		1	] };
80154daed1Smrg    key <AE02> { [ 0x10006f2,	0x100066c,	at,			2	] };
81154daed1Smrg    key <AE03> { [ 0x10006f3,	0x100066b,	numbersign,		3	] };
82154daed1Smrg    key <AE04> { [ 0x10006f4,	0x100fdfc,	dollar,			4	] };
83154daed1Smrg    key <AE05> { [ 0x10006f5,	0x100066a,	percent,		5	] };
84154daed1Smrg    key <AE06> { [ 0x10006f6,	multiply,	asciicircum,		6	] };
85154daed1Smrg    key <AE07> { [ 0x10006f7,	Arabic_comma,	ampersand,		7	] };
86154daed1Smrg    key <AE08> { [ 0x10006f8,	asterisk,	enfilledcircbullet,	8	] };
87154daed1Smrg    key <AE09> { [ 0x10006f9,	parenright,	0x100200e,		9	] };
88154daed1Smrg    key <AE10> { [ 0x10006f0,	parenleft,	0x100200f,		0	] };
89154daed1Smrg};
90154daed1Smrg
91154daed1Smrgpartial hidden alphanumeric_keys
92154daed1Smrgxkb_symbols "part_keypad" {
93154daed1Smrg
94154daed1Smrg    // Persian digits and Mathematical operators
95154daed1Smrg    key <KPDV> { [ division,	XF86_Ungrab	] };
96154daed1Smrg    key <KPMU> { [ multiply,	XF86_ClearGrab	] };
97154daed1Smrg    key <KPSU> { [ 0x1002212,	XF86_Prev_VMode	] };
98154daed1Smrg    key <KPAD> { [ plus,	XF86_Next_VMode	] };
99154daed1Smrg
100154daed1Smrg    key <KPEN> { [ KP_Enter	] };
101154daed1Smrg    key <KPEQ> { [ equal	] };
102154daed1Smrg
103154daed1Smrg    key <KP7>  { [ KP_Home,	0x10006f7	] };
104154daed1Smrg    key <KP8>  { [ KP_Up,	0x10006f8	] };
105154daed1Smrg    key <KP9>  { [ KP_Prior,	0x10006f9	] };
106154daed1Smrg
107154daed1Smrg    key <KP4>  { [ KP_Left,	0x10006f4	] };
108154daed1Smrg    key <KP5>  { [ KP_Begin,	0x10006f5	] };
109154daed1Smrg    key <KP6>  { [ KP_Right,	0x10006f6	] };
110154daed1Smrg
111154daed1Smrg    key <KP1>  { [ KP_End,	0x10006f1	] };
112154daed1Smrg    key <KP2>  { [ KP_Down,	0x10006f2	] };
113154daed1Smrg    key <KP3>  { [ KP_Next,	0x10006f3	] };
114154daed1Smrg
115154daed1Smrg    key <KP0>  { [ KP_Insert,	0x10006f0	] };
116154daed1Smrg    key <KPDL> { [ KP_Delete,	0x100066b	] };
117154daed1Smrg};
118154daed1Smrg
119154daed1Smrg// 4-Level leyout
120154daed1Smrg
121154daed1Smrgpartial alphanumeric_keys
122154daed1Smrgxkb_symbols "pro" {
123154daed1Smrg    include "ir(basic)"
124154daed1Smrg    include "ir(part_pro)"
125154daed1Smrg
126154daed1Smrg    name[Group1]= "Iran - Pro";
127154daed1Smrg};
128154daed1Smrg
129154daed1Smrg
130154daed1Smrg// Persian Keypad leyout
131154daed1Smrg
132154daed1Smrgpartial alphanumeric_keys
133154daed1Smrgxkb_symbols "keypad" {
134154daed1Smrg    include "ir(basic)"
135154daed1Smrg    include "ir(part_keypad)"
136154daed1Smrg
137154daed1Smrg    name[Group1]= "Iran - Keypad";
138154daed1Smrg};
139154daed1Smrg
140154daed1Smrg
141154daed1Smrg// 4-Level leyout with Persian Keypad leyout
142154daed1Smrg
143154daed1Smrgpartial alphanumeric_keys
144154daed1Smrgxkb_symbols "pro_keypad" {
145154daed1Smrg    include "ir(basic)"
146154daed1Smrg    include "ir(part_keypad)"
147154daed1Smrg    include "ir(part_pro)"
148154daed1Smrg
149154daed1Smrg    name[Group1]= "Iran - Pro Keypad";
150154daed1Smrg
151154daed1Smrg};
152154daed1Smrg
153154daed1Smrgpartial alphanumeric_keys
154154daed1Smrgxkb_symbols "ku" {
155154daed1Smrg    include "tr(ku)"
156154daed1Smrg    name[Group1]= "Iran - Kurdish, Latin Q";
157154daed1Smrg};
158154daed1Smrg
159154daed1Smrgpartial alphanumeric_keys
160154daed1Smrgxkb_symbols "ku_f" {
161154daed1Smrg    include "tr(ku_f)"
162154daed1Smrg    name[Group1]= "Iran - Kurdish, (F)";
163154daed1Smrg};
164154daed1Smrg
165154daed1Smrgpartial alphanumeric_keys
166154daed1Smrgxkb_symbols "ku_alt" {
167154daed1Smrg    include "tr(ku_alt)"
168154daed1Smrg    name[Group1]= "Iran - Kurdish, Latin Alt-Q";
169154daed1Smrg};
170154daed1Smrg
171154daed1Smrg// Kurdish Soranî Bahdînî (Arabic) keyboard layout,
172154daed1Smrg// based on the Kurdî Soranî Bahdînî keyboard from KurdITGroup
173154daed1Smrg// which is based on National Iranian Keyboard Standard (ISIRI 2901:1994),
174154daed1Smrg// with additions.
175154daed1Smrg//
176154daed1Smrg// Copyright (C) 2006 Erdal Ronahî, published under the GPL v2
177154daed1Smrg//
178154daed1Smrg// Special copyright note: author explicitly permitted to license this 
179154daed1Smrg// layout under MIT/X11 license, for details see
180154daed1Smrg// https://bugs.freedesktop.org/show_bug.cgi?id=9541
181154daed1Smrg//
182154daed1Smrg// Author: Erdal Ronahî  <erdal.ronahi@gmail.com>
183154daed1Smrg//
184154daed1Smrg// Kurdish Arabic-Latin Layout for Soranî
185154daed1Smrgpartial alphanumeric_keys
186154daed1Smrgxkb_symbols "ku_ara" {
187154daed1Smrg    name[Group1]= "Iran - Kurdish, Arabic-Latin";
188154daed1Smrg
189154daed1Smrg    // Other 3-Level symbols
190154daed1Smrg    key <TLDE> { [ 0x100200d,		division,		asciitilde	] };
191154daed1Smrg    key <BKSL> { [ backslash,		bar,			ccedilla, Ccedilla	] };
192154daed1Smrg    key <SPCE> { [ space,		0x100200c,		nobreakspace	] };
193154daed1Smrg
194154daed1Smrg    // Digits
195154daed1Smrg    key <AE01> { [ 1,	exclam,		0x10006f1,	quoteleft	] };
196154daed1Smrg    key <AE02> { [ 2,	at, 		0x10006f2,	at		] };
197154daed1Smrg    key <AE03> { [ 3,	numbersign,	0x10006f3,	0x100066b	] };
198154daed1Smrg    key <AE04> { [ 4,	dollar,		0x10006f4, 	0x100fdfc	] };
199154daed1Smrg    key <AE05> { [ 5,	percent,	0x10006f5,	0x100066a	] };
200154daed1Smrg    key <AE06> { [ 6,	asciicircum,	0x10006f6,	multiply	] };
201154daed1Smrg    key <AE07> { [ 7,	ampersand,	0x10006f7, 	Arabic_comma	] };
202154daed1Smrg    key <AE08> { [ 8,	asterisk,	0x10006f8,	enfilledcircbullet	] };
203154daed1Smrg    key <AE09> { [ 9,	parenright,	0x10006f9,	0x100200e	] };
204154daed1Smrg    key <AE10> { [ 0,	parenleft,	0x10006f0,	0x100200f	] };
205154daed1Smrg    key <AE11> { [ minus,		Arabic_tatweel,		underscore	] };
206154daed1Smrg    key <AE12> { [ equal,		plus,			0x1002212	] };
207154daed1Smrg
208154daed1Smrg    key <AD01> { [         Arabic_qaf,            X,  q,  Q ] };
209154daed1Smrg    key <AD02> { [         Arabic_waw,            X,  w,  W ] };
210154daed1Smrg    key <AD03> { [          0x10006d5,   Arabic_heh,  e,  E ] };
211154daed1Smrg    key <AD04> { [         Arabic_ra ,    0x1000695,  r,  R ] };
212154daed1Smrg    key <AD05> { [         Arabic_teh,   Arabic_tah,  t,  T ] };
213154daed1Smrg    key <AD06> { [          0x10006cc,    0x10006ce,  y,  Y ] };
214154daed1Smrg    key <AD07> { [  Arabic_hamzaonyeh, Arabic_hamza,  u,  U ] };
215154daed1Smrg    key <AD08> { [         Arabic_hah,   Arabic_ain,  i,  I ] };
216154daed1Smrg    key <AD09> { [          0x10006c6, Arabic_hamzaonwaw,  o,  O ] };
217154daed1Smrg    key <AD10> { [          0x100067e,  Arabic_theh,  p,  P ] };
218154daed1Smrg    key <AD11> { [ bracketright,	braceright,	ucircumflex, Ucircumflex	] };
219154daed1Smrg    key <AD12> { [ bracketleft,		braceleft,	scedilla, Scedilla	] };
220154daed1Smrg
221154daed1Smrg    key <AC01> { [ Arabic_alef,	Arabic_maddaonalef,	a, A	] };
222154daed1Smrg    key <AC02> { [ Arabic_seen,		Arabic_sheen,	s, S	] };
223154daed1Smrg    key <AC03> { [  Arabic_dal,		Arabic_thal,	d, D	] };
224154daed1Smrg    key <AC04> { [  Arabic_feh,	Arabic_hamzaunderalef,	f, F	] };
225154daed1Smrg    key <AC05> { [   0x10006af,		Arabic_ghain,	g, G	] };
226154daed1Smrg    key <AC06> { [  Arabic_heh,		0x100200c,	h, H	] };
227154daed1Smrg    key <AC07> { [   0x1000698,	Arabic_hamzaonalef,	j, J	] };
228154daed1Smrg    key <AC08> { [   0x10006a9,		Arabic_kaf,	k, K	] };
229154daed1Smrg    key <AC09> { [  Arabic_lam,		0x10006b5,	l, L	] };
230154daed1Smrg    key <AC10> { [  Arabic_semicolon, 	colon,		ecircumflex, Ecircumflex	] };
231154daed1Smrg    key <AC11> { [  apostrophe, 	quotedbl,	icircumflex, Icircumflex	] };
232154daed1Smrg
233154daed1Smrg    key <AB01> { [ Arabic_zain,		Arabic_dad,	z, Z	] };
234154daed1Smrg    key <AB02> { [ Arabic_khah,		Arabic_sad,	x, X	] };
235154daed1Smrg    key <AB03> { [ Arabic_jeem,		0x1000686,	c, C	] };
236154daed1Smrg    key <AB04> { [   0x10006a4,		Arabic_zah,	v, V	] };
237154daed1Smrg    key <AB05> { [ Arabic_beh,		0x1000649,	b, B	] };
238154daed1Smrg    key <AB06> { [ Arabic_noon,	Arabic_tehmarbuta,	n, N	] };
239154daed1Smrg    key <AB07> { [ Arabic_meem,	Arabic_tatweel,		m, M	] };
240154daed1Smrg    key <AB08> { [ Arabic_comma,	greater,	comma		] };
241154daed1Smrg    key <AB09> { [ period,		less,		apostrophe	] };
242154daed1Smrg    key <AB10> { [ slash,		Arabic_question_mark, 	question	] };
243154daed1Smrg
244154daed1Smrg    include "level3(ralt_switch)"
245154daed1Smrg
246154daed1Smrg};
247