ge revision 154daed1
1// $XKeyboardConfig: xkeyboard-config/symbols/ge,v 1.9 2008-05-27 22:51:59 svu Exp $
2
3// Georgian Keyboard Layouts by Aiet Kolkhi <aietkolkhi@gmail.com>
4// Full layout descriptions available at http://www.gakartuleba.org/layouts/
5//
6// This includes the following keyboard layouts: Georgian QWERTY; Georgian Ergonomic;
7// Georgian MESS; Georgian AZERTY Tskapo; Georgian Russian.
8//
9// Layouts include Georgian Mkhedruli alphabeth; most layouts also include some special
10// and ancient characters (like Fi, Yn, Elifi, Turned Gan and Ain). Layouts do not
11// include Georgian Asomtavruli or Georgian Khutsuri alphabeths which are also present
12// in Unicode.
13//
14// Georgian Typewriter no longer supported, as it is no longer used in Georgia.
15//
16// some layouts based on Georgian keyboard map, in the so called "latin" layout.
17// 1999, Pablo Saratxaga <srtxg@chanae.alphanet.ch>
18//
19
20partial default alphanumeric_keys
21xkb_symbols "basic" {
22
23    name[Group1]= "Georgia";
24
25    key <TLDE> { [ 0x0100201e, 0x0100201c, 0x0100201e, asciitilde ] };
26    key <AE01> { [ 1, exclam, apostrophe ] };
27    key <AE02> { [ 2, at, 0x0100201e ] };
28    key <AE03> { [ 3, numbersign, 0x0100201c ] };
29    key <AE04> { [ 4, dollar, 0x01002116 ] };
30    key <AE05> { [ 5, percent, EuroSign ] };
31    key <AE06> { [ 6, asciicircum ] };
32    key <AE07> { [ 7, ampersand, section ] };
33    key <AE08> { [ 8, asterisk,	degree ] };
34    key <AE09> { [ 9, parenleft ] };
35    key <AE10> { [ 0, parenright ] };
36    key <AE11> { [ minus, underscore, 0x01002014 ] };
37    key <AE12> { [ equal, plus, 0x01002013 ] };
38
39    key <AD01> { [ 0x010010e5,  Q               ]       };
40    key <AD02> { [ 0x010010ec,  0x010010ed      ]       };
41    key <AD03> { [ 0x010010d4,  E, 0x010010f1   ]       };
42    key <AD04> { [ 0x010010e0,  0x010010e6, 0x010000ae ] };
43    key <AD05> { [ 0x010010e2,  0x010010d7 ] };
44    key <AD06> { [ 0x010010e7,  Y, 0x010010f8   ]       };
45    key <AD07> { [ 0x010010e3,  U               ]       };
46    key <AD08> { [ 0x010010d8,  I, 0x010010f2   ]       };
47    key <AD09> { [ 0x010010dd,  O               ]       };
48    key <AD10> { [ 0x010010de,  P               ]       };
49    key <AD11> { [ bracketleft, braceleft       ]       };
50    key <AD12> { [ bracketright,braceright      ]       };
51
52    key <AC01> { [ 0x010010d0,  A, 0x010010fa   ]       };
53    key <AC02> { [ 0x010010e1,  0x010010e8      ]       };
54    key <AC03> { [ 0x010010d3,  D               ]       };
55    key <AC04> { [ 0x010010e4,  F, 0x010010f6   ]       };
56    key <AC05> { [ 0x010010d2,  G, 0x010010f9   ]       };
57    key <AC06> { [ 0x010010f0,  H, 0x010010f5   ]       };
58    key <AC07> { [ 0x010010ef, 0x010010df, 0x010010f7 ] };
59    key <AC08> { [ 0x010010d9,  K               ]       };
60    key <AC09> { [ 0x010010da,  L               ]       };
61    key <AC10> { [ semicolon, colon             ]       };
62    key <AC11> { [ apostrophe, quotedbl         ]       };
63    key <BKSL> { [ backslash, bar, asciitilde, asciitilde ]  };
64
65    key <LSGT> { [ guillemotleft,guillemotright ]       };
66    key <AB01> { [ 0x010010d6,  0x010010eb      ]       };
67    key <AB02> { [ 0x010010ee,  X, 0x010010f4   ]       };
68    key <AB03> { [ 0x010010ea, 0x010010e9, 0x010000a9 ] };
69    key <AB04> { [ 0x010010d5,  V, 0x010010f3   ]       };
70    key <AB05> { [ 0x010010d1,  B               ]       };
71    key <AB06> { [ 0x010010dc,  N, 0x010010fc   ]       };
72    key <AB07> { [ 0x010010db,  M               ]       };
73    key <AB08> { [ comma, less, guillemotleft   ]       };
74    key <AB09> { [ period, greater, guillemotright    ] };
75    key <AB10> { [ slash, question, 0x010010fb  ]       };
76
77    include "level3(ralt_switch)"
78
79};
80
81partial alphanumeric_keys
82xkb_symbols "qwerty" {
83    include "ge(basic)"
84};
85
86partial alphanumeric_keys
87xkb_symbols "ergonomic" {
88    include "ge(basic)"
89
90    name[Group1]= "Georgia - Ergonomic";
91
92    key <TLDE> { [ 0x0100201e, apostrophe, 0x0100201e, asciitilde ] };
93    key <AE01> { [ exclam, 1, exclam      ] };
94    key <AE02> { [ 0x01002116, 2, at      ] };
95    key <AE03> { [ comma, 3, numbersign, section ] };
96    key <AE04> { [ semicolon, 4, dollar   ] };
97    key <AE05> { [ percent, 5, EuroSign	 ] };
98    key <AE06> { [ colon, 6, asciicircum  ] };
99    key <AE07> { [ question, 7, ampersand ] };
100    key <AE08> { [ period, 8, asterisk, degree ] };
101    key <AE09> { [ parenleft, 9, parenleft, guillemotleft ] };
102    key <AE10> { [ parenright, 0, parenright, guillemotright ] };
103    key <AE11> { [ minus, plus, 0x01002014, underscore ] };
104    key <AE12> { [ 0x0100201c, equal, equal ] };
105
106    key <AD01> { [ 0x010010e9, noSymbol      ]       };
107    key <AD02> { [ 0x010010de, noSymbol      ]       };
108    key <AD03> { [ 0x010010e3, noSymbol      ]       };
109    key <AD04> { [ 0x010010eb, noSymbol, noSymbol, 0x010000ae ] };
110    key <AD05> { [ 0x010010ed, noSymbol, noSymbol, 0x010010d7 ] };
111    key <AD06> { [ 0x010010e2, noSymbol, noSymbol, 0x010010f8 ] };
112    key <AD07> { [ 0x010010d7, noSymbol      ]       };
113    key <AD08> { [ 0x010010dc, noSymbol, 0x010010fc, I ] };
114    key <AD09> { [ 0x010010d5, noSymbol, 0x010010f3    ] };
115    key <AD10> { [ 0x010010e8, noSymbol                ] };
116    key <AD11> { [ 0x010010d9, noSymbol, bracketleft, braceleft  ] };
117    key <AD12> { [ 0x010010e5, noSymbol, bracketright,braceright ] };
118
119    key <AC01> { [ 0x010010ee, noSymbol, 0x010010f4    ] };
120    key <AC02> { [ 0x010010d8, noSymbol, 0x010010f2    ] };
121    key <AC03> { [ 0x010010d0, noSymbol, 0x010010fa, D ] };
122    key <AC04> { [ 0x010010d4, noSymbol, 0x010010f1    ] };
123    key <AC05> { [ 0x010010dd, noSymbol     ]       };
124    key <AC06> { [ 0x010010d3, noSymbol     ]       };
125    key <AC07> { [ 0x010010db, noSymbol     ]       };
126    key <AC08> { [ 0x010010e1, noSymbol     ]       };
127    key <AC09> { [ 0x010010e0, noSymbol, L  ]       };
128    key <AC10> { [ 0x010010d1, noSymbol, colon         ] }; 
129    key <AC11> { [ 0x010010d2, noSymbol, 0x010010f9, quotedbl ] };
130    key <BKSL> { [ slash, section, backslash, bar ] };
131
132    key <LSGT> { [ guillemotleft,guillemotright   ] };
133    key <AB01> { [ 0x010010ef, noSymbol      ]      };
134    key <AB02> { [ 0x010010f0, noSymbol, 0x010010f5, X ] };
135    key <AB03> { [ 0x010010e7, noSymbol, 0x010010f8, C ] };
136    key <AB04> { [ 0x010010e6, noSymbol, 0x010010f7, V ] };
137    key <AB05> { [ 0x010010df, noSymbol                ] };
138    key <AB06> { [ 0x010010d6, noSymbol                ] };
139    key <AB07> { [ 0x010010ea, noSymbol, noSymbol, M   ] };
140    key <AB08> { [ 0x010010da, noSymbol, guillemotleft, less ] };
141    key <AB09> { [ 0x010010e4, noSymbol, 0x010010f6, guillemotright ] };
142    key <AB10> { [ 0x010010ec, noSymbol, 0x010010fb    ] };
143
144    include "level3(ralt_switch)"
145
146};
147
148partial alphanumeric_keys
149xkb_symbols "mess" {
150    include "ge(basic)"
151
152    name[Group1]= "Georgia - MESS";
153
154    key <TLDE> { [ 0x010010ed, backslash, quoteleft ] };
155    key <AE01> { [ 1, exclam, apostrophe ] };
156    key <AE02> { [ 2, at, asciitilde ] };
157    key <AE03> { [ 3, 0x01002116, numbersign ]	};
158    key <AE04> { [ 4, dollar, EuroSign ] };
159    key <AE05> { [ 5, percent ]	};
160    key <AE06> { [ 6, asciicircum ] };
161    key <AE07> { [ 7, ampersand, section ] };
162    key <AE08> { [ 8, asterisk, degree ] };
163    key <AE09> { [ 9, parenleft ] };
164    key <AE10> { [ 0, parenright, 0x01002014 ] };
165    key <AE11> { [ minus, underscore, 0x01002013 ] };
166    key <AE12> { [ 0x010010df,	plus, bar   ]  };
167    key <AD01> { [ 0x010010e5,	Q ] };
168    key <AD02> { [ 0x010010ec,	W ] };
169    key <AD03> { [ 0x010010d4,	E ] };
170    key <AD04> { [ 0x010010e0,	R ] };
171    key <AD05> { [ 0x010010e2,	T ] };
172    key <AD06> { [ 0x010010e7,	Y ] };
173    key <AD07> { [ 0x010010e3,	U ] };
174    key <AD08> { [ 0x010010d8,	I, 0x010010f2 ] };
175    key <AD09> { [ 0x010010dd,	O ] };
176    key <AD10> { [ 0x010010de,	P ] };
177    key <AD11> { [ 0x010010e8,	bracketleft,  guillemotleft  ] };
178    key <AD12> { [ 0x010010e6,	bracketright, guillemotright ] };
179    key <AC01> { [ 0x010010d0,	A, 0x010010fa ] };
180    key <AC02> { [ 0x010010e1,	S ] };
181    key <AC03> { [ 0x010010d3,	D ] };
182    key <AC04> { [ 0x010010e4,	F, 0x010010f6 ] };
183    key <AC05> { [ 0x010010d2,	G, 0x010010f9 ] };
184    key <AC06> { [ 0x010010f0,	H, 0x010010f1 ]	};
185    key <AC07> { [ 0x010010ef,	J, 0x010010f7 ] };
186    key <AC08> { [ 0x010010d9,	K ] };
187    key <AC09> { [ 0x010010da,	L ] };
188    key <AC10> { [ 0x010010d7,0x0100201e ] };
189    key <AC11> { [ 0x010010e9,0x0100201c ] };
190    key <BKSL> { [ equal, slash, bar ]	};
191
192    key <LSGT> { [ guillemotleft, guillemotright ] };
193    key <AB01> { [ 0x010010d6, Z, 0x010010f5 ] };
194    key <AB02> { [ 0x010010ee, X, 0x010010f4 ]	};
195    key <AB03> { [ 0x010010ea,	C ] };
196    key <AB04> { [ 0x010010d5,	V, 0x010010f3 ]	};
197    key <AB05> { [ 0x010010d1,	B ] };
198    key <AB06> { [ 0x010010dc,	N, 0x010010fc ] };
199    key <AB07> { [ 0x010010db,	M ] };
200    key <AB08> { [ comma, semicolon, less ] };
201    key <AB09> { [ period, colon, greater ] };
202    key <AB10> { [ 0x010010eb, question, 0x010010fb ] };
203
204    include "level3(ralt_switch)"
205
206};
207
208partial alphanumeric_keys
209xkb_symbols "ru" {
210
211    name[Group1]= "Georgia - Russian";
212
213    key <TLDE> { [ asciicircum, asciitilde      ]       };
214    key <AE01> { [         1,    exclam         ]       };
215    key <AE02> { [         2,    at             ]       };
216    key <AE03> { [         3,    numbersign     ]       };
217    key <AE04> { [         4,    semicolon      ]       };
218    key <AE05> { [         5,    colon          ]       };
219    key <AE06> { [         6,    comma          ]       };
220    key <AE07> { [         7,    period         ]       };
221    key <AE08> { [         8,    asterisk       ]       };
222    key <AE09> { [         9,    parenleft      ]       };
223    key <AE10> { [         0,    parenright     ]       };
224    key <AE11> { [     minus,    underscore     ]       };
225    key <AE12> { [ numbersign,   bar            ]       };
226
227    key <AD01> { [ 0x010010e6,  q               ]       };
228    key <AD02> { [ 0x010010ea,  w               ]       };
229    key <AD03> { [ 0x010010e3,  e               ]       };
230    key <AD04> { [ 0x010010d9,  r               ]       };
231    key <AD05> { [ 0x010010d4,  t               ]       };
232    key <AD06> { [ 0x010010dc,  y               ]       };
233    key <AD07> { [ 0x010010d2,  u               ]       };
234    key <AD08> { [ 0x010010e8,  i               ]       };
235    key <AD09> { [ 0x010010ec,  o               ]       };
236    key <AD10> { [ 0x010010d6,  p               ]       };
237    key <AD11> { [ 0x010010ee,  bracketleft     ]       };
238    key <AD12> { [ 0x010010ef,  bracketright    ]       };
239
240    key <AC01> { [ 0x010010e4,  a               ]       };
241    key <AC02> { [ 0x010010d7,  s               ]       };
242    key <AC03> { [ 0x010010d5,  d               ]       };
243    key <AC04> { [ 0x010010d0,  f               ]       };
244    key <AC05> { [ 0x010010de,  g               ]       };
245    key <AC06> { [ 0x010010e0,  h               ]       };
246    key <AC07> { [ 0x010010dd,  j               ]       };
247    key <AC08> { [ 0x010010da,  k               ]       };
248    key <AC09> { [ 0x010010d3,  l               ]       };
249    key <AC10> { [ 0x010010df,  semicolon       ]       };
250    key <AC11> { [ 0x010010eb,  percent         ]       };
251    key <BKSL> { [ backslash,    bar            ]       };
252
253    key <LSGT> { [ guillemotleft,guillemotright ]       };
254    key <AB01> { [ 0x010010ed,  z               ]       };
255    key <AB02> { [ 0x010010e9,  x               ]       };
256    key <AB03> { [ 0x010010e1,  c               ]       };
257    key <AB04> { [ 0x010010db,  v               ]       };
258    key <AB05> { [ 0x010010d8,  b               ]       };
259    key <AB06> { [ 0x010010e2,  n               ]       };
260    key <AB07> { [ 0x010010e5,  m               ]       };
261    key <AB08> { [ 0x010010d1,  less            ]       };
262    key <AB09> { [ 0x010010e7,  greater         ]       };
263    key <AB10> { [ 0x010010f0,  question        ]       };
264
265};
266
267partial alphanumeric_keys
268xkb_symbols "os" {
269
270    include "ru(os_legacy)"
271
272    name[Group1]= "Georgia - Ossetian";
273
274};
275
276