1// based on a keyboard map from an 'xkb/symbols/th' file
2
3default  partial alphanumeric_keys
4xkb_symbols "basic" {
5    name[Group1]= "Thai";
6
7    // converted to THai keysysms - Pablo Saratxaga <pablo@mandrakesoft.com>
8
9    key <TLDE> { [ underscore,		percent		]	};
10    key <AE01> { [ Thai_lakkhangyao,	plus		]	};
11    key <AE02> { [ slash,		Thai_leknung	]	};
12    key <AE03> { [ minus,		Thai_leksong	]	};
13    key <AE04> { [ Thai_phosamphao,	Thai_leksam	]	};
14    key <AE05> { [ Thai_thothung,	Thai_leksi	]	};
15    key <AE06> { [ Thai_sarau,		Thai_sarauu	]	};
16    key <AE07> { [ Thai_saraue,		Thai_baht	]	};
17    key <AE08> { [ Thai_khokhwai,	Thai_lekha	]	};
18    key <AE09> { [ Thai_totao,		Thai_lekhok	]	};
19    key <AE10> { [ Thai_chochan,	Thai_lekchet	]	};
20    key <AE11> { [ Thai_khokhai,	Thai_lekpaet	]	};
21    key <AE12> { [ Thai_chochang,	Thai_lekkao	]	};
22
23    key <AD01> { [ Thai_maiyamok,	Thai_leksun	]	};
24    key <AD02> { [ Thai_saraaimaimalai,	quotedbl	]	};
25    key <AD03> { [ Thai_saraam,		Thai_dochada	]	};
26    key <AD04> { [ Thai_phophan,	Thai_thonangmontho ]	};
27    key <AD05> { [ Thai_saraa,		Thai_thothong	]	};
28    key <AD06> { [ Thai_maihanakat,	Thai_nikhahit	]	};
29    key <AD07> { [ Thai_saraii,		Thai_maitri	]	};
30    key <AD08> { [ Thai_rorua,		Thai_nonen	]	};
31    key <AD09> { [ Thai_nonu,		Thai_paiyannoi	]	};
32    key <AD10> { [ Thai_yoyak,		Thai_yoying	]	};
33    key <AD11> { [ Thai_bobaimai,	Thai_thothan	]	};
34    key <AD12> { [ Thai_loling,		comma		]	};
35
36    key <AC01> { [ Thai_fofan,		Thai_ru		]	};
37    key <AC02> { [ Thai_hohip,		Thai_khorakhang	]	};
38    key <AC03> { [ Thai_kokai,		Thai_topatak	]	};
39    key <AC04> { [ Thai_dodek,		Thai_sarao	]	};
40    key <AC05> { [ Thai_sarae,		Thai_chochoe	]	};
41    key <AC06> { [ Thai_maitho,		Thai_maitaikhu	]	};
42    key <AC07> { [ Thai_maiek,		Thai_maichattawa ]	};
43    key <AC08> { [ Thai_saraaa,		Thai_sorusi	]	};
44    key <AC09> { [ Thai_sosua,		Thai_sosala	]	};
45    key <AC10> { [ Thai_wowaen,		Thai_soso	]	};
46    key <AC11> { [ Thai_ngongu,		period		]	};
47
48    key <AB01> { [ Thai_phophung,	parenleft	]	};
49    key <AB02> { [ Thai_popla,		parenright	]	};
50    key <AB03> { [ Thai_saraae,		Thai_choching	]	};
51    key <AB04> { [ Thai_oang,		Thai_honokhuk	]	};
52    key <AB05> { [ Thai_sarai,		Thai_phinthu	]	};
53    key <AB06> { [ Thai_sarauee,	Thai_thanthakhat ]	};
54    key <AB07> { [ Thai_thothahan,	question	]	};
55    key <AB08> { [ Thai_moma,		Thai_thophuthao	]	};
56    key <AB09> { [ Thai_saraaimaimuan,	Thai_lochula	]	};
57    key <AB10> { [ Thai_fofa,		Thai_lu		]	};
58
59    key <BKSL> { [ Thai_khokhuat,	Thai_khokhon	]	};
60};
61
62partial alphanumeric_keys
63xkb_symbols "pat" {
64    name[Group1]= "Thai (Pattachote)";
65    // The thai layout defines a second keyboard group and changes
66    // the behavior of a few modifier keys.
67
68    // converted to THai keysysms - Pablo Saratxaga pablo@mandrakesoft.com
69    // Pattachote modification by Visanu Euarchukiati -- visanu@inet.co.th
70    key <TLDE> { [ underscore,		Thai_baht	] };
71    key <AE01> { [ equal,		plus		] };
72    key <AE02> { [ Thai_leksong,	quotedbl	] };
73    key <AE03> { [ Thai_leksam,		slash		] };
74    key <AE04> { [ Thai_leksi,		comma		] };
75    key <AE05> { [ Thai_lekha,		question	] };
76    key <AE06> { [ Thai_sarauu,		Thai_sarau	] };
77    key <AE07> { [ Thai_lekchet,	underscore	] };
78    key <AE08> { [ Thai_lekpaet,	period		] };
79    key <AE09> { [ Thai_lekkao,		parenleft	] };
80    key <AE10> { [ Thai_leksun,		parenright	] };
81    key <AE11> { [ Thai_leknung,	minus		] };
82    key <AE12> { [ Thai_lekhok,		percent		] };
83
84    key <AD01> { [ Thai_maitaikhu,	Thai_maitri	] };
85    key <AD02> { [ Thai_totao,		Thai_ru		] };
86    key <AD03> { [ Thai_yoyak,		Thai_maiyamok	] };
87    key <AD04> { [ Thai_oang,		Thai_yoying	] };
88    key <AD05> { [ Thai_rorua,		Thai_sorusi	] };
89    key <AD06> { [ Thai_maiek,		Thai_saraue	] };
90    key <AD07> { [ Thai_dodek,		Thai_fofa	] };
91    key <AD08> { [ Thai_moma,		Thai_soso	] };
92    key <AD09> { [ Thai_wowaen,		Thai_thothung	] };
93    key <AD10> { [ Thai_saraae,		Thai_thophuthao	] };
94    key <AD11> { [ Thai_saraaimaimuan,	Thai_paiyannoi	] };
95    key <AD12> { [ Thai_chochoe,	Thai_lu		] };
96
97    key <AC01> { [ Thai_maitho,		Thai_maichattawa] };
98    key <AC02> { [ Thai_thothahan,	Thai_thothong	] };
99    key <AC03> { [ Thai_ngongu,		Thai_saraam	] };
100    key <AC04> { [ Thai_kokai,		Thai_nonen	] };
101    key <AC05> { [ Thai_maihanakat,	Thai_thanthakhat] };
102    key <AC06> { [ Thai_saraii,		Thai_sarauee	] };
103    key <AC07> { [ Thai_saraaa,		Thai_phophung	] };
104    key <AC08> { [ Thai_nonu,		Thai_chochang	] };
105    key <AC09> { [ Thai_sarae,		Thai_sarao	] };
106    key <AC10> { [ Thai_saraaimaimalai,	Thai_khorakhang	] };
107    key <AC11> { [ Thai_khokhai,	Thai_thonangmontho ] };
108
109    key <AB01> { [ Thai_bobaimai,	Thai_dochada	] };
110    key <AB02> { [ Thai_popla,		Thai_topatak	] };
111    key <AB03> { [ Thai_loling,		Thai_thothan	] };
112    key <AB04> { [ Thai_hohip,		Thai_phosamphao	] };
113    key <AB05> { [ Thai_sarai,		Thai_phinthu	] };
114    key <AB06> { [ Thai_khokhwai,	Thai_sosala	] };
115    key <AB07> { [ Thai_sosua,		Thai_honokhuk	] };
116    key <AB08> { [ Thai_saraa,		Thai_fofan	] };
117    key <AB09> { [ Thai_chochan,	Thai_choching	] };
118    key <AB10> { [ Thai_phophan,	Thai_lochula	] };
119
120    key <BKSL> { [ Thai_lakkhangyao,	Thai_nikhahit	] };
121};
122
123
124partial alphanumeric_keys
125xkb_symbols "tis" {
126    name[Group1]= "Thai (TIS-820.2538)";
127    // The thai layout defines a second keyboard group and changes
128    // the behavior of a few modifier keys.
129
130    // converted to THai keysysms - Pablo Saratxaga <pablo@mandrakesoft.com>
131    // modified to TIS-820.2538 - Theppitak Karoonboonyanan <thep@linux.thai.net>
132    key <TLDE> {	[ 0x1000e4f,		0x1000e5b	]	};
133    key <AE01> {	[ Thai_baht,		Thai_lakkhangyao]	};
134    key <AE02> {	[ slash,  		Thai_leknung	]	};
135    key <AE03> {	[ minus,		Thai_leksong	]	};
136    key <AE04> {	[ Thai_phosamphao, 	Thai_leksam	]	};
137    key <AE05> {	[ Thai_thothung,   	Thai_leksi	]	};
138    key <AE06> {	[ Thai_sarau,		Thai_sarauu	]	};
139    key <AE07> {	[ Thai_saraue,		0x1000e4e	]	};
140    key <AE08> {	[ Thai_khokhwai,	Thai_lekha	]	};
141    key <AE09> {	[ Thai_totao,		Thai_lekhok	]	};
142    key <AE10> {	[ Thai_chochan,		Thai_lekchet	]	};
143    key <AE11> {	[ Thai_khokhai,		Thai_lekpaet	]	};
144    key <AE12> {	[ Thai_chochang,	Thai_lekkao	]	};
145
146    key <AD01> {	[ Thai_maiyamok,	Thai_leksun	]	};
147    key <AD02> {	[ Thai_saraaimaimalai, 	quotedbl	]	};
148    key <AD03> {	[ Thai_saraam,		Thai_dochada	]	};
149    key <AD04> {	[ Thai_phophan,		Thai_thonangmontho ]	};
150    key <AD05> {	[ Thai_saraa,		Thai_thothong	]	};
151    key <AD06> {	[ Thai_maihanakat,	Thai_nikhahit	]	};
152    key <AD07> {	[ Thai_saraii,		Thai_maitri	]	};
153    key <AD08> {	[ Thai_rorua,		Thai_nonen	]	};
154    key <AD09> {type[Group1]="THREE_LEVEL",
155    			[   Thai_nonu,	Thai_paiyannoi,	0x1000e5a]	};
156    key <AD10> {	[ Thai_yoyak,		Thai_yoying	]	};
157    key <AD11> {	[ Thai_bobaimai,	Thai_thothan	]	};
158    key <AD12> {	[ Thai_loling,		comma		]	};
159
160    key <AC01> {	[ Thai_fofan,		Thai_ru		]	};
161    key <AC02> {	[ Thai_hohip,		Thai_khorakhang	]	};
162    key <AC03> {	[ Thai_kokai,		Thai_topatak	]	};
163    key <AC04> {	[ Thai_dodek,		Thai_sarao	]	};
164    key <AC05> {	[ Thai_sarae,		Thai_chochoe	]	};
165    key <AC06> {	[ Thai_maitho,		Thai_maitaikhu	]	};
166    key <AC07> {	[ Thai_maiek,		Thai_maichattawa ]	};
167    key <AC08> {	[ Thai_saraaa,		Thai_sorusi	]	};
168    key <AC09> {	[ Thai_sosua,		Thai_sosala	]	};
169    key <AC10> {	[ Thai_wowaen,		Thai_soso	]	};
170    key <AC11> {	[ Thai_ngongu,		period		]	};
171
172    key <AB01> {	[ Thai_phophung,	parenleft	]	};
173    key <AB02> {	[ Thai_popla,		parenright	]	};
174    key <AB03> {	[ Thai_saraae,		Thai_choching	]	};
175    key <AB04> {	[ Thai_oang,		Thai_honokhuk	]	};
176    key <AB05> {	[ Thai_sarai,		Thai_phinthu	]	};
177    key <AB06> {	[ Thai_sarauee,		Thai_thanthakhat ]	};
178    key <AB07> {	[ Thai_thothahan,	question	]	};
179    key <AB08> {	[ Thai_moma,		Thai_thophuthao	]	};
180    key <AB09> {	[ Thai_saraaimaimuan,	Thai_lochula 	]	};
181    key <AB10> {	[ Thai_fofa,		Thai_lu		]	};
182
183    key <BKSL> {	[ Thai_khokhon,		Thai_khokhuat	]	};
184};
185
186partial alphanumeric_keys
187xkb_symbols "olpc" {
188
189    name[Group1]= "Thai";
190    // The OLPC thai layout
191    // walter@laptop.org
192
193    key <TLDE> { [ 0x1000E4F,  0x1000E5B ] };
194    key <AE01> { [ 0x1000E3F,  0x1000E45 ] };
195    key <AE02> { [     slash,  0x1000E51 ] };
196    key <AE03> { [     minus,  0x1000E52 ] };
197    key <AE04> { [ 0x1000E20,  0x1000E53 ] };
198    key <AE05> { [ 0x1000E16,  0x1000E54 ] };
199    key <AE06> { [ 0x1000E38,  0x1000E39 ] };
200    key <AE07> { [ 0x1000E36,  0x1000E4E ] };
201    key <AE08> { [ 0x1000E04,  0x1000E55 ] };
202    key <AE09> { [ 0x1000E15,  0x1000E56 ] };
203    key <AE10> { [ 0x1000E08,  0x1000E57 ] };
204    key <AE11> { [ 0x1000E02,  0x1000E58 ] };
205    key <AE12> { [ 0x1000E0A,  0x1000E59 ] };
206
207    key <AD01> { [ 0x1000E46,  0x1000E50 ] };
208    key <AD02> { [ 0x1000E44,   quotedbl ] };
209    key <AD03> { [ 0x1000E33,  0x1000E0E ] };
210    key <AD04> { [ 0x1000E1E,  0x1000E11 ] };
211    key <AD05> { [ 0x1000E30,  0x1000E18 ] };
212    key <AD06> { [ 0x1000E31,  0x1000E4D ] };
213    key <AD07> { [ 0x1000E35,  0x1000E4A ] };
214    key <AD08> { [ 0x1000E23,  0x1000E13 ] };
215    key <AD09> { [ 0x1000E19,  0x1000E2F ] };
216    key <AD10> { [ 0x1000E22,  0x1000E0D ] };
217    key <AD11> { [ 0x1000E1A,  0x1000E10 ] };
218    key <AD12> { [ 0x1000E25,      comma ] };
219
220    key <AC01> { [ 0x1000E1F,  0x1000E24 ] };
221    key <AC02> { [ 0x1000E2B,  0x1000E06 ] };
222    key <AC03> { [ 0x1000E01,  0x1000E0F ] };
223    key <AC04> { [ 0x1000E14,  0x1000E42 ] };
224    key <AC05> { [ 0x1000E40,  0x1000E0C ] };
225    key <AC06> { [ 0x1000E49,  0x1000E47 ] };
226    key <AC07> { [ 0x1000E48,  0x1000E4B ] };
227    key <AC08> { [ 0x1000E32,  0x1000E29 ] };
228    key <AC09> { [ 0x1000E2A,  0x1000E28 ] };
229    key <AC10> { [ 0x1000E27,  0x1000E0B ] };
230    key <AC11> { [ 0x1000E07,     period ] };
231    key <BKSL> { [ 0x1000E05,  0x1000E03 ] };
232
233    key <AB01> { [ 0x1000E1C,  parenleft ] };
234    key <AB02> { [ 0x1000E1B, parenright ] };
235    key <AB03> { [ 0x1000E41,  0x1000E09 ] };
236    key <AB04> { [ 0x1000E2D,  0x1000E2E ] };
237    key <AB05> { [ 0x1000E34,  0x1000E3A ] };
238    key <AB06> { [ 0x1000E37,  0x1000E4C ] };
239    key <AB07> { [ 0x1000E17,   question ] };
240    key <AB08> { [ 0x1000E21,  0x1000E12 ] };
241    key <AB09> { [ 0x1000E43,  0x1000E2C ] };
242    key <AB10> { [ 0x1000E1D,  0x1000E26 ] };
243
244    include "group(olpc)"
245};
246