// $XKeyboardConfig$ // // khmer unicode keyboard for XFree86 4.3 or XOrg // (might work with older versions, not tested) // // layout defined by PAN Localization Cambodia // http://pancambodia.info // // version: 1.0.1 // // date: 09.06.2009 // // author: HENG Samedi (heng.samedi at gmail.com) // // // to be edit later // understanding the symbols: // // 0x100yyyy = unicode, yyyy is hexcode // codes that are not assigned in unicode (0x10017fb-0x10017ff), // are used to make compositions for special vowels // // voidsymbol = no symbol for this combination // // all other symbol are defined in: /usr/X11/include/X11/keysymdef.h // but with a leading 'XK_' // partial default alphanumeric_keys xkb_symbols "basic" { name[Group1]= "Cambodia"; // there are four levels defined: // // normal shift right-alt right-alt + shift // // keys: `1234567890-=\ // key { [ guillemotleft, guillemotright, 0x100200d, voidsymbol ] }; key { [ 0x100200c, 0x100200d, 0x10017d9, 0x10019e0 ] }; key { [ 0x10017e1, exclam, 0x1000031, 0x10019e1 ] }; key { [ 0x10017e2, 0x10017d7, 0x1000032, 0x10019e2 ] }; key { [ 0x10017e3, 0x10017ca, 0x1000033, 0x10019e3 ] }; key { [ 0x10017e4, 0x10017db, 0x1000034, 0x10019e4 ] }; key { [ 0x10017e5, 0x10017d0, 0x1000035, 0x10019e5 ] }; key { [ 0x10017e6, 0x10017cc, 0x1000036, 0x10019e6 ] }; key { [ 0x10017e7, 0x10017cd, 0x1000037, 0x10019e7 ] }; key { [ 0x10017e8, 0x10017cf, 0x1000038, 0x10019e8 ] }; key { [ 0x10017e9, 0x10017ce, 0x1000039, 0x10019e9 ] }; key { [ 0x10017e0, 0x10017d1, 0x1000030, 0x10019ea ] }; key { [ 0x100002D, 0x100002D, braceleft, 0x10019eb ] }; key { [ equal, 0x100002b, braceright, 0x10019ec ] }; key { [ backslash, 0x100002f, 0x10017da, 0x10017f9 ] }; // keys: qwertyuiop[] key { [ 0x1001786, 0x1001788, asterisk, 0x10019ed ] }; key { [ 0x10017b9, 0x10017ba, voidsymbol, 0x10019ee ] }; key { [ 0x10017c1, 0x10017c2, 0x10017af, 0x10019ef ] }; key { [ 0x100179a, 0x10017ac, 0x10017ab, 0x10019f0 ] }; key { [ 0x100178f, 0x1001791, 0x10017a6, 0x10019f1 ] }; key { [ 0x1001799, 0x10017bd, voidsymbol, 0x10019f2 ] }; key { [ 0x10017bb, 0x10017bc, 0x10017a7, 0x10019f3 ] }; key { [ 0x10017b7, 0x10017b8, 0x10017a5, 0x10019f4 ] }; key { [ 0x10017c4, 0x10017c5, 0x10017b1, 0x10019f5 ] }; key { [ 0x1001795, 0x1001797, 0x10017b3, 0x10019f6 ] }; key { [ 0x10017be, 0x10017fe, 0x100005b, 0x10019f7 ] }; key { [ 0x10017bf, 0x10017c0, 0x100005d, 0x10019f7 ] }; // keys: asdfghjkl;' key { [ 0x10017b6, 0x10017c3, 0x10017a9, 0x10019f0 ] }; key { [ 0x100179f, 0x10017ff, 0x10017aa, 0x10019ed ] }; key { [ 0x100178a, 0x100178c, voidsymbol, 0x10019f2 ] }; key { [ 0x1001790, 0x1001792, voidsymbol, 0x10019f3 ] }; key { [ 0x1001784, 0x10017fb, voidsymbol, 0x10019f4 ] }; key { [ 0x10017a0, 0x10017c7, voidsymbol, 0x10019f5 ] }; key { [ 0x1001789, 0x10017fc, 0x10017ae, 0x10019f6 ] }; key { [ 0x1001780, 0x1001782, 0x10017ad, 0x10019f7 ] }; key { [ 0x100179b, 0x10017a1, 0x10017b0, 0x10019f8 ] }; key { [ 0x10017c8, 0x10017d6, 0x100003b, 0x10019f9 ] }; key { [ 0x10017cb, 0x10017c9, 0x10017dd, 0x10019fa ] }; // keys: zxcvbnm,./ key { [ 0x100178b, 0x100178d, 0x1000023, 0x10019fb ] }; key { [ 0x1001781, 0x1001783, 0x1000040, 0x10019fc ] }; key { [ 0x1001785, 0x1001787, 0x1000026, 0x10019fd ] }; key { [ 0x100179c, 0x10017fd, dollar, 0x10019fe ] }; key { [ 0x1001794, 0x1001796, 0x1000025, 0x10019ff ] }; key { [ 0x1001793, 0x100178e, 0x1000028, voidsymbol ] }; key { [ 0x1001798, 0x10017c6, 0x1000029, voidsymbol ] }; key { [ 0x10017a2, 0x100002c, 0x1002039, 0x10000bf ] }; key { [ 0x10017d4, 0x1002e, 0x100203a, 0x100179d ] }; key { [ 0x100200b, question, 0x10017d5, 0x100179e ] }; key { [ 0x10017d2, space, voidsymbol, voidsymbol ] }; key { [ Alt_R ] }; // third level with right-Alt include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "olpc" { include "kh(basic)" // Contact Walter@laptop.org key { [ 0x10017be, 0x10017c8, 0x10017d6, 0x10019f5 ] }; key { [ 0x10017e1, 0x100200c, exclam, 0x10017f1 ] }; key { [ 0x10017e3, 0x10017d1, quotedbl, 0x10017f3 ] }; key { [ 0x10017e5, EuroSign, percent, 0x10017f5 ] }; key { [ 0x10017b2, 0x10017ce, equal, voidsymbol ] }; //language key include "group(olpc)" };