added ms elite geometry, b.fd.o#12753
[xorg/xkeyboard-config] / geometry / microsoft
1 // $Xorg: microsoft,v 1.3 2000/08/17 19:54:35 cpqbld Exp $
2 //
3 default xkb_geometry "natural" {
4
5     // Approximate layout for a Microsoft Natural Keyboard
6     description= "Microsoft Natural Keyboard";
7     width= 550;
8     height= 190;
9
10     shape.cornerRadius= 1;
11     shape "LDEF" { { [ 18,18] }, { [2,1], [15,15] } };
12     shape "TABK" { { [ 26,18] }, { [2,1], [23,15] } }; 
13     shape "CAPS" { { [ 30,18] }, { [2,1], [23,15] } }; 
14     shape "LFSH" { { [ 41,18] }, { [2,1], [38,15] } };
15     shape "KEY6" { { [ 22,18] }, { [2,1], [15,15] } };
16     shape "KEYT" { { [ 33,18] }, { [2,1], [15,15] } };
17     shape "KEYG" { { [ 29,18] }, { [2,1], [15,15] } };
18     shape "LCTL" { 
19         approx= { [ 32, 22 ] },
20         { [  0, 0], [ 32, 0 ], [ 32, 23 ], [ 0, 22 ] },
21         { [  2, 1], [ 29, 1 ], [ 29, 17 ], [ 2, 15 ] } 
22     };
23     shape "LWIN" { 
24         approx= { [ 32, 23 ] },
25         { [  0, 0], [ 32, 0 ], [ 32, 24 ], [ 0, 23 ] },
26         { [  2, 1], [ 29, 1 ], [ 29, 18 ], [ 2, 17 ] } 
27     };
28     shape "LALT" { 
29         approx= { [ 32, 24 ] },
30         { [  0, 0], [ 32, 0 ], [ 32, 25 ], [ 0, 24 ] },
31         { [  2, 1], [ 29, 1 ], [ 29, 20 ], [ 2, 19 ] } 
32     };
33     shape "RDEF" { { [ 18,18] }, { [3,1], [15,15] } };
34     shape "KEY7" {      { [ 28, 18 ] }, { [ 14, 1], [26, 15] } };
35     shape "KEYH" {      { [ 24, 18 ] }, { [ 10, 1], [22, 15] } };
36     shape "KEYN" {      { [ 32, 18 ] }, { [ 18, 1], [30, 15] } };
37     shape "BKSP" {      { [ 41, 18 ] }, { [  3, 1], [39, 15] } };
38     shape "BKSL" {      { [ 24, 18 ] }, { [  3, 1], [22, 15] } };
39     shape "RTRN" {      { [ 37, 18 ] }, { [  3, 1], [35, 15] } };
40     shape "RTSH" {      { [ 43, 18 ] }, { [  3, 1], [41, 15] } };
41     shape "RALT" { 
42         approx= { [ 27, 24 ] },
43         { [  0, 0], [ 27, 0 ], [ 27, 24 ], [ 0, 25 ] },
44         { [  3, 1], [ 25, 1 ], [ 25, 19 ], [ 3, 20 ] } 
45     };
46     shape "RWIN" { 
47         approx= { [ 27, 23 ] },
48         { [  0, 0], [ 27, 0 ], [ 27, 23 ], [ 0, 24 ] },
49         { [  3, 1], [ 25, 1 ], [ 25, 18 ], [ 3, 19 ] } 
50     };
51     shape "MENU" { 
52         approx= { [ 27, 21 ] },
53         { [  0, 0], [ 27, 0 ], [ 27, 21 ], [ 0, 23 ] },
54         { [  3, 1], [ 25, 1 ], [ 25, 16 ], [ 3, 17 ] } 
55     };
56     shape "RCTL" { 
57         approx= { [ 27, 19 ] },
58         { [  0, 0], [ 27, 0 ], [ 27, 19 ], [ 0, 21 ] },
59         { [  3, 1], [ 25, 1 ], [ 25, 14 ], [ 3, 15 ] } 
60     };
61     shape "KPAD" { { [ 18, 37 ] },      { [ 3, 1 ], [ 16, 34 ] } };
62     shape "KP0"  { { [ 37, 18 ] },      { [ 3, 1 ], [ 35, 15 ] } };
63     shape "SPCE" {
64         { [  4, 3], [42,10], [44, 0], [88, 0], [90,10], [130, 3], 
65           [134,26], [99,30], [67,33], [33,30], [  0,26] },
66         { [  6, 4.5], [43,11], [45, 1], [87, 1], [89,11], [128, 4.5], 
67           [131,23], [99,28], [67,32], [33,28], [  3,23] }
68     };
69
70     shape "EDGE" {
71         cornerRadius= 2,
72         { [  25,   0 ],  [ 177,  17 ],  [ 329,   0 ], [ 542,   0 ],
73           [ 542, 150 ],  [ 354, 150 ],  [ 177, 185 ], [   0, 150 ] }
74     };
75     outline "Edges" {
76         top= 0;
77         left= 0;
78         shape= "EDGE";
79     };
80
81     row.left= 1;
82     key.shape= "LDEF";
83     key.gap=  1;
84     section "LeftFunction" {
85         top= 10;
86         left= 40;
87         angle= 10;
88         row {
89             top= 1;
90             keys {  <ESC>, { <FK01>, 12 }, <FK02>, <FK03>, <FK04>, <FK05> };
91         };
92     }; // End of "LeftFunction" section
93
94     section "LeftAlpha" {
95         top= 47;
96         left= 30;
97         angle= 10;
98         row {
99             top= 1;
100             keys {      <AE00>, <AE01>, <AE02>, <AE03>, <AE04>,
101                         <AE05>, { <AE06>, "KEY6" }
102             };
103         };
104         row {
105             top= 20;
106             keys {      { <TAB>, "TABK" },
107                         <AD01>, <AD02>, <AD03>, <AD04>, { <AD05>, "KEYT" }
108             };
109         };
110         row {
111             top= 39;
112             keys {      { <CAPS>, "CAPS" },
113                         <AC01>, <AC02>, <AC03>, <AC04>, { <AC05>, "KEYG" }
114             };
115         };
116         row {
117             top= 58;
118             keys {      { <LFSH>, "LFSH" }, 
119                         <AB01>, <AB02>, <AB03>, <AB04>, <AB05>
120             };
121         };
122         row {
123             top= 77;
124             keys {  { <LCTL>, "LCTL" }, { <LWIN>, "LWIN" }, { <LALT>, "LALT" } };
125         };
126     }; // End of "LeftAlpha" section
127
128     key.shape= "RDEF";
129     section "RightFunction" {
130         top= 32;
131         left= 195;
132         angle= -10;
133         row {
134             top= 1;
135             left= 1;
136             keys {  <FK06>, <FK07>, <FK08>, <FK09>, <FK10>, <FK11>, <FK12> };
137         };
138     }; // End of "RightFunction" section
139
140     section "RightAlpha" {
141         top= 71;
142         left= 190;
143         angle= -10;
144         row.left= 1;
145         row {
146             top= 1;
147             keys {      { <AE07>, "KEY7" },
148                         <AE08>, <AE09>, <AE10>, <AE11>, <AE12>, 
149                         { <BKSP>, "BKSP" }
150             };
151         };
152         row {
153             top= 20;
154             keys { 
155                 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, <AD11>, <AD12>,
156                 { <BKSL>, "BKSL" }
157             };
158         };
159         row {
160             top= 39;
161             keys {      { <AC06>, "KEYH" },
162                         <AC07>, <AC08>, <AC09>, <AC10>, <AC11>,
163                         { <RTRN>, "RTRN" }
164             };
165         };
166         row {
167             top= 58;
168             keys {      { <AB06>, "KEYN" },
169                         <AB07>, <AB08>, <AB09>, <AB10>,
170                         { <RTSH>, "RTSH" }
171             };
172         };
173         row {
174             top= 77;
175             left= 40;
176             keys {      { <RALT>, "RALT" }, { <RWIN>, "RWIN" }, 
177                         { <MENU>, "MENU" }, { <RCTL>, "RCTL" }
178             };
179         };
180     }; // End of "RightAlpha" section
181
182     section "SpaceBar" {
183         top= 139;
184         left= 111;
185         key.shape= "SPCE";
186         row { keys { <SPCE> }; };
187     };
188
189     section "Editing" {
190         top= 15;
191         left= 385;
192         row {
193             top= 1;
194             keys { <PRSC>, <SCLK>, <PAUS> };
195         };
196         row {
197             top= 33;
198             keys { <INS>, <HOME>, <PGUP> };
199         };
200         row {
201             top= 53;
202             keys { <DELE>, <END>, <PGDN> };
203         };
204         row {
205             top= 91;
206             left= 20;
207             keys { <UP> };
208         };
209         row {
210             top= 109;
211             keys { <LEFT>, <DOWN>, <RGHT> };
212         };
213     }; // End of "Editing" section
214
215     shape "LED"  { 
216         cornerRadius= 0,
217         { [  3,  1 ] }
218     };
219     indicator.onColor= "green";
220     indicator.offColor= "green30";
221     indicator.left= 177;
222     indicator.shape= "LED";
223     indicator "Num Lock"     { top= 90; };
224     indicator "Caps Lock"    { top= 107; };
225     indicator "Scroll Lock"  { top= 127; };
226     
227     section "Keypad" {
228         top= 47;
229         left= 456;
230         row {
231             top= 1;
232             keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
233         };
234         row {
235             top= 20;
236             keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD" } };
237         };
238         row {
239             top= 39;
240             keys { <KP4>, <KP5>, <KP6> };
241         };
242         row {
243             top= 58;
244             keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD" } };
245         };
246         row {
247             top= 77;
248             keys { { <KP0>, "KP0" }, <KPDL> };
249         };
250     }; // End of "Keypad" section
251
252     alias <AC00> = <CAPS>;
253     alias <AA00> = <LCTL>;
254 };
255
256 // Approximate layout for a Microsoft Natural(R) Keyboard Elite
257 // 
258 // Modified from // $Xorg: microsoft,v 1.3 2000/08/17 19:54:35 cpqbld Exp $
259 // by Pavel Kurashov <pavell@mail.ru> Mon Oct  8 22:08:20 NOVST 2007
260 //
261 // * Function, editing and navigation keys are reduced height
262 // * Navigation keys are repositioned in two column
263 // * Leds are enlarged for better look
264 // * "BKSP"  alligned with "BKSL" and "RTRN"
265 // * Ouline Edges slightly modified
266 //
267 xkb_geometry "elite" {
268
269     // Approximate layout for a Microsoft Natural(R) Keyboard Elite
270     description= "Microsoft Natural(r) Keyboard Elite";
271     width= 495;
272     height= 190;
273
274     shape.cornerRadius= 1;
275     shape "LDEF" { { [ 18,18] }, { [2,1], [15,15] } };
276     shape "FKEY" { { [ 18,13] }, { [2,1], [15,10] } };
277     shape "TABK" { { [ 26,18] }, { [2,1], [23,15] } }; 
278     shape "CAPS" { { [ 30,18] }, { [2,1], [23,15] } }; 
279     shape "LFSH" { { [ 41,18] }, { [2,1], [38,15] } };
280     shape "KEY6" { { [ 22,18] }, { [2,1], [15,15] } };
281     shape "KEYT" { { [ 33,18] }, { [2,1], [15,15] } };
282     shape "KEYG" { { [ 29,18] }, { [2,1], [15,15] } };
283     shape "LCTL" { 
284         approx= { [ 32, 22 ] },
285         { [  0, 0], [ 32, 0 ], [ 32, 23 ], [ 0, 22 ] },
286         { [  2, 1], [ 29, 1 ], [ 29, 17 ], [ 2, 15 ] } 
287     };
288     shape "LWIN" { 
289         approx= { [ 32, 23 ] },
290         { [  0, 0], [ 32, 0 ], [ 32, 24 ], [ 0, 23 ] },
291         { [  2, 1], [ 29, 1 ], [ 29, 18 ], [ 2, 17 ] } 
292     };
293     shape "LALT" { 
294         approx= { [ 32, 24 ] },
295         { [  0, 0], [ 32, 0 ], [ 32, 25 ], [ 0, 24 ] },
296         { [  2, 1], [ 29, 1 ], [ 29, 20 ], [ 2, 19 ] } 
297     };
298     shape "RDEF" {      { [ 18,18  ] }, { [  2, 1], [15, 15] } };
299     shape "KEY7" {      { [ 28, 18 ] }, { [ 14, 1], [26, 15] } };
300     shape "KEYH" {      { [ 24, 18 ] }, { [ 10, 1], [22, 15] } };
301     shape "KEYN" {      { [ 32, 18 ] }, { [ 18, 1], [30, 15] } };
302     shape "BKSP" {      { [ 32, 18 ] }, { [  2, 1], [30, 15] } };
303     shape "BKSL" {      { [ 24, 18 ] }, { [  2, 1], [22, 15] } };
304     shape "RTRN" {      { [ 37, 18 ] }, { [  2, 1], [35, 15] } };
305     shape "RTSH" {      { [ 43, 18 ] }, { [  2, 1], [41, 15] } };
306     shape "RALT" { 
307         approx= { [ 27, 24 ] },
308         { [  0, 0], [ 27, 0 ], [ 27, 24 ], [ 0, 25 ] },
309         { [  3, 1], [ 25, 1 ], [ 25, 19 ], [ 3, 20 ] } 
310     };
311     shape "RWIN" { 
312         approx= { [ 27, 23 ] },
313         { [  0, 0], [ 27, 0 ], [ 27, 23 ], [ 0, 24 ] },
314         { [  3, 1], [ 25, 1 ], [ 25, 18 ], [ 3, 19 ] } 
315     };
316     shape "MENU" { 
317         approx= { [ 27, 21 ] },
318         { [  0, 0], [ 27, 0 ], [ 27, 21 ], [ 0, 23 ] },
319         { [  3, 1], [ 25, 1 ], [ 25, 16 ], [ 3, 17 ] } 
320     };
321     shape "RCTL" { 
322         approx= { [ 27, 19 ] },
323         { [  0, 0], [ 27, 0 ], [ 27, 19 ], [ 0, 21 ] },
324         { [  3, 1], [ 25, 1 ], [ 25, 14 ], [ 3, 15 ] } 
325     };
326     shape "KPAD" { { [ 18, 37 ] },      { [ 3, 1 ], [ 16, 34 ] } };
327     shape "KP0"  { { [ 37, 18 ] },      { [ 3, 1 ], [ 35, 15 ] } };
328     shape "SPCE" {
329         { [  4, 3], [42,10], [44, 0], [88, 0], [90,10], [130, 3], 
330           [134,26], [99,30], [67,33], [33,30], [  0,26] },
331         { [  6, 4.5], [43,11], [45, 1], [87, 1], [89,11], [128, 4.5], 
332           [131,23], [99,28], [67,32], [33,28], [  3,23] }
333     };
334
335     shape "EDGE" {
336         cornerRadius= 3,
337         { [  32,   15 ],  [140, 33],[ 220,  33 ],  [ 329,   15 ], [ 493,   15 ],
338           [ 493, 150 ],  [ 354, 150 ],  [200, 180], [ 153, 180 ], [   7, 150 ] }
339     };
340     outline "Edges" {
341         top= 0;
342         left= 0;
343         shape= "EDGE";
344     };
345
346     row.left= 1;
347     key.shape= "FKEY";
348     key.gap=  1;
349     section "LeftFunction" {
350         top= 26;
351         left= 40;
352         angle= 10;
353         row {
354             top= 1;
355             keys {  <ESC>, { <FK01>, 12 }, <FK02>, <FK03>, <FK04>, <FK05> };
356         };
357     }; // End of "LeftFunction" section
358
359     key.shape= "LDEF";
360     section "LeftAlpha" {
361         top= 47;
362         left= 30;
363         angle= 10;
364         row {
365             top= 1;
366             keys {      <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
367                         <AE05>, { <AE06>, "KEY6" }
368             };
369         };
370         row {
371             top= 20;
372             keys {      { <TAB>, "TABK" },
373                         <AD01>, <AD02>, <AD03>, <AD04>, { <AD05>, "KEYT" }
374             };
375         };
376         row {
377             top= 39;
378             keys {      { <CAPS>, "CAPS" },
379                         <AC01>, <AC02>, <AC03>, <AC04>, { <AC05>, "KEYG" }
380             };
381         };
382         row {
383             top= 58;
384             keys {      { <LFSH>, "LFSH" }, 
385                         <AB01>, <AB02>, <AB03>, <AB04>, <AB05>
386             };
387         };
388         row {
389             top= 77;
390             keys {  { <LCTL>, "LCTL" }, { <LWIN>, "LWIN" }, { <LALT>, "LALT" } };
391         };
392     }; // End of "LeftAlpha" section
393
394     key.shape= "FKEY";
395     section "RightFunction" {
396         top= 48;
397         left= 195;
398         angle= -10;
399         row {
400             top= 1;
401             left= 1;
402             keys {  <FK06>, <FK07>, <FK08>, <FK09>, <FK10>, <FK11>, <FK12> };
403         };
404     }; // End of "RightFunction" section
405
406     key.shape= "RDEF";
407     section "RightAlpha" {
408         top= 71;
409         left= 190;
410         angle= -10;
411         row.left= 1;
412         row {
413             top= 1;
414             keys {      { <AE07>, "KEY7" },
415                         <AE08>, <AE09>, <AE10>, <AE11>, <AE12>, 
416                         { <BKSP>, "BKSP" }
417             };
418         };
419         row {
420             top= 20;
421             keys { 
422                 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>, <AD11>, <AD12>,
423                 { <BKSL>, "BKSL" }
424             };
425         };
426         row {
427             top= 39;
428             keys {      { <AC06>, "KEYH" },
429                         <AC07>, <AC08>, <AC09>, <AC10>, <AC11>,
430                         { <RTRN>, "RTRN" }
431             };
432         };
433         row {
434             top= 58;
435             keys {      { <AB06>, "KEYN" },
436                         <AB07>, <AB08>, <AB09>, <AB10>,
437                         { <RTSH>, "RTSH" }
438             };
439         };
440         row {
441             top= 77;
442             left= 40;
443             keys {      { <RALT>, "RALT" }, { <RWIN>, "RWIN" }, 
444                         { <MENU>, "MENU" }, { <RCTL>, "RCTL" }
445             };
446         };
447     }; // End of "RightAlpha" section
448
449     section "SpaceBar" {
450         top= 139;
451         left= 111;
452         key.shape= "SPCE";
453         row { keys { <SPCE> }; };
454     };
455
456     section "Editing" {
457         key.shape="FKEY";
458         top= 23;
459         left= 348;
460         row {
461             top= 0;
462             keys { <PRSC>, <SCLK>, <PAUS> };
463         };
464         row {
465             top= 22;
466             left=20;    
467             keys { <HOME>, <PGUP> };
468         };
469         row {
470             top= 36;
471             left=20;    
472             keys {  <END>, <PGDN> };
473         };
474         row {
475             top= 50;
476             left=20;    
477             keys { <DELE>, <INS> };
478         };
479         row {
480             top= 75;
481             left= 29;
482             keys { <UP> };
483         };
484         row {
485             top= 89;
486             left=20;    
487             keys { <LEFT>, <RGHT> };
488         };
489         row {
490             top= 103;
491             left=29;    
492             keys { <DOWN> };
493         };
494     }; // End of "Editing" section
495
496     shape "LED"  { 
497         cornerRadius= 1,
498         { [  7,  2 ] }
499     };
500     indicator.onColor= "green";
501     indicator.offColor= "green30";
502     indicator.left= 177;
503     indicator.shape= "LED";
504     indicator "Num Lock"     { top= 90; };
505     indicator "Caps Lock"    { top= 107; };
506     indicator "Scroll Lock"  { top= 127; };
507     
508     section "Keypad" {
509         top= 44;
510         left= 412;
511         row {
512             top= 1;
513             keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
514         };
515         row {
516             top= 20;
517             keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD" } };
518         };
519         row {
520             top= 39;
521             keys { <KP4>, <KP5>, <KP6> };
522         };
523         row {
524             top= 58;
525             keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD" } };
526         };
527         row {
528             top= 77;
529             keys { { <KP0>, "KP0" }, <KPDL> };
530         };
531     }; // End of "Keypad" section
532
533     alias <AC00> = <CAPS>;
534     alias <AA00> = <LCTL>;
535 };