kh revision bfd7cbc1
1154daed1Smrg//
2154daed1Smrg//   khmer unicode keyboard for XFree86 4.3 or XOrg 
3154daed1Smrg//   (might work with older versions, not tested)
4154daed1Smrg//
5154daed1Smrg//   layout defined by National Information Communications Technology Development Authority (NiDA)
6154daed1Smrg//   http://www.nida.gov.kh
7154daed1Smrg//
8154daed1Smrg//   version:  1.0.1
9154daed1Smrg//
10154daed1Smrg//   date: 14.09.2005
11154daed1Smrg//
12154daed1Smrg//   author:  Jens Herden   (jens at khmeros.info)
13154daed1Smrg//
14154daed1Smrg//
15154daed1Smrg//   understanding the symbols:
16154daed1Smrg//
17154daed1Smrg//         0x100yyyy  = unicode, yyyy is hexcode
18154daed1Smrg//                      codes that are not assigned in unicode (0x10017fb-0x10017ff),
19154daed1Smrg//                      are used to make compositions for special vowels
20154daed1Smrg//
21154daed1Smrg//         voidsymbol = no symbol for this combination
22154daed1Smrg//
23154daed1Smrg//         all other symbol are defined in: /usr/X11/include/X11/keysymdef.h
24154daed1Smrg//         but with a leading 'XK_'
25154daed1Smrg//
26154daed1Smrg
27154daed1Smrgpartial default alphanumeric_keys
28154daed1Smrgxkb_symbols "basic" {
29bfd7cbc1Smrg    name[Group1]= "Khmer (Cambodia)";
30154daed1Smrg    
31154daed1Smrg// there are four levels defined:
32154daed1Smrg//
33154daed1Smrg//                 normal           shift			right-alt	right-alt + shift
34154daed1Smrg//
35154daed1Smrg
36154daed1Smrg//  keys: `1234567890-=\
37154daed1Smrg    key <TLDE> { [ guillemotleft,	guillemotright,	0x100200d,	voidsymbol	] };
38154daed1Smrg    key <AE01> { [ 0x10017e1,		exclam,			0x100200c, 	0x10017f1	] };
39154daed1Smrg    key <AE02> { [ 0x10017e2,		0x10017d7,		at, 		0x10017f2	] };
40154daed1Smrg    key <AE03> { [ 0x10017e3,		quotedbl,		0x10017d1, 	0x10017f3	] };
41154daed1Smrg    key <AE04> { [ 0x10017e4,		0x10017db,		dollar, 	0x10017f4	] };
42154daed1Smrg    key <AE05> { [ 0x10017e5,		percent,		EuroSign, 	0x10017f5	] };
43154daed1Smrg    key <AE06> { [ 0x10017e6,		0x10017cd,		0x10017d9, 	0x10017f6	] };
44154daed1Smrg    key <AE07> { [ 0x10017e7,		0x10017d0,		0x10017da, 	0x10017f7	] };
45154daed1Smrg    key <AE08> { [ 0x10017e8,		0x10017cf,		asterisk, 	0x10017f8	] };
46154daed1Smrg    key <AE09> { [ 0x10017e9,		parenleft,		braceleft, 	0x10017f9	] };
47154daed1Smrg    key <AE10> { [ 0x10017e0,		parenright,		braceright, 0x10017f0	] };
48154daed1Smrg    key <AE11> { [ 0x10017a5,		0x10017cc,		x, 		    voidsymbol	] };
49154daed1Smrg    key <AE12> { [ 0x10017b2,		equal,			0x10017ce, 	voidsymbol	] };
50154daed1Smrg    key <BKSL> { [ 0x10017ae,		0x10017ad,		backslash, 	voidsymbol	] };
51154daed1Smrg
52154daed1Smrg//  keys: qwertyuiop[]
53154daed1Smrg    key <AD01> { [ 0x1001786,		0x1001788,		0x10017dc, 	0x10019e0	] };
54154daed1Smrg    key <AD02> { [ 0x10017b9,		0x10017ba,		0x10017dd, 	0x10019e1	] };
55154daed1Smrg    key <AD03> { [ 0x10017c1,		0x10017c2,		0x10017af, 	0x10019e2	] };
56154daed1Smrg    key <AD04> { [ 0x100179a,		0x10017ac,		0x10017ab, 	0x10019e3	] };
57154daed1Smrg    key <AD05> { [ 0x100178f,		0x1001791,		0x10017a8, 	0x10019e4	] };
58154daed1Smrg    key <AD06> { [ 0x1001799,		0x10017bd,		voidsymbol, 0x10019e5	] };
59154daed1Smrg    key <AD07> { [ 0x10017bb,		0x10017bc,		voidsymbol, 0x10019e6	] };
60154daed1Smrg    key <AD08> { [ 0x10017b7,		0x10017b8,		0x10017a6, 	0x10019e7	] };
61154daed1Smrg    key <AD09> { [ 0x10017c4,		0x10017c5,		0x10017b1, 	0x10019e8	] };
62154daed1Smrg    key <AD10> { [ 0x1001795,		0x1001797,		0x10017b0, 	0x10019e9	] };
63154daed1Smrg    key <AD11> { [ 0x10017c0,		0x10017bf,		0x10017a9, 	0x10019ea	] };
64154daed1Smrg    key <AD12> { [ 0x10017aa,		0x10017a7,		0x10017b3, 	0x10019eb	] };
65154daed1Smrg
66154daed1Smrg//  keys: asdfghjkl;'
67154daed1Smrg    key <AC01> { [ 0x10017b6,		0x10017ff,		voidsymbol, 0x10019ec	] };
68154daed1Smrg    key <AC02> { [ 0x100179f,		0x10017c3,		voidsymbol, 0x10019ed	] };
69154daed1Smrg    key <AC03> { [ 0x100178a,		0x100178c,		voidsymbol, 0x10019ee	] };
70154daed1Smrg    key <AC04> { [ 0x1001790,		0x1001792,		voidsymbol, 0x10019ef	] };
71154daed1Smrg    key <AC05> { [ 0x1001784,		0x10017a2,		voidsymbol, 0x10019f0	] };
72154daed1Smrg    key <AC06> { [ 0x10017a0,		0x10017c7,		voidsymbol, 0x10019f1	] };
73154daed1Smrg    key <AC07> { [ 0x10017d2,		0x1001789,		voidsymbol, 0x10019f2	] };
74154daed1Smrg    key <AC08> { [ 0x1001780,		0x1001782,		0x100179d, 	0x10019f3	] };
75154daed1Smrg    key <AC09> { [ 0x100179b,		0x10017a1,		voidsymbol, 0x10019f4	] };
76154daed1Smrg    key <AC10> { [ 0x10017be,		0x10017fe,		0x10017d6, 	0x10019f5	] };
77154daed1Smrg    key <AC11> { [ 0x10017cb,		0x10017c9,		0x10017c8, 	0x10019f6	] };
78154daed1Smrg
79154daed1Smrg//  keys: zxcvbnm,./
80154daed1Smrg    key <AB01> { [ 0x100178b,		0x100178d,		voidsymbol, 0x10019f7	] };
81154daed1Smrg    key <AB02> { [ 0x1001781,		0x1001783,		voidsymbol, 0x10019f8	] };
82154daed1Smrg    key <AB03> { [ 0x1001785,		0x1001787,		voidsymbol, 0x10019f9	] };
83154daed1Smrg    key <AB04> { [ 0x100179c,		0x10017fd,		voidsymbol, 0x10019fa	] };
84154daed1Smrg    key <AB05> { [ 0x1001794,		0x1001796,		0x100179e, 	0x10019fb	] };
85154daed1Smrg    key <AB06> { [ 0x1001793,		0x100178e,		voidsymbol, 0x10019fc	] };
86154daed1Smrg    key <AB07> { [ 0x1001798,		0x10017c6,		voidsymbol, 0x10019fd	] };
87154daed1Smrg    key <AB08> { [ 0x10017fc,		0x10017fb,		comma, 		0x10019fe	] };
88154daed1Smrg    key <AB09> { [ 0x10017d4,		0x10017d5,		period, 	0x10019ff	] };
89154daed1Smrg    key <AB10> { [ 0x10017ca,		question,		slash,		voidsymbol	] };
90154daed1Smrg
91154daed1Smrg    key <SPCE> { [ 0x100200b,		space,			0x10000a0,	voidsymbol	] };
92154daed1Smrg    key <RALT> { [ Alt_R	] };
93154daed1Smrg
94154daed1Smrg// third level with right-Alt
95154daed1Smrg    include "level3(ralt_switch)"
96154daed1Smrg    
97154daed1Smrg};
98154daed1Smrg
99154daed1Smrgpartial alphanumeric_keys
100154daed1Smrgxkb_symbols "olpc" {
101154daed1Smrg    include "kh(basic)"
102154daed1Smrg    
103154daed1Smrg// Contact Walter@laptop.org
104154daed1Smrg
105154daed1Smrg    key <AC10> { [ 0x10017be,		0x10017c8,		0x10017d6, 	0x10019f5	] };
106154daed1Smrg    key <AE01> { [ 0x10017e1,		0x100200c,		exclam, 	0x10017f1	] };
107154daed1Smrg    key <AE03> { [ 0x10017e3,		0x10017d1,		quotedbl, 	0x10017f3	] };
108154daed1Smrg    key <AE05> { [ 0x10017e5,		EuroSign,		percent, 	0x10017f5	] };
109154daed1Smrg    key <AE12> { [ 0x10017b2,		0x10017ce,		equal, 	 	voidsymbol	] };
110154daed1Smrg
111154daed1Smrg   //language key
112154daed1Smrg   include "group(olpc)"
113154daed1Smrg};
114