// $XConsortium: th /main/3 1996/08/31 12:20:18 kaleb $ // $XFree86: xc/programs/xkbcomp/symbols/ar,v 1.1 2001/11/21 22:28:52 dawes Exp $ partial default alphanumeric_keys xkb_symbols "basic" { name[Group2]= "Arabic"; // NOTES: // // there is also combined shadda diacritis in AltGr position of simple // diacritics fatha, fathatan, damma, dammatan, kasra and kasratan // should a third state be added to Group2 ? // key { [ ], [ Arabic_thal, Arabic_shadda ] }; key { [ ], [ 1, exclam ] }; key { [ ], [ 2, at ] }; key { [ ], [ 3, numbersign ] }; key { [ ], [ 4, dollar ] }; key { [ ], [ 5, percent ] }; key { [ ], [ 6, asciicircum ] }; key { [ ], [ 7, ampersand ] }; key { [ ], [ 8, asterisk ] }; key { [ ], [ 9, parenleft ] }; key { [ ], [ 0, parenright ] }; key { [ ], [ minus, underscore ] }; key { [ ], [ equal, plus ] }; key { [ ], [ Arabic_dad, Arabic_fatha ] }; key { [ ], [ Arabic_sad, Arabic_fathatan ] }; key { [ ], [ Arabic_theh, Arabic_damma ] }; key { [ ], [ Arabic_qaf, Arabic_dammatan ] }; key { [ ], [ Arabic_feh, 0x100fef9 ] }; key { [ ], [ Arabic_ghain, Arabic_hamzaunderalef ] }; key { [ ], [ Arabic_ain, grave ] }; key { [ ], [ Arabic_ha, division ] }; key { [ ], [ Arabic_khah, multiply ] }; key { [ ], [ Arabic_hah, Arabic_semicolon ] }; key { [ ], [ Arabic_jeem, braceleft ] }; key { [ ], [ Arabic_dal, braceright ] }; key { [ ], [ Arabic_sheen, backslash ] }; key { [ ], [ Arabic_seen, S ] }; key { [ ], [ Arabic_yeh, bracketleft ] }; key { [ ], [ Arabic_beh, bracketright ] }; key { [ ], [ Arabic_lam, 0x100fef7 ] }; key { [ ], [ Arabic_alef, Arabic_hamzaonalef ] }; key { [ ], [ Arabic_teh, Arabic_tatweel ] }; key { [ ], [ Arabic_noon, Arabic_comma ] }; key { [ ], [ Arabic_meem, slash ] }; key { [ ], [ Arabic_kaf, colon ] }; key { [ ], [ Arabic_tah, quotedbl ] }; key { [ ], [ less, greater ] }; key { [ ], [ bar, brokenbar ] }; key { [ ], [Arabic_hamzaonyeh, asciitilde ] }; key { [ ], [ Arabic_hamza, Arabic_sukun ] }; key { [ ], [Arabic_hamzaonwaw, Arabic_kasra ] }; key { [ ], [ Arabic_ra, Arabic_kasratan ] }; key { [ ], [ 0x100fefb, 0x100fef5 ] }; key { [ ], [Arabic_alefmaksura, Arabic_maddaonalef ] }; key { [ ], [Arabic_tehmarbuta, apostrophe ] }; key { [ ], [ Arabic_waw, comma ] }; key { [ ], [ Arabic_zain, period ] }; key { [ ], [ Arabic_zah, Arabic_question_mark ] }; // End alphanumeric section // Begin modifier mappings modifier_map Shift { Shift_L }; modifier_map Lock { Caps_Lock, ISO_Lock }; modifier_map Control{ Control_L }; modifier_map Mod3 { Mode_switch }; }; partial alphanumeric_keys xkb_symbols "qwerty" { include "ar(basic)" }; partial alphanumeric_keys xkb_symbols "azerty" { include "ar(basic)" // the north african arabic keyboard differs from the middle east one // by the numeric row; it follows French keyboard style // // PROBLEM: some chars are inaccessible: ! @ # $ % ^ * // should they go elsewhere? replace " ' that are now in double ? // also, dead_circumflex and dead_diaeresis from French keyboard // as well as ugrave are missing, which questions the utility of the // other accentuated latin letters. Maybe this is useful only with // a French keyboard in Group1 ? Then, shouldn't Group1 be filled ? key { [ ], [ ampersand, 1 ] }; key { [ ], [ eacute, 2 ] }; key { [ ], [ quotedbl, 3 ] }; key { [ ], [ apostrophe, 4 ] }; key { [ ], [ parenleft, 5 ] }; key { [ ], [ minus, 6 ] }; key { [ ], [ egrave, 7 ] }; key { [ ], [ underscore, 8 ] }; key { [ ], [ ccedilla, 9 ] }; key { [ ], [ agrave, 0 ] }; key { [ ], [ parenright, degree ] }; }; partial alphanumeric_keys xkb_symbols "digits" { include "ar(basic)" // use arabic script digits key { [ ], [ 0x1000661, exclam ] }; key { [ ], [ 0x1000662, at ] }; key { [ ], [ 0x1000663, numbersign ] }; key { [ ], [ 0x1000664, dollar ] }; key { [ ], [ 0x1000665, percent ] }; key { [ ], [ 0x1000666, asciicircum ] }; key { [ ], [ 0x1000667, ampersand ] }; key { [ ], [ 0x1000668, asterisk ] }; key { [ ], [ 0x1000669, parenleft ] }; key { [ ], [ 0x1000660, parenright ] }; }; partial alphanumeric_keys xkb_symbols "qwerty_digits" { include "ar(digits)" }; partial alphanumeric_keys xkb_symbols "azerty_digits" { include "ar(azerty)" key { [ ], [ ampersand, 0x1000661 ] }; key { [ ], [ eacute, 0x1000662 ] }; key { [ ], [ quotedbl, 0x1000663 ] }; key { [ ], [ apostrophe, 0x1000664 ] }; key { [ ], [ parenleft, 0x1000665 ] }; key { [ ], [ minus, 0x1000666 ] }; key { [ ], [ egrave, 0x1000667 ] }; key { [ ], [ underscore, 0x1000668 ] }; key { [ ], [ ccedilla, 0x1000669 ] }; key { [ ], [ agrave, 0x1000660 ] }; };