Jawi script for Malay language.

Peter Hutterer peter.hutterer at who-t.net
Wed May 1 16:00:01 PDT 2013


On Wed, May 01, 2013 at 12:19:42PM +0800, Muhammad Nuzaihan Bin Kamal Luddin wrote:
> Hi,
> 
> Attached is the symbol file for Jawi script (Malay/Malaysian language)
> 
> Our project page is at http://www.launchpad.net/jawi
> 
> It includes the standardization of Jawi from a local university, UKM
> using arabic keyboard and a phonetic-based layout for standard qwerty
> keyboard.
> 
> Regards,
> Muhammad Nuzaihan Bin Kamal Luddin

Please attach this to a bug against the xkeyboard-config component.
https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config

http://www.freedesktop.org/wiki/Software/XKeyboardConfig/Rules


Cheers,
   Peter




> //
> // XKB symbol :: Jawi Malaysian Keyboard Layout
> // Project site: http://launchpad.net/jawi
> //
> // Author: Ihsan Jaafar < inashdeen at gmail.com >
> // Created: 22 Jun 2012
> // Last Updated: 17 December 2012
> // Version: 0.2.0
> // based on a keyboard map from an 'xkb/symbols/ar' file
> // based on keyboard map by Jamil Ahmad (Bangladesh) and Martin Vidner (arabic)
> // based on Mac OS X Jawi (qwerty) layout by Muhammad Nuzaihan Bin Kamal Luddin  < zaihan at unrealasia.net >
> // added Jawi (phonetic) support on 18 Jan 2013
> // Version: 0.1.3
> 
> 
> partial default alphanumeric_keys 
> xkb_symbols "basic" {
>     name[Group1]= "Jawi";
> 
> //Numbers
> 
>     key <AE01> {  [       0x1000661,          exclam, 1      ]       };
>     key <AE02> {  [       0x1000662,              at, 2      ]       };
>     key <AE03> {  [       0x1000663,      numbersign, 3      ]       };
>     key <AE04> {  [       0x1000664,          dollar, 4      ]       };
>     key <AE05> {  [       0x1000665,  Arabic_percent, 5      ]       };
>     key <AE06> {  [       0x1000666,     asciicircum, 6      ]       };
>     key <AE07> {  [       0x1000667,       ampersand, 7      ]       };
>     key <AE08> {  [       0x1000668,        asterisk, 8      ]       };
>     key <AE09> {  [       0x1000669,      parenright, 9      ]       };
>     key <AE10> {  [       0x1000660,       parenleft, 0      ]       };
>     key <AE11> {  [           minus,      underscore      ]     };
>     key <AE12> {  [           equal,            plus      ]     };
> 						
> // Alphabets
> 
>     key <AD01> {  [      Arabic_dad,     U0686     ]     };
>     key <AD02> {  [      Arabic_sad,     U06A0  ]     };
>     key <AD03> {  [     Arabic_theh,     U06AC     ]     };
>     key <AD04> {  [      Arabic_qaf,     U0640  ]     };
>     key <AD05> {  [   Arabic_feh,  0x100fef9, 0x10006a4   ]     };
>     key <AD06> {  [   Arabic_ghain, Arabic_hamzaunderalef ]     };
>     key <AD07> {  [      Arabic_ain,         grave        ]     };
>     key <AD08> {  [       Arabic_ha,        division      ]     };
>     key <AD09> {  [     Arabic_khah,       multiply      ]     };
>     key <AD10> {  [      U06A9,    Arabic_semicolon  ]     };
>     key <AD11> {  [     Arabic_jeem,   less, 0x1000686    ]     };
>     key <AD12> {  [      Arabic_dal,        greater       ]     };
> 
>     key <AC01> {  [    Arabic_sheen,   U06CF       ]     };
>     key <AC02> {  [     Arabic_seen,   U06A8    ]     };
>     key <AC03> {  [      Arabic_yeh,       bracketright   ]     };
>     key <AC04> {  [   Arabic_beh, bracketleft, 0x100067e  ]     };
>     key <AC05> {  [      Arabic_lam,       0x100fef7      ]     };
>     key <AC06> {  [     Arabic_alef,   Arabic_hamzaonalef ]     };
>     key <AC07> {  [      Arabic_teh,      Arabic_tatweel  ]     };
>     key <AC08> {  [     Arabic_noon,      Arabic_comma    ]     };
>     key <AC09> {  [     Arabic_meem,         slash        ]     };
>     key <AC10> {  [      U06A9,   colon, 0x10006af   ]     };
>     key <AC11> {  [      Arabic_tah,        quotedbl      ]     };
> 
>     key <LSGT> {  [             bar,      brokenbar	  ]     };
>     key <AB01> {  [Arabic_hamzaonyeh, asciitilde, guillemotright  ]     };
>     key <AB02> {  [    Arabic_hamza,  U06BD, guillemotleft ]     };
>     key <AB03> {  [Arabic_hamzaonwaw,      braceright     ]     };
>     key <AB04> {  [       Arabic_ra,       braceleft      ]     };
>     key <AB05> {  [       0x100fefb,       0x100fef5      ]     };
>     key <AB06> {  [Arabic_alefmaksura, Arabic_maddaonalef ]     };
>     key <AB07> {  [Arabic_tehmarbuta,    apostrophe       ]     };
>     key <AB08> {  [      Arabic_waw,         U200C, comma        ]     };
>     key <AB09> {  [     Arabic_zain,         period       ]     };
>     key <AB10> {  [      Arabic_zah, Arabic_question_mark ]     };
> 
> //others
> 
>    key <ESC>  { [ Escape ] };
> 
>     include "level3(ralt_switch)"
> 
>     // End alphanumeric section
> };
> 
> 
> // symbol names: see /usr/X11R6/include/X11/keysymdef.h (XFree86-devel.rpm)
> 
> partial default alphanumeric_keys
> xkb_symbols "phonetic"
> {
>         name[Group1] = "Jawi (phonetic)";
> 
> //Numbers
> 
>         key <AE01> {  [       0x1000661,          exclam, 1      ]       };
>         key <AE02> {  [       0x1000662,    Arabic_hamza, 2      ]       };
>         key <AE03> {  [       0x1000663,  Arabic_hamzaonalef, 3  ]       };
>         key <AE04> {  [       0x1000664,  Arabic_maddaonalef, 4  ]       };
>         key <AE05> {  [       0x1000665, Arabic_hamzaunderalef, 5 ]       };
>         key <AE06> {  [       0x1000666, Arabic_hamzaonyeh, 6    ]       };
>         key <AE07> {  [       0x1000667, Arabic_hamzaonwaw, 7      ]       };
>         key <AE08> {  [       0x1000668,        NoSymbol, 8      ]       };
>         key <AE09> {  [       0x1000669,      parenright, 9      ]       };
>         key <AE10> {  [       0x1000660,       parenleft, 0      ]       };
>         key <AE11> {  [           minus,      underscore      ]     };
>         key <AE12> {  [           equal,            plus      ]     };
> 
> // Alphabets
>         key <LSGT> { [      bar,      brokenbar               ] };
>         key <AB01> { [    Arabic_zain, Arabic_thal            ] };
>         key <AB02> { [    Arabic_khah, Arabic_hah             ] };
>         key <AB03> { [    Arabic_tcheh, UFEB9                 ] };
>         key <AB04> { [    U06CF                               ] };
>         key <AB05> { [    Arabic_beh, Arabic_peh              ] };
>         key <AB06> { [    Arabic_noon, U06BD                  ] };
>         key <AB07> { [    Arabic_meem, Arabic_madonalef       ] };
>         key <AB08> { [    Arabic_comma, rightcaret            ] };
>         key <AB09> { [    period, leftcaret                   ] };
>         key <AB10> { [    slash, Arabic_question_mark         ] };
> 
>         key <AC01> { [    Arabic_alef, Arabic_maddaonalef     ] };
>         key <AC02> { [    Arabic_seen, Arabic_sheen           ] };
>         key <AC03> { [    Arabic_dal, Arabic_dad              ] };
>         key <AC04> { [    Arabic_feh, Arabic_veh              ] };
>         key <AC05> { [    U06AC, U06A0                        ] };
>         key <AC06> { [    Arabic_ha, Arabic_hah               ] };
>         key <AC07> { [    Arabic_jeem, Arabic_tcheh           ] };
>         key <AC08> { [    Arabic_kaf, Arabic_qaf              ] };
>         key <AC09> { [    Arabic_lam, UFEFB                   ] };
>         key <AC10> { [      Arabic_semicolon, colon           ] };
>         key <AC11> { [      apostrophe,        quotedbl       ] };
> 
>         key <AD01> { [     Arabic_qaf, Arabic_veh             ] };
>         key <AD02> { [     Arabic_waw, Arabic_zah             ] }; 
>         key <AD03> { [     Arabic_ain, Arabic_ghain           ] };
>         key <AD04> { [     Arabic_ra,  Arabic_ghain           ] };
>         key <AD05> { [     Arabic_teh, Arabic_tehmarbuta      ] };
>         key <AD06> { [     Arabic_yeh, Arabic_alefmaksura     ] };
>         key <AD07> { [     Arabic_waw, Arabic_tah             ] };
>         key <AD08> { [     Arabic_yeh, U0640                  ] }; // U0640 - tatweel
>         key <AD09> { [     Arabic_ain, U200C                  ] }; // U200C - ZWNJ
>         key <AD10> { [     Arabic_veh, Arabic_teh             ] };
>         key <AD11> { [     bracketright, braceright           ] };
>         key <AD12> { [     bracketleft, braceleft             ] };
>         key <AD13> { [     backslash,             bar         ] };
> 
>         
> //others
>         
>    key <ESC>  { [ Escape ] }; 
>         
>     include "level3(ralt_switch)"
>         
>     // End alphanumeric section
>         
> };      
> 
> partial alphanumeric_keys
> xkb_symbols "olpc" {
> 
>     include "ara(basic)"
> 
>     // As part of the olpc design some changes were made to the Arabic
>     // keyboard design. Major changes are:
>     //
>     //  * Removed the lam-alef single character. Poeple type as they
>     //    pronounce, and lam-alef is just a visual formatting of the
>     //    sequence and is not often used on the keyboard. It is
>     //    similar to the Allah single character, which is also not on
>     //    the keyboard.
>     //  * Moved the following keys:
>     //     o Thal from TLDE to AB05: Due to space limitation on the
>     //       keybaord, but also accessibility
>     //     o Shadda from TLDE to AD05
>     //  * Placed currency letters on number keys and moved the ^ and &
>     //    characters to lower keys (This change is worth revisiting
>     //    before end of test period)
> 
>     key <TLDE> {  [           grave,      asciitilde  ] };
> 
>     key <AE01> {  [       0x1000661,          exclam  ] };
>     key <AE02> {  [       0x1000662,              at  ] };
>     key <AE03> {  [       0x1000663,      numbersign  ] };
>     key <AE04> {  [       0x1000664,          dollar  ] };
>     key <AE05> {  [       0x1000665,  Arabic_percent  ] };
>     key <AE06> {  [       0x1000666,        sterling  ] };
>     key <AE07> {  [       0x1000667,        EuroSign  ] };
>     key <AE08> {  [       0x1000668,        asterisk  ] };
>     key <AE09> {  [       0x1000669,      parenright  ] };
>     key <AE10> {  [       0x1000660,       parenleft  ] };
> 
>     key <AD05> {  [      Arabic_feh,   Arabic_shadda  ] };
> 
>     key <AD08> {  [      Arabic_heh,        division  ] };
>     key <AD11> {  [     Arabic_jeem,      braceright  ] };
>     key <AD12> {  [      Arabic_dal,       braceleft  ] };
> 
>     key <AC01> {  [    Arabic_sheen,         greater  ] };
>     key <AC02> {  [     Arabic_seen,            less  ] };
>     key <AC05> {  [      Arabic_lam,       ampersand  ] };
>     key <AC10> {  [      Arabic_kaf                   ] };
>     key <AC11> {  [      Arabic_tah                   ] };
> 
>     key <BKSL> {  [       backslash,             bar  ] };
> 
> 
>     // REH isolated form?
>     key <AB03> {  [ Arabic_hamzaonwaw,   Arabic_kasra ] };
>     key <AB04> {  [       Arabic_ra,  Arabic_kasratan ] };    
>     key <AB05> {  [     Arabic_thal,      asciicircum ] };
> 
>     include "group(olpc)"
> };

> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel



More information about the xorg-devel mailing list