microsoft revision 154daed1
1// $Xorg: microsoft,v 1.3 2000/08/17 19:54:35 cpqbld Exp $
2//
3default 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//
267xkb_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};
536