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
//
// 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)"
};
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to