ara revision 2ab00627
1797b363dSmrgdefault  partial alphanumeric_keys
2154daed1Smrgxkb_symbols "basic" {
32ab00627Smrg
4154daed1Smrg    name[Group1]= "Arabic";
5154daed1Smrg
62ab00627Smrg    key.type[Group1]="FOUR_LEVEL";
72ab00627Smrg    
82ab00627Smrg    key <TLDE> {  [     Arabic_thal,        Arabic_shadda,            Arabic_percent,               U0609 ]};  // ‎ذ‎ ‎◌ّ‎     ‎٪‎ ‎؉‎
92ab00627Smrg    key <AE01> {  [               1,               exclam,                  Arabic_1,            NoSymbol ]};  // 1 !     ١
102ab00627Smrg    key <AE02> {  [               2,                   at,                  Arabic_2,            NoSymbol ]};  // 2 @     ٢
112ab00627Smrg    key <AE03> {  [               3,           numbersign,                  Arabic_3,            NoSymbol ]};  // 3 #     ٣
122ab00627Smrg    key <AE04> {  [               4,               dollar,                  Arabic_4,            NoSymbol ]};  // 4 $     ٤
132ab00627Smrg    key <AE05> {  [               5,              percent,                  Arabic_5,               U2030 ]};  // 5 %     ٥ ‰
142ab00627Smrg    key <AE06> {  [               6,          asciicircum,                  Arabic_6,            NoSymbol ]};  // 6 ^     ٦
152ab00627Smrg    key <AE07> {  [               7,            ampersand,                  Arabic_7,            NoSymbol ]};  // 7 &     ٧
162ab00627Smrg    key <AE08> {  [               8,             asterisk,                  Arabic_8,            NoSymbol ]};  // 8 *     ٨
172ab00627Smrg    key <AE09> {  [               9,           parenright,                  Arabic_9,            NoSymbol ]};  // 9 )     ٩
182ab00627Smrg    key <AE10> {  [               0,            parenleft,                  Arabic_0,            NoSymbol ]};  // 0 (      ٠
192ab00627Smrg    key <AE11> {  [           minus,           underscore,                    endash,               U2011 ]};  // - _     – Non-Breaking-Hyphen
202ab00627Smrg    key <AE12> {  [           equal,                 plus,                  notequal,               U2248 ]};  // = +     ≠ ≈ 
212ab00627Smrg
222ab00627Smrg    key <AD01> {  [      Arabic_dad,         Arabic_fatha,                  NoSymbol,               U2066 ]};  // ‎ض‎ ‎◌َ       LEFT‑TO‑RIGHT ISOLATE
232ab00627Smrg    key <AD02> {  [      Arabic_sad,      Arabic_fathatan,                  NoSymbol,               U2067 ]};  // ‎ص‎ ‎◌ً       RIGHT‑TO‑LEFT ISOLATE
242ab00627Smrg    key <AD03> {  [     Arabic_theh,         Arabic_damma,                  NoSymbol,               U2068 ]};  // ‎ث‎ ‎◌ُ       FIRST STRONG ISOLATE
252ab00627Smrg    key <AD04> {  [      Arabic_qaf,      Arabic_dammatan,                  NoSymbol,               U2069 ]};  // ‎ق‎ ‎◌ٌ       POP DIRECTIONAL ISOLATE
262ab00627Smrg    key <AD05> {  [      Arabic_feh,                UFEF9,                Arabic_veh,            NoSymbol ]};  // ‎ف‎ ‎ﻹ     ‎ڤ
272ab00627Smrg    key <AD06> {  [    Arabic_ghain,Arabic_hamzaunderalef,                  NoSymbol,               U202A ]};  // ‎غ‎ ‎إ‎       LEFT-TO-RIGHT-EMBEDDING
282ab00627Smrg    key <AD07> {  [      Arabic_ain,                grave,                  NoSymbol,               U202B ]};  // ‎ع‎ `       RIGHT-TO-LEFT EMBEDDING
292ab00627Smrg    key <AD08> {  [       Arabic_ha,             division,                  NoSymbol,               U202C ]};  // ‎ه‎ ÷       POP DIRECTIONAL FORMATTING
302ab00627Smrg    key <AD09> {  [     Arabic_khah,             multiply,                  NoSymbol,            NoSymbol ]};  // ‎خ‎ ×
312ab00627Smrg    key <AD10> {  [      Arabic_hah,     Arabic_semicolon,                  NoSymbol,               U200E ]};  // ‎ح‎ ؛       LEFT-TO-RIGHT MARK
322ab00627Smrg    key <AD11> {  [     Arabic_jeem,                 less,              Arabic_tcheh,               U200F ]};  // ‎ج‎ <     ‎چ‎ RIGHT-TO-LEFT MARK
332ab00627Smrg    key <AD12> {  [      Arabic_dal,              greater,                  NoSymbol,               U061C ]};  // ‎د‎ >       ARABIC LETTER MARK
342ab00627Smrg
352ab00627Smrg    key <AC01> {  [    Arabic_sheen,         Arabic_kasra,                  NoSymbol,            NoSymbol ]};  // ‎ش‎ ‎◌ِ‎
362ab00627Smrg    key <AC02> {  [     Arabic_seen,      Arabic_kasratan,                  NoSymbol,            NoSymbol ]};  // ‎س‎ ‎◌ٍ‎
372ab00627Smrg    key <AC03> {  [      Arabic_yeh,         bracketright,                  NoSymbol,            NoSymbol ]};  // ‎ي‎ ]
382ab00627Smrg    key <AC04> {  [      Arabic_beh,          bracketleft,                Arabic_peh,            NoSymbol ]};  // ‎ب‎ [     ‎پ‎ 
392ab00627Smrg    key <AC05> {  [      Arabic_lam,               U0FEF7,                  NoSymbol,            NoSymbol ]};  // ‎ل‎ ‎ﻷ‎
402ab00627Smrg    key <AC06> {  [     Arabic_alef,   Arabic_hamzaonalef,                     U0671,            NoSymbol ]};  // ‎ا‎ ‎أ     ‎ٱ‎ 
412ab00627Smrg    key <AC07> {  [      Arabic_teh,       Arabic_tatweel,                  NoSymbol,            NoSymbol ]};  // ‎ت‎ ‎ـ‎
422ab00627Smrg    key <AC08> {  [     Arabic_noon,         Arabic_comma,                     U066B,            NoSymbol ]};  // ‎ن‎ ‎،‎     ‎٫‎
432ab00627Smrg    key <AC09> {  [     Arabic_meem,                slash,                  NoSymbol,            NoSymbol ]};  // ‎م‎ /
442ab00627Smrg    key <AC10> {  [      Arabic_kaf,                colon,                Arabic_gaf,            NoSymbol ]};  // ‎ك‎ :     ‎گ‎
452ab00627Smrg    key <AC11> {  [      Arabic_tah,             quotedbl,                     U27E9,               U200D ]};  // ‎ط‎ "     ⟩ ZWJ
462ab00627Smrg    key <BKSL> {  [       backslash,             ellipsis,                     U27E8,               U202F ]};  // \ …     ⟨ NNBSP
472ab00627Smrg
482ab00627Smrg    key <LSGT> {  [             bar,            brokenbar,                  NoSymbol,            NoSymbol ]};  // | ¦ 
492ab00627Smrg    key <AB01> { [Arabic_hamzaonyeh,           asciitilde,            guillemotright,               U203A ]};  // ‎ئ‎ ~     » ›
502ab00627Smrg    key <AB02> {  [    Arabic_hamza,         Arabic_sukun,             guillemotleft,               U2039 ]};  // ‎ء‎ ◌ْ     « ‹
512ab00627Smrg    key <AB03> { [Arabic_hamzaonwaw,           braceright,                  NoSymbol,            NoSymbol ]};  // ‎ؤ }
522ab00627Smrg    key <AB04> {  [       Arabic_ra,            braceleft,                  NoSymbol,            NoSymbol ]};  // ‎ر‎ {
532ab00627Smrg    key <AB05> {  [           UFEFB,                UFEF5,                  NoSymbol,            NoSymbol ]};  // ‎ﻻ‎ ‎ﻵ‎
542ab00627Smrg    key <AB06> {[Arabic_alefmaksura,   Arabic_maddaonalef,   Arabic_superscript_alef,            NoSymbol ]};  // ‎ى‎ ‎آ‎     ‎◌ٰ‎ 
552ab00627Smrg    key <AB07> { [Arabic_tehmarbuta,           apostrophe,                  NoSymbol,            NoSymbol ]};  // ‎ة‎ '
562ab00627Smrg    key <AB08> {  [      Arabic_waw,                comma,                     U066C,            NoSymbol ]};  // ‎و‎ ,     ‎٬
572ab00627Smrg    key <AB09> {  [     Arabic_zain,               period,                Arabic_jeh,            NoSymbol ]};  // ‎ز‎ .     ‎ژ‎
582ab00627Smrg    key <AB10> {  [      Arabic_zah, Arabic_question_mark,                     U066D,               U200C ]};  // ‎ظ‎ ‎؟‎     ‎٭‎ ZWNJ
592ab00627Smrg    
602ab00627Smrg    include       "level3(ralt_switch)"
61154daed1Smrg};
62154daed1Smrg
632ab00627Smrg// Synonym for the default
64154daed1Smrgpartial alphanumeric_keys
65154daed1Smrgxkb_symbols "qwerty" {
66154daed1Smrg    include "ara(basic)"
679184b9c8Smrg    name[Group1]= "Arabic (QWERTY)";
68154daed1Smrg};
69154daed1Smrg
702ab00627Smrg
712ab00627Smrg
722ab00627Smrg// Replaces the Western numeral signs with Arabic-script digits on the keypad, pushing the Western digits to the third level accessible by the right alt key.
732ab00627Smrg// As this set of definitions is unlisted, it is not usable without parallel mapping on the numeric row in the ara(digits) layout which includes it.
742ab00627Smrgpartial hidden keypad_keys
752ab00627Smrgxkb_symbols "digits_KP" {
762ab00627Smrg    
772ab00627Smrg    key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD";
782ab00627Smrg
792ab00627Smrg    key <KP7>  { [ KP_Home,   Arabic_7, 7, NoSymbol ] };
802ab00627Smrg    key <KP8>  { [ KP_Up,     Arabic_8, 8, NoSymbol ] };
812ab00627Smrg    key <KP9>  { [ KP_Prior,  Arabic_9, 9, NoSymbol ] };
822ab00627Smrg
832ab00627Smrg    key <KP4>  { [ KP_Left,   Arabic_4, 4, NoSymbol ] };
842ab00627Smrg    key <KP5>  { [ KP_Begin,  Arabic_5, 5, NoSymbol ] };
852ab00627Smrg    key <KP6>  { [ KP_Right,  Arabic_6, 6, NoSymbol ] };
862ab00627Smrg
872ab00627Smrg    key <KP1>  { [ KP_End,    Arabic_1, 1, NoSymbol ] };
882ab00627Smrg    key <KP2>  { [ KP_Down,   Arabic_2, 2, NoSymbol ] };
892ab00627Smrg    key <KP3>  { [ KP_Next,   Arabic_3, 3, NoSymbol ] };
902ab00627Smrg
912ab00627Smrg    key <KP0>  { [ KP_Insert, Arabic_0, 0, NoSymbol ] };
922ab00627Smrg    
932ab00627Smrg    include       "kpdl(momayyezoss)"
942ab00627Smrg};
952ab00627Smrg
962ab00627Smrg// Replaces the Western numeral signs with Arabic-script digits on the numeric row, pushing the Western digits to the third level accessible by the right alt key.
972ab00627Smrgpartial alphanumeric_keys
982ab00627Smrgxkb_symbols "digits" {
992ab00627Smrg
1002ab00627Smrg    include       "ara(basic)"
1012ab00627Smrg    
1022ab00627Smrg    name[Group1]= "Arabic (digits)";
1032ab00627Smrg
1042ab00627Smrg    key <TLDE> { [Arabic_thal,Arabic_shadda, percent,U2030]};
1052ab00627Smrg    key <AE01> { [ Arabic_1,         exclam, 1, NoSymbol ] };
1062ab00627Smrg    key <AE02> { [ Arabic_2,             at, 2, NoSymbol ] };
1072ab00627Smrg    key <AE03> { [ Arabic_3,     numbersign, 3, NoSymbol ] };
1082ab00627Smrg    key <AE04> { [ Arabic_4,         dollar, 4, NoSymbol ] };
1092ab00627Smrg    key <AE05> { [ Arabic_5, Arabic_percent, 5, U0609    ] };
1102ab00627Smrg    key <AE06> { [ Arabic_6,    asciicircum, 6, NoSymbol ] };
1112ab00627Smrg    key <AE07> { [ Arabic_7,      ampersand, 7, NoSymbol ] };
1122ab00627Smrg    key <AE08> { [ Arabic_8,       asterisk, 8, NoSymbol ] };
1132ab00627Smrg    key <AE09> { [ Arabic_9,     parenright, 9, NoSymbol ] };
1142ab00627Smrg    key <AE10> { [ Arabic_0,      parenleft, 0, NoSymbol ] };
1152ab00627Smrg
1162ab00627Smrg    include       "ara(digits_KP)"
1172ab00627Smrg};
1182ab00627Smrg
1192ab00627Smrg// Synonym for the layout with the Latin-script and Arabic-script digits switched
1202ab00627Smrgpartial alphanumeric_keys
1212ab00627Smrgxkb_symbols "qwerty_digits" {
1222ab00627Smrg    include "ara(digits)"
1232ab00627Smrg    name[Group1]= "Arabic (qwerty/digits)";
1242ab00627Smrg};
1252ab00627Smrg
1262ab00627Smrg
1272ab00627Smrg
128154daed1Smrgpartial alphanumeric_keys
129154daed1Smrgxkb_symbols "azerty" {
130154daed1Smrg    include "ara(basic)"
1319184b9c8Smrg    name[Group1]= "Arabic (AZERTY)";
132154daed1Smrg
133797b363dSmrg	// The North African Arabic keyboard differs from the Middle East one
134797b363dSmrg	// by the numeric row; it follows French keyboard style.
135154daed1Smrg	//
136797b363dSmrg	// PROBLEM: some characters are inaccessible: ! @ # $ % ^ *
137797b363dSmrg	// Should they go elsewhere?  Replacing " ' that are now doubled?
138797b363dSmrg	// Also, dead_circumflex and dead_diaeresis from French keyboard
139154daed1Smrg	// as well as ugrave are missing, which questions the utility of the
140797b363dSmrg	// other accentuated Latin letters. Maybe this is useful only with
141797b363dSmrg	// a French keyboard in Group1? Then, shouldn't Group1 be filled?
142154daed1Smrg
143154daed1Smrg    key <AE01> {  [       ampersand,               1      ]       };
144154daed1Smrg    key <AE02> {  [          eacute,               2      ]       };
145154daed1Smrg    key <AE03> {  [        quotedbl,               3      ]       };
146154daed1Smrg    key <AE04> {  [      apostrophe,               4      ]       };
147154daed1Smrg    key <AE05> {  [       parenleft,               5      ]       };
148154daed1Smrg    key <AE06> {  [           minus,               6      ]       };
149154daed1Smrg    key <AE07> {  [          egrave,               7      ]       };
150154daed1Smrg    key <AE08> {  [      underscore,               8      ]       };
151154daed1Smrg    key <AE09> {  [        ccedilla,               9      ]       };
152154daed1Smrg    key <AE10> {  [          agrave,               0      ]       };
153154daed1Smrg    key <AE11> {  [      parenright,          degree      ]       };
154154daed1Smrg};
155154daed1Smrg
156154daed1Smrgpartial alphanumeric_keys
157154daed1Smrgxkb_symbols "azerty_digits" {
158154daed1Smrg    include "ara(azerty)"
1599184b9c8Smrg    name[Group1]= "Arabic (AZERTY/digits)";
160797b363dSmrg
1612ab00627Smrg    key <AE01> { [      ampersand, Arabic_1, 1, NoSymbol ] };
1622ab00627Smrg    key <AE02> { [         eacute, Arabic_2, 2, NoSymbol ] };
1632ab00627Smrg    key <AE03> { [       quotedbl, Arabic_3, 3, NoSymbol ] };
1642ab00627Smrg    key <AE04> { [     apostrophe, Arabic_4, 4, NoSymbol ] };
1652ab00627Smrg    key <AE05> { [      parenleft, Arabic_5, 5, NoSymbol ] };
1662ab00627Smrg    key <AE06> { [          minus, Arabic_6, 6, NoSymbol ] };
1672ab00627Smrg    key <AE07> { [         egrave, Arabic_7, 7, NoSymbol ] };
1682ab00627Smrg    key <AE08> { [     underscore, Arabic_8, 8, NoSymbol ] };
1692ab00627Smrg    key <AE09> { [       ccedilla, Arabic_9, 9, NoSymbol ] };
1702ab00627Smrg    key <AE10> { [         agrave, Arabic_0, 0, NoSymbol ] };
171154daed1Smrg};
172154daed1Smrg
1732ab00627Smrg
1742ab00627Smrg
1752ab00627Smrg
176154daed1Smrg// Arabic keyboard using Buckwalter transliteration
177154daed1Smrg// http://www.qamus.org/transliteration.htm
178154daed1Smrg// Martin Vidner
179154daed1Smrg
180797b363dSmrgpartial alphanumeric_keys
181154daed1Smrgxkb_symbols "buckwalter" {
182bfd7cbc1Smrg    name[Group1]= "Arabic (Buckwalter)";
183154daed1Smrg
184154daed1Smrg    // ARABIC LETTER SUPERSCRIPT ALEF
185154daed1Smrg    key <TLDE> {  [       0x1000670,  Arabic_shadda       ]       };
186154daed1Smrg
187154daed1Smrg    // Arabic_0 .. Arabic_9 do not work in Kate,
188154daed1Smrg    // Unicode never seems to work worse.
189154daed1Smrg    key <AE01> {  [       0x1000661,   VoidSymbol         ]       };
190154daed1Smrg    key <AE02> {  [       0x1000662,   VoidSymbol         ]       };
191154daed1Smrg    key <AE03> {  [       0x1000663,   VoidSymbol         ]       };
192154daed1Smrg    key <AE04> {  [       0x1000664,   Arabic_sheen       ]       };
193154daed1Smrg    key <AE05> {  [       0x1000665,   Arabic_percent     ]       };
194154daed1Smrg    key <AE06> {  [       0x1000666,   VoidSymbol         ]       };
195154daed1Smrg    key <AE07> {  [       0x1000667,   Arabic_hamzaonwaw  ]       };
196154daed1Smrg    key <AE08> {  [       0x1000668,   Arabic_thal        ]       };
197154daed1Smrg    // ORNATE LEFT PARENTHESIS
198154daed1Smrg    key <AE09> {  [       0x1000669,   0x100fd3e          ]       };
199154daed1Smrg    // ORNATE RIGHT PARENTHESIS
200154daed1Smrg    key <AE10> {  [       0x1000660,   0x100fd3f          ]       };
201154daed1Smrg    key <AE11> {  [       minus,       Arabic_tatweel     ]       };
202154daed1Smrg    key <AE12> {  [       equal,       plus               ]       };
203797b363dSmrg
204154daed1Smrg    key <AD01> {  [      Arabic_qaf,   VoidSymbol         ]       };
205154daed1Smrg    key <AD02> {  [      Arabic_waw,   Arabic_hamzaonwaw  ]       };
206154daed1Smrg    key <AD03> {  [      VoidSymbol,   Arabic_ain         ]       };
207154daed1Smrg    key <AD04> {  [      Arabic_ra,    VoidSymbol         ]       };
208154daed1Smrg    key <AD05> {  [      Arabic_teh,   Arabic_tah         ]       };
209154daed1Smrg    key <AD06> {  [      Arabic_yeh,   Arabic_alefmaksura ]       };
210154daed1Smrg    key <AD07> {  [      Arabic_damma, VoidSymbol         ]       };
211154daed1Smrg    key <AD08> {  [      Arabic_kasra, Arabic_hamzaunderalef ]    };
212154daed1Smrg    key <AD09> {  [      Arabic_sukun, Arabic_hamzaonalef ]       };
213154daed1Smrg    key <AD10> {  [      Arabic_tehmarbuta, VoidSymbol    ]       };
214154daed1Smrg    // ARABIC LETTER ALEF WASLA
215154daed1Smrg    key <AD11> {  [      VoidSymbol,   0x1000671          ]       };
216154daed1Smrg    key <AD12> {  [      VoidSymbol,   Arabic_hamzaonyeh  ]       };
217154daed1Smrg
218154daed1Smrg    key <AC01> {  [    Arabic_fatha,   Arabic_alef        ]       };
219154daed1Smrg    key <AC02> {  [    Arabic_seen,    Arabic_sad         ]       };
220154daed1Smrg    key <AC03> {  [    Arabic_dal,     Arabic_dad         ]       };
221154daed1Smrg    key <AC04> {  [    Arabic_feh,     Arabic_fathatan    ]       };
222154daed1Smrg    key <AC05> {  [    Arabic_ghain,   VoidSymbol         ]       };
223154daed1Smrg    key <AC06> {  [    Arabic_ha,      Arabic_hah         ]       };
224154daed1Smrg    key <AC07> {  [    Arabic_jeem,    VoidSymbol         ]       };
225154daed1Smrg    key <AC08> {  [    Arabic_kaf,     Arabic_kasratan    ]       };
226154daed1Smrg    key <AC09> {  [    Arabic_lam,     VoidSymbol         ]       };
227154daed1Smrg    key <AC10> {  [    Arabic_semicolon, VoidSymbol       ]       };
228154daed1Smrg    key <AC11> {  [    Arabic_hamza,   VoidSymbol         ]       };
229154daed1Smrg
230797b363dSmrg    key <BKSL> {  [    VoidSymbol,     Arabic_maddaonalef ]       };
231154daed1Smrg
232154daed1Smrg    key <AB01> {  [    Arabic_zain,    Arabic_zah         ]       };
233154daed1Smrg    key <AB02> {  [    Arabic_khah,    VoidSymbol         ]       };
234154daed1Smrg    key <AB03> {  [    VoidSymbol,     VoidSymbol         ]       };
235154daed1Smrg    key <AB04> {  [    Arabic_theh,    VoidSymbol         ]       };
236154daed1Smrg    key <AB05> {  [    Arabic_beh,     VoidSymbol         ]       };
237154daed1Smrg    key <AB06> {  [    Arabic_noon,    Arabic_dammatan    ]       };
238154daed1Smrg    key <AB07> {  [    Arabic_meem,    VoidSymbol         ]       };
239154daed1Smrg    key <AB08> {  [    Arabic_comma,   Arabic_hamzaunderalef ]    };
240154daed1Smrg    // ARABIC FULL STOP (Urdu)
241154daed1Smrg    key <AB09> {  [    0x10006d4,      Arabic_hamzaonalef ]       };
242154daed1Smrg    key <AB10> {  [    VoidSymbol,     Arabic_question_mark ]     };
243154daed1Smrg};
244154daed1Smrg
245154daed1Smrgpartial alphanumeric_keys
246154daed1Smrgxkb_symbols "olpc" {
2472ab00627Smrg    name[Group1]= "Arabic (OLPC)";
248154daed1Smrg
249154daed1Smrg    include "ara(basic)"
250154daed1Smrg
2512ab00627Smrg    // This OLPC layout comprises the following changes in comparison to the default Arabic one:
2522ab00627Smrg    //  ‣ Arabic and European digits are swapped (which entails swapping of the percent and permille signs).
2532ab00627Smrg    //  ‣ Lām-ʾalif is eliminated. People type as they pronounce, and lam-alef is just a visual formatting of the
2542ab00627Smrg    //    sequence and thus arguably not used on the keyboard. This frees four slots which are used for the following three changes.
2552ab00627Smrg    //  ‣ The <TLDE> characters move:
2562ab00627Smrg    //     • Thal from <TLDE> to <AB05>
2572ab00627Smrg    //     • Shadda from <TLDE> to <AD05>
2582ab00627Smrg    //  ‣ £ and € obtain the <AE06> and <AE07> keys, the ^ and & signs previously occupying them take seat at <AB05> and <AC05>.
2592ab00627Smrg    //  ‣ The <TLDE> key gets grave ` and asciitilde ~ as on English keyboards.
2602ab00627Smrg    //  ‣ In sum the grave and asciitilde are present twice, as their erstwhile places are not removed.
2612ab00627Smrg    //  ‣ The braces }{ take the place of the less-than and greater-than >< signs,
2622ab00627Smrg    //    but these the place of kasra and kasratan which establish themselves in the braces’ former steads.
2632ab00627Smrg    //  ‣ The … character on <BKSL> is replaced by |, because OLPC laptops have no <LSGT> key installed where the bar is else placed.
2642ab00627Smrg    
2652ab00627Smrg    key <TLDE> {  [           grave,      asciitilde, percent, U2030     ] };
2662ab00627Smrg
2672ab00627Smrg    key <AE01> {  [       Arabic_1,          exclam,  1                  ] };
2682ab00627Smrg    key <AE02> {  [       Arabic_2,              at,  2                  ] };
2692ab00627Smrg    key <AE03> {  [       Arabic_3,      numbersign,  3                  ] };
2702ab00627Smrg    key <AE04> {  [       Arabic_4,          dollar,  4                  ] };
2712ab00627Smrg    key <AE05> {  [       Arabic_5,  Arabic_percent,  5,       U0609     ] };
2722ab00627Smrg    key <AE06> {  [       Arabic_6,        sterling,  6                  ] };
2732ab00627Smrg    key <AE07> {  [       Arabic_7,        EuroSign,  7                  ] };
2742ab00627Smrg    key <AE08> {  [       Arabic_8,        asterisk,  8                  ] };
2752ab00627Smrg    key <AE09> {  [       Arabic_9,      parenright,  9                  ] };
2762ab00627Smrg    key <AE10> {  [       Arabic_0,       parenleft,  0                  ] };
277154daed1Smrg
278154daed1Smrg    key <AD05> {  [      Arabic_feh,   Arabic_shadda  ] };
279154daed1Smrg
280154daed1Smrg    key <AD11> {  [     Arabic_jeem,      braceright  ] };
281154daed1Smrg    key <AD12> {  [      Arabic_dal,       braceleft  ] };
282154daed1Smrg
283154daed1Smrg    key <AC01> {  [    Arabic_sheen,         greater  ] };
284154daed1Smrg    key <AC02> {  [     Arabic_seen,            less  ] };
285154daed1Smrg    key <AC05> {  [      Arabic_lam,       ampersand  ] };
286154daed1Smrg    key <BKSL> {  [       backslash,             bar  ] };
287154daed1Smrg
288154daed1Smrg    key <AB03> {  [ Arabic_hamzaonwaw,   Arabic_kasra ] };
289797b363dSmrg    key <AB04> {  [       Arabic_ra,  Arabic_kasratan ] };
290154daed1Smrg    key <AB05> {  [     Arabic_thal,      asciicircum ] };
291154daed1Smrg
292154daed1Smrg    include "group(olpc)"
293154daed1Smrg};
2940412cdedSmrg
29521fe479eSmrgpartial alphanumeric_keys
29621fe479eSmrgxkb_symbols "mac" {
29721fe479eSmrg    
29821fe479eSmrg    //This is a layout that is compatible with macbooks
29921fe479eSmrg
30021fe479eSmrg    include "ara(digits)"
30121fe479eSmrg    name[Group1]= "Arabic (Macintosh)";
30221fe479eSmrg    
30321fe479eSmrg    key <AE11> {  [            minus,      underscore      ]     };
30421fe479eSmrg    key <AE12> {  [            equal,            plus      ]     };
30521fe479eSmrg    
30666c7633cSsnj    key <TLDE> {  [   Arabic_tatweel,     VoidSymbol       ]	 };
30721fe479eSmrg    key <AD03> {  [      Arabic_theh,     Arabic_kasra     ]     };
30821fe479eSmrg    key <AD04> {  [       Arabic_qaf,     Arabic_kasratan  ]     };
30921fe479eSmrg    key <AD05> {  [       Arabic_feh,     Arabic_damma     ]     };
31021fe479eSmrg    key <AD06> {  [     Arabic_ghain,     Arabic_dammatan  ]     };
31121fe479eSmrg    key <AD07> {  [       Arabic_ain,     Arabic_sukun     ]     };
31221fe479eSmrg    key <AD08> {  [        Arabic_ha,     Arabic_shadda    ]     };
31321fe479eSmrg    key <AD09> {  [      Arabic_khah,     bracketright     ]     };
31421fe479eSmrg    key <AD10> {  [       Arabic_hah,     bracketleft      ]     };
31521fe479eSmrg    key <AD11> {  [      Arabic_jeem,     braceright        ]     };
31621fe479eSmrg    key <AD12> {  [Arabic_tehmarbuta,     braceleft       ]     };
31721fe479eSmrg    
31821fe479eSmrg    key <AC01> {  [    Arabic_sheen,     guillemotright     ]     };
31921fe479eSmrg    key <AC02> {  [     Arabic_seen,     guillemotleft    ]     };
32021fe479eSmrg    key <AC03> {  [      Arabic_yeh,     Arabic_alefmaksura]     };
32166c7633cSsnj    key <AC04> {  [      Arabic_beh,     0x1000670         ]     };
32221fe479eSmrg    key <AC05> {  [      Arabic_lam,     VoidSymbol        ]     };
32321fe479eSmrg    key <AC06> {  [     Arabic_alef,   Arabic_maddaonalef  ]     };
32466c7633cSsnj    key <AC07> {  [      Arabic_teh,     0x1000671         ]     };
32521fe479eSmrg    key <AC08> {  [     Arabic_noon,     VoidSymbol        ]     };
32621fe479eSmrg    key <AC09> {  [     Arabic_meem,     VoidSymbol        ]     };
32721fe479eSmrg    key <AC10> {  [      Arabic_kaf,            colon      ]     };
32821fe479eSmrg    key <AC11> {  [      Arabic_semicolon,      quotedbl   ]     };
32921fe479eSmrg    
33021fe479eSmrg    key <BKSL> {  [       backslash,             bar       ]     };
33121fe479eSmrg    
33221fe479eSmrg    key <LSGT> {  [   Arabic_tatweel,     VoidSymbol               ]     };
33321fe479eSmrg    key <AB01> {  [       Arabic_zah,     VoidSymbol               ]     };
33421fe479eSmrg    key <AB02> {  [       Arabic_tah,     VoidSymbol               ]     };
33521fe479eSmrg    key <AB03> {  [      Arabic_thal,     Arabic_hamzaonyeh        ]     };
33621fe479eSmrg    key <AB04> {  [       Arabic_dal,     Arabic_hamza             ]     };
33721fe479eSmrg    key <AB05> {  [      Arabic_zain,     Arabic_hamzaonalef       ]     };
33821fe479eSmrg    key <AB06> {  [        Arabic_ra,     Arabic_hamzaunderalef    ]     };
33921fe479eSmrg    key <AB07> {  [       Arabic_waw,     Arabic_hamzaonwaw        ]     };
34021fe479eSmrg    key <AB08> {  [     Arabic_comma,     greater                     ]     };
34121fe479eSmrg    key <AB09> {  [           period,     less                  ]     };
34221fe479eSmrg    key <AB10> {  [            slash,     Arabic_question_mark     ]     };
34321fe479eSmrg    
34421fe479eSmrg};
34521fe479eSmrg
3460412cdedSmrg// EXTRAS:
3470412cdedSmrg
3480412cdedSmrgpartial alphanumeric_keys
3490412cdedSmrg	xkb_symbols "sun_type6" {
3500412cdedSmrg	include "sun_vndr/ara(sun_type6)"
3510412cdedSmrg};
3522ab00627Smrg
3532ab00627Smrgpartial alphanumeric_keys
3542ab00627Smrgxkb_symbols "basic_ext" {
3552ab00627Smrg
3562ab00627Smrg    name[Group1]= "Arabic (with extensions for Arabic-written other languages and European digits preferred)";
3572ab00627Smrg
3582ab00627Smrg    key.type[Group1]="FOUR_LEVEL";
3592ab00627Smrg    
3602ab00627Smrg    key <TLDE> {  [     Arabic_thal,        Arabic_shadda,            Arabic_percent,         Arabic_ddal ]};  // ‎ذ‎ ‎◌ّ‎      ‎٪‎ ‎ڈ‎
3612ab00627Smrg    key <AE01> {  [               1,               exclam,                  Arabic_1,             Farsi_1 ]};  // 1 !      ١ ۱
3622ab00627Smrg    key <AE02> {  [               2,                   at,                  Arabic_2,             Farsi_2 ]};  // 2 @      ٢ ۲
3632ab00627Smrg    key <AE03> {  [               3,           numbersign,                  Arabic_3,             Farsi_3 ]};  // 3 #      ٣ ۳
3642ab00627Smrg    key <AE04> {  [               4,               dollar,                  Arabic_4,             Farsi_4 ]};  // 4 $      ٤ ۴
3652ab00627Smrg    key <AE05> {  [               5,              percent,                  Arabic_5,             Farsi_5 ]};  // 5 %      ٥ ۵
3662ab00627Smrg    key <AE06> {  [               6,            Farsi_yeh,                  Arabic_6,             Farsi_6 ]};  // 6 ‎ی‎      ٦ ۶
3672ab00627Smrg    key <AE07> {  [               7,            ampersand,                  Arabic_7,             Farsi_7 ]};  // 7 &      ٧ ۷
3682ab00627Smrg    key <AE08> {  [               8,             asterisk,                  Arabic_8,             Farsi_8 ]};  // 8 *      ٨ ۸
3692ab00627Smrg    key <AE09> {  [               9,           parenright,                  Arabic_9,             Farsi_9 ]};  // 9 )      ٩ ۹
3702ab00627Smrg    key <AE10> {  [               0,            parenleft,                  Arabic_0,             Farsi_0 ]};  // 0 (      ٠ ۰
3712ab00627Smrg    key <AE11> {  [           minus,           underscore,                    endash,               U2011 ]};  // - _     – Non-Breaking-Hyphen
3722ab00627Smrg    key <AE12> {  [           equal,                 plus,                  notequal,               U2248 ]};  // = +     ≠ ≈ 
3732ab00627Smrg
3742ab00627Smrg    key <AD01> {  [      Arabic_dad,         Arabic_fatha,                     U0689,               U2066 ]};  // ‎ض‎ ‎◌َ     ډ LEFT‑TO‑RIGHT ISOLATE
3752ab00627Smrg    key <AD02> {  [      Arabic_sad,      Arabic_fathatan,                     U06D5,               U2067 ]};  // ‎ص‎ ‎◌ً     ە RIGHT‑TO‑LEFT ISOLATE
3762ab00627Smrg    key <AD03> {  [     Arabic_theh,         Arabic_damma,                     U067F,               U2068 ]};  // ‎ث‎ ‎◌ُ     ٿ FIRST STRONG ISOLATE
3772ab00627Smrg    key <AD04> {  [      Arabic_qaf,      Arabic_dammatan,                     U06A6,               U2069 ]};  // ‎ق‎ ‎◌ٌ     ڦ POP DIRECTIONAL ISOLATE
3782ab00627Smrg    key <AD05> {  [      Arabic_feh,                UFEF9,                Arabic_veh,               U068D ]};  // ‎ف‎ ‎ﻹ     ‎ڤ ‎ڍ‎
3792ab00627Smrg    key <AD06> {  [    Arabic_ghain,Arabic_hamzaunderalef,                     U0685,               U202A ]};  // ‎غ‎ ‎إ‎     ‎څ‎ LEFT-TO-RIGHT-EMBEDDING
3802ab00627Smrg    key <AD07> {  [      Arabic_ain,          Arabic_rreh,           Arabic_heh_goal,               U202B ]};  // ‎ع‎ ‎ڑ‎     ‎ہ‎ RIGHT-TO-LEFT EMBEDDING
3812ab00627Smrg    key <AD08> {  [       Arabic_ha,             division,    Arabic_heh_doachashmee,               U202C ]};  // ‎ه‎ ÷     ‎ھ‎ POP DIRECTIONAL FORMATTING
3822ab00627Smrg    key <AD09> {  [     Arabic_khah,             multiply,                     U0681,               U0687 ]};  // ‎خ‎ ×     ‎ځ‎ ‎ڇ‎
3832ab00627Smrg    key <AD10> {  [      Arabic_hah,     Arabic_semicolon,                     U0683,               U200E ]};  // ‎ح‎ ؛     ‎ڃ‎ LEFT-TO-RIGHT MARK
3842ab00627Smrg    key <AD11> {  [     Arabic_jeem,                 less,              Arabic_tcheh,               U200F ]};  // ‎ج‎ <     ‎چ‎ RIGHT-TO-LEFT MARK
3852ab00627Smrg    key <AD12> {  [      Arabic_dal,              greater,                     U0684,               U061C ]};  // ‎د‎ >     ‎ڄ‎ ARABIC LETTER MARK
3862ab00627Smrg
3872ab00627Smrg    key <AC01> {  [    Arabic_sheen,         Arabic_kasra,                     U06C6,               U06C9 ]};  // ‎ش‎ ‎◌ِ‎     ‎ۆ‎ ‎ۉ‎
3882ab00627Smrg    key <AC02> {  [     Arabic_seen,      Arabic_kasratan,                     U067C,               U0680 ]};  // ‎س‎ ‎◌ٍ‎     ‎ټ‎ ‎ڀ‎
3892ab00627Smrg    key <AC03> {  [      Arabic_yeh,         bracketright,                     U06D0,               U06CD ]};  // ‎ي‎ ]     ‎ې‎ ‎ۍ‎
3902ab00627Smrg    key <AC04> {  [      Arabic_beh,          bracketleft,                Arabic_peh,               U067B ]};  // ‎ب‎ [     ‎پ‎ ‎ٻ‎
3912ab00627Smrg    key <AC05> {  [      Arabic_lam,               U0FEF7,                     U076A,               U0658 ]};  // ‎ل‎ ‎ﻷ‎     ‎ݪ‎  ٘‎◌‎
3922ab00627Smrg    key <AC06> {  [     Arabic_alef,   Arabic_hamzaonalef,                     U0671,  Arabic_noon_ghunna ]};  // ‎ا‎ ‎أ     ‎ٱ‎ ‎ں‎
3932ab00627Smrg    key <AC07> {  [      Arabic_teh,       Arabic_tatweel,                     U067D,               U067A ]};  // ‎ت‎ ‎ـ‎     ‎ٽ‎ ٺ‎ 
3942ab00627Smrg    key <AC08> {  [     Arabic_noon,         Arabic_comma,                     U066B,               U06BB ]};  // ‎ن‎ ‎،‎     ‎٫‎ ڻ‎
3952ab00627Smrg    key <AC09> {  [     Arabic_meem,                slash,                     U06B3,               U06B1 ]};  // ‎م‎ /     ‎ڳ‎ ‎ڱ‎
3962ab00627Smrg    key <AC10> {  [      Arabic_kaf,                colon,                Arabic_gaf,        Arabic_keheh ]};  // ‎ك‎ :     ‎گ‎ ‎ک‎
3972ab00627Smrg    key <AC11> {  [      Arabic_tah,             quotedbl,                     U27E9,               U200D ]};  // ‎ط‎ "     ⟩ ZWJ
3982ab00627Smrg    key <BKSL> {  [       backslash,             ellipsis,                     U27E8,               U202F ]};  // \ …     ⟨ NNBSP
3992ab00627Smrg
4002ab00627Smrg    key <LSGT> {  [             bar,            brokenbar,                     U06C0,               U0620 ]};  // | ¦     ‎ۀ‎ ‎ؠ‎
4012ab00627Smrg    key <AB01> { [Arabic_hamzaonyeh,           asciitilde,            guillemotright,               U203A ]};  // ‎ئ‎ ~     » ›
4022ab00627Smrg    key <AB02> {  [    Arabic_hamza,         Arabic_sukun,             guillemotleft,               U2039 ]};  // ‎ء‎ ◌ْ     « ‹
4032ab00627Smrg    key <AB03> { [Arabic_hamzaonwaw,           braceright,                     U06C7,               U0677 ]};  // ‎ؤ }     ‎ۇ‎ ‎ٷ‎
4042ab00627Smrg    key <AB04> {  [       Arabic_ra,            braceleft,                     U0693,               U0699 ]};  // ‎ر‎ {     ‎ړ ‎ڙ‎
4052ab00627Smrg    key <AB05> {  [           UFEFB,                UFEF5,                     U06AB,               U06AD ]};  // ‎ﻻ‎ ‎ﻵ‎     ‎ګ‎ ‎ڭ‎
4062ab00627Smrg    key <AB06> {[Arabic_alefmaksura,   Arabic_maddaonalef,   Arabic_superscript_alef,    Arabic_yeh_baree ]};  // ‎ى‎ ‎آ‎     ‎◌ٰ‎ ‎ے‎
4072ab00627Smrg    key <AB07> { [Arabic_tehmarbuta,           apostrophe,           Arabic_fullstop,               U06AA ]};  // ‎ة‎ '     ۔ ‎ڪ‎
4082ab00627Smrg    key <AB08> {  [      Arabic_waw,                comma,                     U066C,               U06CB ]};  // ‎و‎ ,     ‎٬‎ ‎ۋ‎
4092ab00627Smrg    key <AB09> {  [     Arabic_zain,               period,                Arabic_jeh,               U0696 ]};  // ‎ز‎ .     ‎ژ‎ ‎ږ‎
4102ab00627Smrg    key <AB10> {  [      Arabic_zah, Arabic_question_mark,               Arabic_tteh,               U200C ]};  // ‎ظ‎ ‎؟‎     ‎ٹ‎ ZWNJ
4112ab00627Smrg    
4122ab00627Smrg    include       "level3(ralt_switch)"
4132ab00627Smrg};
4142ab00627Smrg
4152ab00627Smrg// Replaces the Western numeral signs with Arabic-script digits on the keypad, pushing the Western digits to the third level accessible by the right alt key.
4162ab00627Smrg// As this set of definitions is unlisted, it is not usable without parallel mapping on the numeric row in the ara(basic_ext_digits) layout which includes it.
4172ab00627Smrgpartial hidden keypad_keys
4182ab00627Smrgxkb_symbols "basic_ext_digits_KP" {
4192ab00627Smrg    
4202ab00627Smrg    key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD";
4212ab00627Smrg
4222ab00627Smrg    key <KP7>  { [ KP_Home,   Arabic_7, 7, Farsi_7 ] };
4232ab00627Smrg    key <KP8>  { [ KP_Up,     Arabic_8, 8, Farsi_8 ] };
4242ab00627Smrg    key <KP9>  { [ KP_Prior,  Arabic_9, 9, Farsi_9 ] };
4252ab00627Smrg
4262ab00627Smrg    key <KP4>  { [ KP_Left,   Arabic_4, 4, Farsi_4 ] };
4272ab00627Smrg    key <KP5>  { [ KP_Begin,  Arabic_5, 5, Farsi_5 ] };
4282ab00627Smrg    key <KP6>  { [ KP_Right,  Arabic_6, 6, Farsi_6 ] };
4292ab00627Smrg
4302ab00627Smrg    key <KP1>  { [ KP_End,    Arabic_1, 1, Farsi_1 ] };
4312ab00627Smrg    key <KP2>  { [ KP_Down,   Arabic_2, 2, Farsi_2 ] };
4322ab00627Smrg    key <KP3>  { [ KP_Next,   Arabic_3, 3, Farsi_3 ] };
4332ab00627Smrg
4342ab00627Smrg    key <KP0>  { [ KP_Insert, Arabic_0, 0, Farsi_0 ] };
4352ab00627Smrg    
4362ab00627Smrg    include       "kpdl(momayyezoss)"
4372ab00627Smrg};
4382ab00627Smrg
4392ab00627Smrg// Replaces the Western numeral signs with Arabic-script digits on the numeric row, pushing the Western digits to the third level accessible by the right alt key.
4402ab00627Smrg// The alternative numeral glyphs used in some languages that employ the Arabic script are featured in the fourth layer.
4412ab00627Smrgpartial alphanumeric_keys
4422ab00627Smrgxkb_symbols "basic_ext_digits" {
4432ab00627Smrg
4442ab00627Smrg    include       "ara(basic_ext)"
4452ab00627Smrg    
4462ab00627Smrg    name[Group1]= "Arabic (with extensions for Arabic-written other languages and Arabic digits preferred)";
4472ab00627Smrg
4482ab00627Smrg    key <TLDE> { [Arabic_thal,Arabic_shadda, percent, Arabic_ddal ]};
4492ab00627Smrg    key <AE01> { [ Arabic_1,         exclam, 1, Farsi_1 ] };
4502ab00627Smrg    key <AE02> { [ Arabic_2,             at, 2, Farsi_2 ] };
4512ab00627Smrg    key <AE03> { [ Arabic_3,     numbersign, 3, Farsi_3 ] };
4522ab00627Smrg    key <AE04> { [ Arabic_4,         dollar, 4, Farsi_4 ] };
4532ab00627Smrg    key <AE05> { [ Arabic_5, Arabic_percent, 5, Farsi_5 ] };
4542ab00627Smrg    key <AE06> { [ Arabic_6,      Farsi_yeh, 6, Farsi_6 ] };
4552ab00627Smrg    key <AE07> { [ Arabic_7,      ampersand, 7, Farsi_7 ] };
4562ab00627Smrg    key <AE08> { [ Arabic_8,       asterisk, 8, Farsi_8 ] };
4572ab00627Smrg    key <AE09> { [ Arabic_9,     parenright, 9, Farsi_9 ] };
4582ab00627Smrg    key <AE10> { [ Arabic_0,      parenleft, 0, Farsi_0 ] };
4592ab00627Smrg
4602ab00627Smrg    include       "ara(basic_ext_digits_KP)"
4612ab00627Smrg};
4622ab00627Smrg
4632ab00627Smrg// In this layout the Ugaritic characters get the places of the Arabic characters with the matching sound values.
4642ab00627Smrgpartial alphanumeric_keys
4652ab00627Smrgxkb_symbols "uga" {
4662ab00627Smrg
4672ab00627Smrg    name[Group1]= "Ugaritic instead of Arabic";
4682ab00627Smrg
4692ab00627Smrg    key.type[Group1]="TWO_LEVEL";
4702ab00627Smrg
4712ab00627Smrg    key <TLDE> { [   U1038F,      NoSymbol       ]};  // ��
4722ab00627Smrg    key <AE01> { [        1,      exclam         ]};  // 1 !
4732ab00627Smrg    key <AE02> { [        2,      at             ]};  // 2 @
4742ab00627Smrg    key <AE03> { [        3,      numbersign     ]};  // 3 #
4752ab00627Smrg    key <AE04> { [        4,      dollar         ]};  // 4 $
4762ab00627Smrg    key <AE05> { [        5,      percent        ]};  // 5 %
4772ab00627Smrg    key <AE06> { [        6,      asciicircum    ]};  // 6 ^
4782ab00627Smrg    key <AE07> { [        7,      ampersand      ]};  // 7 &
4792ab00627Smrg    key <AE08> { [        8,      asterisk       ]};  // 8 *
4802ab00627Smrg    key <AE09> { [        9,      parenleft      ]};  // 9 (
4812ab00627Smrg    key <AE10> { [        0,      parenright     ]};  // 0 )
4822ab00627Smrg    key <AE11> { [    minus,      underscore     ]};  // - _
4832ab00627Smrg    key <AE12> { [    equal,      plus           ]};  // = +
4842ab00627Smrg
4852ab00627Smrg    key <AD01> { [   U1039D,      NoSymbol       ]};  // ��
4862ab00627Smrg    key <AD02> { [   U10395,      NoSymbol       ]};  // ��
4872ab00627Smrg    key <AD03> { [   U10398,      NoSymbol       ]};  // ��
4882ab00627Smrg    key <AD04> { [   U10396,      NoSymbol       ]};  // ��
4892ab00627Smrg    key <AD05> { [   U10394,      NoSymbol       ]};  // ��
4902ab00627Smrg    key <AD06> { [   U10399,      NoSymbol       ]};  // ��
4912ab00627Smrg    key <AD07> { [   U10393,      grave          ]};  // �� `
4922ab00627Smrg    key <AD08> { [   U10385,      division       ]};  // �� ÷
4932ab00627Smrg    key <AD09> { [   U10383,      multiply       ]};  // �� ×
4942ab00627Smrg    key <AD10> { [   U10388,      semicolon      ]};  // �� ;
4952ab00627Smrg    key <AD11> { [   U10382,      greater        ]};  // �� >
4962ab00627Smrg    key <AD12> { [   U10384,      less           ]};  // �� <
4972ab00627Smrg
4982ab00627Smrg    key <AC01> { [   U1038C,      U27E8          ]};  // �� ⟨
4992ab00627Smrg    key <AC02> { [   U10392,      U27E9          ]};  // �� ⟩
5002ab00627Smrg    key <AC03> { [   U1038A,      bracketleft    ]};  // �� [
5012ab00627Smrg    key <AC04> { [   U10381,      bracketright   ]};  // �� ]
5022ab00627Smrg    key <AC05> { [   U1038D,      NoSymbol       ]};  // ��
5032ab00627Smrg    key <AC06> { [   U10380,      NoSymbol       ]};  // ��
5042ab00627Smrg    key <AC07> { [   U1039A,      NoSymbol       ]};  // ��
5052ab00627Smrg    key <AC08> { [   U10390,      NoSymbol       ]};  // ��
5062ab00627Smrg    key <AC09> { [   U1038E,      slash          ]};  // �� /
5072ab00627Smrg    key <AC10> { [   U1038B,      colon          ]};  // ��:
5082ab00627Smrg    key <AC11> { [   U10389,      quotedbl       ]};  // ��  "
5092ab00627Smrg    key <BKSL> { [backslash,      ellipsis       ]};  // \ …
5102ab00627Smrg
5112ab00627Smrg    key <LSGT> { [      bar,      endash         ]};  // | –
5122ab00627Smrg    key <AB01> { [   U1039B,      guillemotleft  ]};  // �� «
5132ab00627Smrg    key <AB02> { [ NoSymbol,      guillemotright ]};  //   »
5142ab00627Smrg    key <AB03> { [   U1039C,      braceleft      ]};  // �� {
5152ab00627Smrg    key <AB04> { [   U10397,      braceright     ]};  // �� }
5162ab00627Smrg    key <AB05> { [   U1039F,      U2039          ]};  // �� ‹
5172ab00627Smrg    key <AB06> { [ question,      U203A          ]};  // ? ›
5182ab00627Smrg    key <AB07> { [   U002BC,      apostrophe     ]};  // ʼ '
5192ab00627Smrg    key <AB08> { [   U10386,      comma          ]};  // �� ,
5202ab00627Smrg    key <AB09> { [   U10387,      period         ]};  // �� .
5212ab00627Smrg    key <AB10> { [   U10391,      periodcentered ]};  // �� ·
5222ab00627Smrg
5232ab00627Smrg};
524