Home | History | Annotate | Line # | Download | only in symbols
ara revision 1.1
      1  1.1  mrg // $XKeyboardConfig: xkeyboard-config/symbols/ara,v 1.11 2008-01-24 23:21:06 svu Exp $
      2  1.1  mrg 
      3  1.1  mrg // based on a keyboard map from an 'xkb/symbols/ar' file
      4  1.1  mrg 
      5  1.1  mrg partial default alphanumeric_keys 
      6  1.1  mrg xkb_symbols "basic" {
      7  1.1  mrg     name[Group1]= "Arabic";
      8  1.1  mrg 
      9  1.1  mrg // NOTES:
     10  1.1  mrg //
     11  1.1  mrg // there is also combined shadda diacritis in AltGr position of simple
     12  1.1  mrg // diacritics fatha, fathatan, damma, dammatan, kasra and kasratan
     13  1.1  mrg // should a third state be added to Group2 ?
     14  1.1  mrg //
     15  1.1  mrg 
     16  1.1  mrg     key <TLDE> {  [     Arabic_thal,      Arabic_shadda   ]	};
     17  1.1  mrg     key <AE01> {  [               1,          exclam      ]     };
     18  1.1  mrg     key <AE02> {  [               2,              at      ]     };
     19  1.1  mrg     key <AE03> {  [               3,      numbersign      ]     };
     20  1.1  mrg     key <AE04> {  [               4,          dollar      ]     };
     21  1.1  mrg     key <AE05> {  [               5,         percent      ]     };
     22  1.1  mrg     key <AE06> {  [               6,     asciicircum      ]     };
     23  1.1  mrg     key <AE07> {  [               7,       ampersand      ]     };
     24  1.1  mrg     key <AE08> {  [               8,        asterisk      ]     };
     25  1.1  mrg     key <AE09> {  [               9,      parenright      ]     };
     26  1.1  mrg     key <AE10> {  [               0,       parenleft      ]     };
     27  1.1  mrg     key <AE11> {  [           minus,      underscore      ]     };
     28  1.1  mrg     key <AE12> {  [           equal,            plus      ]     };
     29  1.1  mrg 						
     30  1.1  mrg     key <AD01> {  [      Arabic_dad,     Arabic_fatha     ]     };
     31  1.1  mrg     key <AD02> {  [      Arabic_sad,     Arabic_fathatan  ]     };
     32  1.1  mrg     key <AD03> {  [     Arabic_theh,     Arabic_damma     ]     };
     33  1.1  mrg     key <AD04> {  [      Arabic_qaf,     Arabic_dammatan  ]     };
     34  1.1  mrg     key <AD05> {  [      Arabic_feh,       VoidSymbol     ]     };
     35  1.1  mrg     key <AD06> {  [   Arabic_ghain, Arabic_hamzaunderalef ]     };
     36  1.1  mrg     key <AD07> {  [      Arabic_ain,         grave        ]     };
     37  1.1  mrg     key <AD08> {  [       Arabic_ha,        division      ]     };
     38  1.1  mrg     key <AD09> {  [     Arabic_khah,       multiply       ]     };
     39  1.1  mrg     key <AD10> {  [      Arabic_hah,    Arabic_semicolon  ]     };
     40  1.1  mrg     key <AD11> {  [     Arabic_jeem,        less          ]     };
     41  1.1  mrg     key <AD12> {  [      Arabic_dal,        greater       ]     };
     42  1.1  mrg 
     43  1.1  mrg     key <AC01> {  [    Arabic_sheen,   Arabic_kasra       ]     };
     44  1.1  mrg     key <AC02> {  [     Arabic_seen,   Arabic_kasratan    ]     };
     45  1.1  mrg     key <AC03> {  [      Arabic_yeh,       bracketright   ]     };
     46  1.1  mrg     key <AC04> {  [      Arabic_beh,       bracketleft    ]     };
     47  1.1  mrg     key <AC05> {  [      Arabic_lam,       VoidSymbol     ]     };
     48  1.1  mrg     key <AC06> {  [     Arabic_alef,   Arabic_hamzaonalef ]     };
     49  1.1  mrg     key <AC07> {  [      Arabic_teh,      Arabic_tatweel  ]     };
     50  1.1  mrg     key <AC08> {  [     Arabic_noon,      Arabic_comma    ]     };
     51  1.1  mrg     key <AC09> {  [     Arabic_meem,         slash        ]     };
     52  1.1  mrg     key <AC10> {  [      Arabic_kaf,           colon      ]     };
     53  1.1  mrg     key <AC11> {  [      Arabic_tah,        quotedbl      ]     };
     54  1.1  mrg 
     55  1.1  mrg     key <LSGT> {  [             bar,      brokenbar	  ]     };
     56  1.1  mrg     key <AB01> {  [Arabic_hamzaonyeh,    asciitilde       ]     };
     57  1.1  mrg     key <AB02> {  [    Arabic_hamza,      Arabic_sukun    ]     };
     58  1.1  mrg     key <AB03> {  [Arabic_hamzaonwaw,      braceright     ]     };
     59  1.1  mrg     key <AB04> {  [       Arabic_ra,       braceleft      ]     };
     60  1.1  mrg     key <AB05> {  [       VoidSymbol,      VoidSymbol     ]     };
     61  1.1  mrg     key <AB06> {  [Arabic_alefmaksura, Arabic_maddaonalef ]     };
     62  1.1  mrg     key <AB07> {  [Arabic_tehmarbuta,    apostrophe       ]     };
     63  1.1  mrg     key <AB08> {  [      Arabic_waw,         comma        ]     };
     64  1.1  mrg     key <AB09> {  [     Arabic_zain,         period       ]     };
     65  1.1  mrg     key <AB10> {  [      Arabic_zah, Arabic_question_mark ]     };
     66  1.1  mrg 
     67  1.1  mrg     // End alphanumeric section
     68  1.1  mrg };
     69  1.1  mrg 
     70  1.1  mrg partial alphanumeric_keys
     71  1.1  mrg xkb_symbols "qwerty" {
     72  1.1  mrg     include "ara(basic)"
     73  1.1  mrg     name[Group1]= "Arabic - qwerty";
     74  1.1  mrg };
     75  1.1  mrg 
     76  1.1  mrg partial alphanumeric_keys
     77  1.1  mrg xkb_symbols "azerty" {
     78  1.1  mrg     include "ara(basic)"
     79  1.1  mrg     name[Group1]= "Arabic - azerty";
     80  1.1  mrg 
     81  1.1  mrg 	// the north african arabic keyboard differs from the middle east one
     82  1.1  mrg 	// by the numeric row; it follows French keyboard style
     83  1.1  mrg 	//
     84  1.1  mrg 	// PROBLEM: some chars are inaccessible: ! @ # $ % ^ *
     85  1.1  mrg 	// should they go elsewhere? replace " ' that are now in double ?
     86  1.1  mrg 	// also, dead_circumflex and dead_diaeresis from French keyboard
     87  1.1  mrg 	// as well as ugrave are missing, which questions the utility of the
     88  1.1  mrg 	// other accentuated latin letters. Maybe this is useful only with
     89  1.1  mrg 	// a French keyboard in Group1 ? Then, shouldn't Group1 be filled ?
     90  1.1  mrg 
     91  1.1  mrg     key <AE01> {  [       ampersand,               1      ]       };
     92  1.1  mrg     key <AE02> {  [          eacute,               2      ]       };
     93  1.1  mrg     key <AE03> {  [        quotedbl,               3      ]       };
     94  1.1  mrg     key <AE04> {  [      apostrophe,               4      ]       };
     95  1.1  mrg     key <AE05> {  [       parenleft,               5      ]       };
     96  1.1  mrg     key <AE06> {  [           minus,               6      ]       };
     97  1.1  mrg     key <AE07> {  [          egrave,               7      ]       };
     98  1.1  mrg     key <AE08> {  [      underscore,               8      ]       };
     99  1.1  mrg     key <AE09> {  [        ccedilla,               9      ]       };
    100  1.1  mrg     key <AE10> {  [          agrave,               0      ]       };
    101  1.1  mrg     key <AE11> {  [      parenright,          degree      ]       };
    102  1.1  mrg };
    103  1.1  mrg 
    104  1.1  mrg partial alphanumeric_keys
    105  1.1  mrg xkb_symbols "digits" {
    106  1.1  mrg     include "ara(basic)"
    107  1.1  mrg     name[Group1]= "Arabic - digits";
    108  1.1  mrg 
    109  1.1  mrg 	// use arabic script digits
    110  1.1  mrg 
    111  1.1  mrg     key <AE01> {  [       0x1000661,          exclam      ]       };
    112  1.1  mrg     key <AE02> {  [       0x1000662,              at      ]       };
    113  1.1  mrg     key <AE03> {  [       0x1000663,      numbersign      ]       };
    114  1.1  mrg     key <AE04> {  [       0x1000664,          dollar      ]       };
    115  1.1  mrg     key <AE05> {  [       0x1000665,  Arabic_percent      ]       };
    116  1.1  mrg     key <AE06> {  [       0x1000666,     asciicircum      ]       };
    117  1.1  mrg     key <AE07> {  [       0x1000667,       ampersand      ]       };
    118  1.1  mrg     key <AE08> {  [       0x1000668,        asterisk      ]       };
    119  1.1  mrg     key <AE09> {  [       0x1000669,      parenright      ]       };
    120  1.1  mrg     key <AE10> {  [       0x1000660,       parenleft      ]       };
    121  1.1  mrg };
    122  1.1  mrg 
    123  1.1  mrg partial alphanumeric_keys
    124  1.1  mrg xkb_symbols "qwerty_digits" {
    125  1.1  mrg     include "ara(digits)"
    126  1.1  mrg     name[Group1]= "Arabic - qwerty/digits";
    127  1.1  mrg };
    128  1.1  mrg 
    129  1.1  mrg partial alphanumeric_keys
    130  1.1  mrg xkb_symbols "azerty_digits" {
    131  1.1  mrg     include "ara(azerty)"
    132  1.1  mrg     name[Group1]= "Arabic - azerty/digits";
    133  1.1  mrg 	
    134  1.1  mrg     key <AE01> {  [       ampersand,       0x1000661      ]       };
    135  1.1  mrg     key <AE02> {  [          eacute,       0x1000662      ]       };
    136  1.1  mrg     key <AE03> {  [        quotedbl,       0x1000663      ]       };
    137  1.1  mrg     key <AE04> {  [      apostrophe,       0x1000664      ]       };
    138  1.1  mrg     key <AE05> {  [       parenleft,       0x1000665      ]       };
    139  1.1  mrg     key <AE06> {  [           minus,       0x1000666      ]       };
    140  1.1  mrg     key <AE07> {  [          egrave,       0x1000667      ]       };
    141  1.1  mrg     key <AE08> {  [      underscore,       0x1000668      ]       };
    142  1.1  mrg     key <AE09> {  [        ccedilla,       0x1000669      ]       };
    143  1.1  mrg     key <AE10> {  [          agrave,       0x1000660      ]       };
    144  1.1  mrg };
    145  1.1  mrg 
    146  1.1  mrg // Arabic keyboard using Buckwalter transliteration
    147  1.1  mrg // http://www.qamus.org/transliteration.htm
    148  1.1  mrg // Martin Vidner
    149  1.1  mrg 
    150  1.1  mrg // symbol names: see /usr/X11R6/include/X11/keysymdef.h (XFree86-devel.rpm)
    151  1.1  mrg 
    152  1.1  mrg partial alphanumeric_keys 
    153  1.1  mrg xkb_symbols "buckwalter" {
    154  1.1  mrg     name[Group1]= "Arabic - Buckwalter";
    155  1.1  mrg 
    156  1.1  mrg     // ARABIC LETTER SUPERSCRIPT ALEF
    157  1.1  mrg     key <TLDE> {  [       0x1000670,  Arabic_shadda       ]       };
    158  1.1  mrg 
    159  1.1  mrg     // Arabic_0 .. Arabic_9 do not work in Kate,
    160  1.1  mrg     // Unicode never seems to work worse.
    161  1.1  mrg     key <AE01> {  [       0x1000661,   VoidSymbol         ]       };
    162  1.1  mrg     key <AE02> {  [       0x1000662,   VoidSymbol         ]       };
    163  1.1  mrg     key <AE03> {  [       0x1000663,   VoidSymbol         ]       };
    164  1.1  mrg     key <AE04> {  [       0x1000664,   Arabic_sheen       ]       };
    165  1.1  mrg     key <AE05> {  [       0x1000665,   Arabic_percent     ]       };
    166  1.1  mrg     key <AE06> {  [       0x1000666,   VoidSymbol         ]       };
    167  1.1  mrg     key <AE07> {  [       0x1000667,   Arabic_hamzaonwaw  ]       };
    168  1.1  mrg     key <AE08> {  [       0x1000668,   Arabic_thal        ]       };
    169  1.1  mrg     // ORNATE LEFT PARENTHESIS
    170  1.1  mrg     key <AE09> {  [       0x1000669,   0x100fd3e          ]       };
    171  1.1  mrg     // ORNATE RIGHT PARENTHESIS
    172  1.1  mrg     key <AE10> {  [       0x1000660,   0x100fd3f          ]       };
    173  1.1  mrg     key <AE11> {  [       minus,       Arabic_tatweel     ]       };
    174  1.1  mrg     key <AE12> {  [       equal,       plus               ]       };
    175  1.1  mrg 						
    176  1.1  mrg     key <AD01> {  [      Arabic_qaf,   VoidSymbol         ]       };
    177  1.1  mrg     key <AD02> {  [      Arabic_waw,   Arabic_hamzaonwaw  ]       };
    178  1.1  mrg     key <AD03> {  [      VoidSymbol,   Arabic_ain         ]       };
    179  1.1  mrg     key <AD04> {  [      Arabic_ra,    VoidSymbol         ]       };
    180  1.1  mrg     key <AD05> {  [      Arabic_teh,   Arabic_tah         ]       };
    181  1.1  mrg     key <AD06> {  [      Arabic_yeh,   Arabic_alefmaksura ]       };
    182  1.1  mrg     key <AD07> {  [      Arabic_damma, VoidSymbol         ]       };
    183  1.1  mrg     key <AD08> {  [      Arabic_kasra, Arabic_hamzaunderalef ]    };
    184  1.1  mrg     key <AD09> {  [      Arabic_sukun, Arabic_hamzaonalef ]       };
    185  1.1  mrg     key <AD10> {  [      Arabic_tehmarbuta, VoidSymbol    ]       };
    186  1.1  mrg     // ARABIC LETTER ALEF WASLA
    187  1.1  mrg     key <AD11> {  [      VoidSymbol,   0x1000671          ]       };
    188  1.1  mrg     key <AD12> {  [      VoidSymbol,   Arabic_hamzaonyeh  ]       };
    189  1.1  mrg 
    190  1.1  mrg     key <AC01> {  [    Arabic_fatha,   Arabic_alef        ]       };
    191  1.1  mrg     key <AC02> {  [    Arabic_seen,    Arabic_sad         ]       };
    192  1.1  mrg     key <AC03> {  [    Arabic_dal,     Arabic_dad         ]       };
    193  1.1  mrg     key <AC04> {  [    Arabic_feh,     Arabic_fathatan    ]       };
    194  1.1  mrg     key <AC05> {  [    Arabic_ghain,   VoidSymbol         ]       };
    195  1.1  mrg     key <AC06> {  [    Arabic_ha,      Arabic_hah         ]       };
    196  1.1  mrg     key <AC07> {  [    Arabic_jeem,    VoidSymbol         ]       };
    197  1.1  mrg     key <AC08> {  [    Arabic_kaf,     Arabic_kasratan    ]       };
    198  1.1  mrg     key <AC09> {  [    Arabic_lam,     VoidSymbol         ]       };
    199  1.1  mrg     key <AC10> {  [    Arabic_semicolon, VoidSymbol       ]       };
    200  1.1  mrg     key <AC11> {  [    Arabic_hamza,   VoidSymbol         ]       };
    201  1.1  mrg 
    202  1.1  mrg     key <BKSL> {  [      VoidSymbol,   Arabic_maddaonalef ]     };
    203  1.1  mrg 
    204  1.1  mrg //    key <LSGT> {  [             bar,      brokenbar	  ]     };
    205  1.1  mrg 
    206  1.1  mrg     key <AB01> {  [    Arabic_zain,    Arabic_zah         ]       };
    207  1.1  mrg     key <AB02> {  [    Arabic_khah,    VoidSymbol         ]       };
    208  1.1  mrg     key <AB03> {  [    VoidSymbol,     VoidSymbol         ]       };
    209  1.1  mrg     key <AB04> {  [    Arabic_theh,    VoidSymbol         ]       };
    210  1.1  mrg     key <AB05> {  [    Arabic_beh,     VoidSymbol         ]       };
    211  1.1  mrg     key <AB06> {  [    Arabic_noon,    Arabic_dammatan    ]       };
    212  1.1  mrg     key <AB07> {  [    Arabic_meem,    VoidSymbol         ]       };
    213  1.1  mrg     key <AB08> {  [    Arabic_comma,   Arabic_hamzaunderalef ]    };
    214  1.1  mrg     // ARABIC FULL STOP (Urdu)
    215  1.1  mrg     key <AB09> {  [    0x10006d4,      Arabic_hamzaonalef ]       };
    216  1.1  mrg     key <AB10> {  [    VoidSymbol,     Arabic_question_mark ]     };
    217  1.1  mrg 
    218  1.1  mrg     // End alphanumeric section
    219  1.1  mrg };
    220  1.1  mrg 
    221  1.1  mrg partial alphanumeric_keys
    222  1.1  mrg xkb_symbols "olpc" {
    223  1.1  mrg 
    224  1.1  mrg     include "ara(basic)"
    225  1.1  mrg 
    226  1.1  mrg     // As part of the olpc design some changes were made to the Arabic
    227  1.1  mrg     // keyboard design. Major changes are:
    228  1.1  mrg     //
    229  1.1  mrg     //  * Removed the lam-alef single character. Poeple type as they
    230  1.1  mrg     //    pronounce, and lam-alef is just a visual formatting of the
    231  1.1  mrg     //    sequence and is not often used on the keyboard. It is
    232  1.1  mrg     //    similar to the Allah single character, which is also not on
    233  1.1  mrg     //    the keyboard.
    234  1.1  mrg     //  * Moved the following keys:
    235  1.1  mrg     //     o Thal from TLDE to AB05: Due to space limitation on the
    236  1.1  mrg     //       keybaord, but also accessibility
    237  1.1  mrg     //     o Shadda from TLDE to AD05
    238  1.1  mrg     //  * Placed currency letters on number keys and moved the ^ and &
    239  1.1  mrg     //    characters to lower keys (This change is worth revisiting
    240  1.1  mrg     //    before end of test period)
    241  1.1  mrg 
    242  1.1  mrg     key <TLDE> {  [           grave,      asciitilde  ] };
    243  1.1  mrg 
    244  1.1  mrg     key <AE01> {  [       0x1000661,          exclam  ] };
    245  1.1  mrg     key <AE02> {  [       0x1000662,              at  ] };
    246  1.1  mrg     key <AE03> {  [       0x1000663,      numbersign  ] };
    247  1.1  mrg     key <AE04> {  [       0x1000664,          dollar  ] };
    248  1.1  mrg     key <AE05> {  [       0x1000665,  Arabic_percent  ] };
    249  1.1  mrg     key <AE06> {  [       0x1000666,        sterling  ] };
    250  1.1  mrg     key <AE07> {  [       0x1000667,        EuroSign  ] };
    251  1.1  mrg     key <AE08> {  [       0x1000668,        asterisk  ] };
    252  1.1  mrg     key <AE09> {  [       0x1000669,      parenright  ] };
    253  1.1  mrg     key <AE10> {  [       0x1000660,       parenleft  ] };
    254  1.1  mrg 
    255  1.1  mrg     key <AD05> {  [      Arabic_feh,   Arabic_shadda  ] };
    256  1.1  mrg 
    257  1.1  mrg     key <AD08> {  [      Arabic_heh,        division  ] };
    258  1.1  mrg     key <AD11> {  [     Arabic_jeem,      braceright  ] };
    259  1.1  mrg     key <AD12> {  [      Arabic_dal,       braceleft  ] };
    260  1.1  mrg 
    261  1.1  mrg     key <AC01> {  [    Arabic_sheen,         greater  ] };
    262  1.1  mrg     key <AC02> {  [     Arabic_seen,            less  ] };
    263  1.1  mrg     key <AC05> {  [      Arabic_lam,       ampersand  ] };
    264  1.1  mrg     key <AC10> {  [      Arabic_kaf                   ] };
    265  1.1  mrg     key <AC11> {  [      Arabic_tah                   ] };
    266  1.1  mrg 
    267  1.1  mrg     key <BKSL> {  [       backslash,             bar  ] };
    268  1.1  mrg 
    269  1.1  mrg 
    270  1.1  mrg     // REH isolated form?
    271  1.1  mrg     key <AB03> {  [ Arabic_hamzaonwaw,   Arabic_kasra ] };
    272  1.1  mrg     key <AB04> {  [       Arabic_ra,  Arabic_kasratan ] };    
    273  1.1  mrg     key <AB05> {  [     Arabic_thal,      asciicircum ] };
    274  1.1  mrg 
    275  1.1  mrg     include "group(olpc)"
    276  1.1  mrg };
    277