a bit of cleanup for tamil etc
[xorg/xkeyboard-config] / symbols / lk
1 // $XKeyboardConfig$
2
3 // based on a keyboard map from an 'xkb/symbols/tml' file
4 //
5 // $XFree86: xc/programs/xkbcomp/symbols/tml,v 1.2 2002/11/22 04:03:28 dawes Exp $
6
7 default partial alphanumeric_keys
8 xkb_symbols "basic" {
9     include "us(basic)"
10     name[Group1]= "Sri Lanka";
11 };
12
13 partial alphanumeric_keys 
14 xkb_symbols "tam_unicode" {
15
16 // Description: A keymap based on the TamilNet'99 typewriter keyboard 
17 // Encoding: Unicode (http://www.unicode.org)
18 // Author: Thuraiappah Vaseeharan <vasee@ieee.org>
19 // Date  : Sat Feb  9 21:10:48 CST 2002
20 // Mapping:
21   
22     name[Group1]= "Sri Lanka - Tamil Unicode";
23
24     // granthas
25     key <AE01> {  [ 0x1000b83 ] } ;
26     key <AE03> {  [ 0x1000b9c ] } ;
27     key <AE04> {  [ 0x1000bb7 ] } ;
28     key <AE05> {  [ 0x1000bb8 ] } ;
29     key <AE06> {  [ 0x1000bb9 ] } ;
30         
31     // Qrow
32     key <AD01> {  [ 0x1000b9e ] };
33     key <AD02> {  [ 0x1000bb1 ] };
34     key <AD03> {  [ 0x1000ba8 ] };
35     key <AD04> {  [ 0x1000b9a ] };
36     key <AD05> {  [ 0x1000bb5 ] };
37     key <AD06> {  [ 0x1000bb2 ] };
38     key <AD07> {  [ 0x1000bb0 ] };
39     key <AD08> {  [ 0x1000bc8, 0x1000b90 ] };
40     key <AD09> {  [ 0x1000bca, 0x1000bcb ] };
41     key <AD10> {  [ 0x1000bbf, 0x1000bc0 ] };
42     key <AD11> {  [ 0x1000bc1, 0x1000bc2 ] };
43
44     // Arow
45     key <AC01> { [ 0x1000baf ] };
46     key <AC02> { [ 0x1000bb3 ] };
47     key <AC03> { [ 0x1000ba9 ] };
48     key <AC04> { [ 0x1000b95 ] };
49     key <AC05> { [ 0x1000baa ] };
50     key <AC06> { [ 0x1000bbe, 0x1000bb4 ] };
51     key <AC07> { [ 0x1000ba4 ] };
52     key <AC08> { [ 0x1000bae ] };
53     key <AC09> { [ 0x1000b9f ] };
54     key <AC10> { [ 0x1000bcd ] };
55     key <AC11> { [ 0x1000b99 ] };
56     
57     // Zrow
58     key <AB01> { [ 0x1000ba3 ]  };
59     key <AB02> { [ 0x1000b92, 0x1000b93 ]  };
60     key <AB03> { [ 0x1000b89, 0x1000b8a ]  };
61     key <AB04> { [ 0x1000b8e, 0x1000b8f ]  };
62     key <AB05> { [ 0x1000bc6, 0x1000bc7 ]  };
63     key <AB06> { [ 0x1000b94, 0x1000bcc ]  };
64     key <AB07> { [ 0x1000b85, 0x1000b86 ]  };
65     key <AB08> { [ 0x1000b87, 0x1000b88 ]  };
66 };
67
68 partial alphanumeric_keys 
69 xkb_symbols "tam_TSCII" {
70
71 // Description  : A Tamil typewrite-style keymap 
72 //                loosely based on TamilNet'99 reommendations 
73 // Encoding     : TSCII (http://www.tscii.org)
74 // Author       : Thuraiappah Vaseeharan <vasee@ieee.org>
75 // Last Modified: Sat Jan  5 17:11:26 CST 2002
76
77     name[Group1]= "Sri Lanka - Tamil TSCII Typewriter";
78
79     key <AE01> {  [ 0x10000b7, 0x10000a4 ] }; // aytham
80     key <AE02> {  [ 0x1000082, 0x10000a5 ] }; // shri
81     key <AE03> {  [ 0x1000083, 0x1000088 ] }; // ja
82     key <AE04> {  [ 0x1000084, 0x1000089 ] }; // sha
83     key <AE05> {  [ 0x1000085, 0x100008a ] }; // sa
84     key <AE06> {  [ 0x1000086, 0x100008b ] }; // ha
85     key <AE07> {  [ 0x1000087, 0x100008c ] }; // ksha
86         
87     // Qrow
88     key <AD01> {  [ 0x10000bb, 0x100009a ] }; // nja
89     key <AD02> {  [ 0x10000c8, 0x10000da ] }; // Ra
90     key <AD03> {  [ 0x10000bf, 0x10000d1 ] }; // NNa
91     key <AD04> {  [ 0x10000ba, 0x10000cd ] }; // ca
92     key <AD05> {  [ 0x10000c5, 0x10000d7 ] }; // va
93     key <AD06> {  [ 0x10000c4, 0x10000d6 ] }; // la
94     key <AD07> {  [ 0x10000c3, 0x10000d5 ] }; // ra
95     key <AD08> {  [ 0x10000a8, 0x10000b3 ] }; // sangili, ai
96     key <AD09> {  [ 0x10000ca, 0x10000cb ] }; // di, dI
97     key <AD10> {  [ 0x10000a2, 0x10000a3 ] }; // visiri
98     key <AD11> {  [ dead_acute, 0x10000a3 ] }; // Ukaaram
99
100     // Arow
101     key <AC01> { [ 0x10000c2, 0x10000d4 ] }; // ya
102     key <AC02> { [ 0x10000c7, 0x10000d9 ] }; // La
103     key <AC03> { [ 0x10000c9, 0x10000db ] }; // na
104     key <AC04> { [ 0x10000b8, 0x10000cc ] }; // ka
105     key <AC05> { [ 0x10000c0, 0x10000d2 ] }; // pa
106     key <AC06> { [ dead_grave,0x10000a1 ] }; // pulli,aravu
107     key <AC07> { [ 0x10000be, 0x10000d0 ] }; // tha
108     key <AC08> { [ 0x10000c1, 0x10000d3 ] }; // ma
109     key <AC09> { [ 0x10000bc, 0x10000ce ] }; // da
110     key <AC10> { [ 0x10000c6, 0x10000d8 ] }; // zha
111     key <AC11> { [ 0x10000b9, 0x1000099 ] }; // nga
112     
113     // Zrow
114     key <AB01> { [ 0x10000bd, 0x10000cf ] }; // Na
115     key <AB02> { [ 0x10000b4, 0x10000b5 ] }; // o, O
116     key <AB03> { [ 0x10000af, 0x10000b0 ] }; // u, U
117     key <AB04> { [ 0x10000b1, 0x10000b2 ] }; // e, E
118     key <AB05> { [ 0x10000a6, 0x10000a7 ] }; // kombus
119     key <AB06> { [ 0x10000b6, 0x10000aa ] }; // au
120     key <AB07> { [ 0x10000ab, 0x10000ac ] }; // a, A
121     key <AB08> { [ 0x10000fe, 0x10000ae ] }; // i, I
122
123 };
124
125 partial alphanumeric_keys 
126 xkb_symbols "tam_TAB" {
127
128 // Description: A keymap based on the TamilNet'99 typewriter keyboard 
129 // Encoding: TAB (http://www.tamilnet99.org)
130 // Author: Thuraiappah Vaseeharan <t_vasee@yahoo.com>
131 // Date  : Sun Aug 12 02:23:00 CDT 2001
132
133     name[Group1]= "Sri Lanka - Tamil TAB Typewriter";
134
135     // numeral row
136     key <AE01> {  [ 0x10000e7, 0x10000a7 ] } ;
137     key <AE02> {  [ 0x10000fa, 0x10000a8 ] } ;
138     key <AE03> {  [ 0x10000fb ] } ;
139     key <AE04> {  [ 0x10000fc ] } ;
140     key <AE05> {  [ 0x10000fd ] } ;
141     key <AE06> {  [ 0x10000fe ] } ;
142     key <AE07> {  [ 0x10000ff ] } ;
143         
144     // q-row
145     key <AD01> {  [ 0x10000eb, 0x10000b3 ] };
146     key <AD02> {  [ 0x10000f8, 0x10000c1 ] };
147     key <AD03> {  [ 0x10000ef, 0x10000b8 ] };
148     key <AD04> {  [ 0x10000ea, 0x10000b2 ] };
149     key <AD05> {  [ 0x10000f5, 0x10000be ] };
150     key <AD06> {  [ 0x10000f4, 0x10000bd ] };
151     key <AD07> {  [ 0x10000f3, 0x10000bc ] };
152     key <AD08> {  [ 0x10000ac, 0x10000e4 ] };
153     key <AD09> {  [ 0x10000ae, 0x10000af ] };
154     key <AD10> {  [ 0x10000a4, 0x10000a6 ] };
155     key <AD11> {  [ dead_circumflex, 0x10000a6 ] }; // Ukaaram
156
157     // a-row
158     key <AC01> {  [ 0x10000f2, 0x10000bb ] };
159     key <AC02> {  [ 0x10000f7, 0x10000c0 ] };
160     key <AC03> {  [ 0x10000f9, 0x10000c2 ] };
161     key <AC04> {  [ 0x10000e8, 0x10000b0 ] };
162     key <AC05> {  [ 0x10000f0, 0x10000b9 ] };
163     key <AC06> {  [ 0x10000a2, 0x10000a3 ] };
164     key <AC07> {  [ 0x10000ee, 0x10000b6 ] };
165     key <AC08> {  [ 0x10000f1, 0x10000ba ] };
166     key <AC09> {  [ 0x10000ec, 0x10000b4 ] };
167     key <AC10> {  [ 0x10000f6, 0x10000bf ] };
168     key <AC11> {  [ 0x10000e9, 0x10000b1 ] };
169     
170     // z-row
171     key <AB01> {  [ 0x10000ed, 0x10000b5 ] };
172     key <AB02> {  [ 0x10000e5, 0x10000e6 ] };
173     key <AB03> {  [ 0x10000e0, 0x10000e1 ] };
174     key <AB04> {  [ 0x10000e2, 0x10000e3 ] };
175     key <AB05> {  [ 0x10000aa, 0x10000ab ] };
176     key <AB06> {  [ 0x10000ac, 0x10000a3 ] };
177     key <AB07> {  [ 0x10000dc, 0x10000dd ] };
178     key <AB08> {  [ 0x10000de, 0x10000df ] };
179 };
180
181 // X Keyboard Extension file for Sinhala (Sri Lanka) (2004-04-22)
182 // Maintainer  : Harshula Jayasuriya <hash@jayasolutions.cjb.net>
183 // Last Updated: 2004-11-14
184 // This is a static phonetic mapping for a standard US-English keyboard
185 // (qwerty)
186 // http://www.nongnu.org/sinhala/doc/keymaps/sinhala-keyboard_3.html
187
188 // Repaya, Rakaransaya and Yansaya aren't inserted with A-r, R and Y,
189 // respectively. The problem lies with the XKB infrastructure which
190 // only allows a one-to-one mapping of keycodes to Unicode codepoints.
191 // Unfortunately, the 3 mentioned glyphs actually consists of 3
192 // Unicode codepoints each. The resultant is that the user must
193 // manually construct the glyph by typing each of the 3 codepoints.
194 // Alt-backslash represents the 'join' key, this requires
195 // two codepoints, hence it also has to be manually constructed.
196
197 // Repaya = rayanna,AL,ZWJ
198 // Rakaransaya = AL,ZWJ,rayanna
199 // Yansaya = AL,ZWJ,yayanna
200 // join = AL,ZWJ
201
202 // Where,
203 // AL = Al Lakuna = Alt-a
204 // ZWJ = Zero Width Joiner = Alt-Shift-Backslash
205 // rayanna = r
206 // yayanna = y
207
208 partial alphanumeric_keys
209 xkb_symbols "sin_phonetic" {
210
211   include "us"
212   name[Group1] = "Sri Lanka - Sinhala phonetic";
213   key.type = "FOUR_LEVEL";
214
215   // q - p
216   key <AD01> { [ 0x01000d8d, 0x01000d8e, 0x01000dd8, 0x01000df2 ] };
217   key <AD02> { [ 0x01000d87, 0x01000d88, 0x01000dd0, 0x01000dd1 ] };
218   key <AD03> { [ 0x01000d91, 0x01000d92, 0x01000dd9, 0x01000dda ] };
219   key <AD04> { [ 0x01000dbb, 0x01000dca, 0x01000dbb, NoSymbol ] };
220   key <AD05> { [ 0x01000da7, 0x01000da8, 0x01000dad, 0x01000dae ] };
221   key <AD06> { [ 0x01000dba, 0x01000dca, NoSymbol, NoSymbol ] };
222   key <AD07> { [ 0x01000d8b, 0x01000d8c, 0x01000dd4, 0x01000dd6 ] };
223   key <AD08> { [ 0x01000d89, 0x01000d8a, 0x01000dd2, 0x01000dd3 ] };
224   key <AD09> { [ 0x01000d94, 0x01000d95, 0x01000ddc, 0x01000ddd ] };
225   key <AD10> { [ 0x01000db4, 0x01000db5, NoSymbol, NoSymbol ] };
226
227   // a - l
228   key <AC01> { [ 0x01000d85, 0x01000d86, 0x01000dca, 0x01000dcf ] };
229   key <AC02> { [ 0x01000dc3, 0x01000dc2, 0x01000dc1, NoSymbol ] };
230   key <AC03> { [ 0x01000da9, 0x01000daa, 0x01000daf, 0x01000db0 ] };
231   key <AC04> { [ 0x01000dc6, 0x01000d93, 0x01000ddb, NoSymbol ] };
232   key <AC05> { [ 0x01000d9c, 0x01000d9d, 0x01000d9f, NoSymbol ] };
233   key <AC06> { [ 0x01000dc4, 0x01000d96, 0x01000dde, NoSymbol ] };
234   key <AC07> { [ 0x01000da2, 0x01000da3, 0x01000da6, NoSymbol ] };
235   key <AC08> { [ 0x01000d9a, 0x01000d9b, 0x01000d8f, 0x01000d90 ] };
236   key <AC09> { [ 0x01000dbd, 0x01000dc5, 0x01000ddf, 0x01000df3 ] };
237
238   // z - m
239   key <AB01> { [ 0x01000da4, 0x01000da5, NoSymbol, NoSymbol ] };
240   key <AB02> { [ 0x01000dac, 0x01000db3, NoSymbol, NoSymbol ] };
241   key <AB03> { [ 0x01000da0, 0x01000da1, NoSymbol, NoSymbol ] };
242   key <AB04> { [ 0x01000dc0, 0x01000d82, 0x01000d83, NoSymbol ] };
243   key <AB05> { [ 0x01000db6, 0x01000db7, NoSymbol, NoSymbol ] };
244   key <AB06> { [ 0x01000db1, 0x01000dab, 0x01000d9e, NoSymbol ] };
245   key <AB07> { [ 0x01000db8, 0x01000db9, NoSymbol, NoSymbol ] };
246
247   // '.' - Fullstop
248   key <AB09> { [ any, any, 0x01000df4, NoSymbol ] };
249
250   // Backslash
251   key <BKSL> { [ any, any, 0x01000dca, 0x0100200d  ] };
252
253   // Space
254   key <SPCE> { [ space, nobreakspace, 0x0100200c, NoSymbol ] };
255
256   include "level3(ralt_switch)"
257 };
258