diff --git a/rules/base.xml.in b/rules/base.xml.in index 4cd0a3b..736fa80 100644 --- a/rules/base.xml.in +++ b/rules/base.xml.in @@ -5917,6 +5917,57 @@ + + + id + id + Indonesian (Jawi) + + id + ms + min + ace + bjn + tsg + mfa + + + + + + + my + ms + Malay (Jawi) + + id + ms + min + ace + bjn + tsg + mfa + + + + + + + bn + ms + Malay (Jawi) + + id + ms + min + ace + bjn + tsg + mfa + + + + diff --git a/symbols/bn b/symbols/bn new file mode 100644 index 0000000..22cebef --- /dev/null +++ b/symbols/bn @@ -0,0 +1,7 @@ +default partial alphanumeric_keys +xkb_symbols "jawi" { + include "id(jawi)" + + name[Group1]= "Malay (Jawi)"; +}; + diff --git a/symbols/id b/symbols/id new file mode 100644 index 0000000..b8e4257 --- /dev/null +++ b/symbols/id @@ -0,0 +1,71 @@ +// Modified from Arabic (buckwalter) +default partial alphanumeric_keys +xkb_symbols "jawi" { + name[Group1]= "Indonesian (Jawi)"; + + // ` + key { [ Arabic_superscript_alef, Arabic_shadda, grave, asciitilde ] }; // ـٰ supercript alef + + // 1..= + key { [ Arabic_1, exclam ] }; + key { [ Arabic_2, at ] }; + key { [ Arabic_3, numbersign ] }; + key { [ Arabic_4, 0x1000657 , dollar, 0x10006e9 ] }; // ـٗ inverted damma, ۩ + key { [ Arabic_5, Arabic_percent ] }; + key { [ Arabic_6, asciicircum ] }; + key { [ Arabic_7, ampersand ] }; + key { [ Arabic_8, asterisk , 0x100066d, 0x10006de ] }; // ٭, ۞ + key { [ Arabic_9, parenright , 0x100fd3e, 0x100fd3e ] }; // ornate left + key { [ Arabic_0, parenleft , 0x100fd3f, 0x100fd3f ] }; // ornate right + key { [ minus, Arabic_tatweel , underscore, underscore ] }; + key { [ equal, plus ] }; + + // Q..] + key { [ Arabic_qaf, Arabic_hamza ] }; + key { [ Arabic_waw, Arabic_hamzaonwaw ] }; + key { [ Arabic_ain, 0x10006ce ] }; // yeh with small v + key { [ Arabic_ra, 0x1000656 ] }; // ـٖ subscript alef + key { [ Arabic_teh, Arabic_tah ] }; + key { [ Arabic_yeh, Arabic_alefmaksura ] }; + key { [ Arabic_damma, Arabic_hamzaonalef ] }; + key { [ Arabic_kasra, Arabic_hamzaunderalef ] }; + key { [ Arabic_sukun, 0x10006c6 ] }; // oe + key { [ Arabic_veh, Arabic_tehmarbuta ] }; // ڤ p + key { [ Arabic_fathatan, 0x1000671 , bracketright, braceright ] }; // ٱ alef wasla + key { [ Arabic_kasratan, Arabic_hamzaonyeh, bracketleft, braceleft ] }; + + // A..' + key { [ Arabic_fatha, Arabic_alef ] }; + key { [ Arabic_seen, Arabic_sad ] }; + key { [ Arabic_dal, Arabic_dad ] }; + key { [ Arabic_feh, 0x10006a0 ] }; // ڠ ng + key { [ 0x1000762, Arabic_ghain ] }; // ݢ g (prefered) + key { [ Arabic_ha, Arabic_hah ] }; + key { [ Arabic_jeem, 0x10006ac ] }; // ڬ g + key { [ Arabic_kaf, Arabic_keheh ] }; // ک k (prefered) + key { [ Arabic_lam, Arabic_madda_above ] }; // ـٓ maddah above + key { [ Arabic_semicolon, colon ] }; + key { [ apostrophe, quotedbl , 0x100066c, 0x100066c ] }; // thousand sep + + // \ + key { [ Arabic_dammatan, Arabic_maddaonalef, backslash, bar ] }; + + // not exist in US keyboard + key { [ bar, brokenbar ] }; + + // Z../ + key { [ Arabic_zain, Arabic_zah ] }; + key { [ Arabic_khah, Arabic_sheen ] }; + key { [ Arabic_tcheh, Arabic_thal ] }; // چ c/ch + key { [ 0x10006cf, Arabic_theh ] }; // ۏ v + key { [ Arabic_beh, 0x10000bb ] }; // » + key { [ Arabic_noon, 0x10006bd ] }; // ڽ ny + key { [ Arabic_meem, 0x10000ab ] }; // « + key { [ Arabic_comma, less , 0x100066b, 0x100060d ] }; // decimal sep, date sep + key { [ period, greater, Arabic_fullstop, 0x10006dd ] }; // ۔ full stop, ۝ + key { [ slash, Arabic_question_mark ] }; + + + include "level3(ralt_switch)" +}; + diff --git a/symbols/my b/symbols/my new file mode 100644 index 0000000..22cebef --- /dev/null +++ b/symbols/my @@ -0,0 +1,7 @@ +default partial alphanumeric_keys +xkb_symbols "jawi" { + include "id(jawi)" + + name[Group1]= "Malay (Jawi)"; +}; +