O2 revision 1.1 1 // $Xorg: O2,v 1.3 2000/08/17 19:54:36 cpqbld Exp $
2 //
3 // Copyright (c) 1996 by Silicon Graphics Computer Systems, Inc.
4 //
5 // Permission to use, copy, modify, and distribute this
6 // software and its documentation for any purpose and without
7 // fee is hereby granted, provided that the above copyright
8 // notice appear in all copies and that both that copyright
9 // notice and this permission notice appear in supporting
10 // documentation, and that the name of Silicon Graphics not be
11 // used in advertising or publicity pertaining to distribution
12 // of the software without specific prior written permission.
13 // Silicon Graphics makes no representation about the suitability
14 // of this software for any purpose. It is provided "as is"
15 // without any express or implied warranty.
16 //
17 // SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
18 // SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
19 // AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
20 // GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
21 // DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
22 // DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
23 // OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
24 // THE USE OR PERFORMANCE OF THIS SOFTWARE.
25 //
26 default xkb_geometry "pc101" {
27
28 // This is an approximate layout for a 101-key (US/ASCII) SGI
29 // keyboard. I just took a similar layout (101 key PC keyboard)
30 // and adjusted the sizes of a few keys by eye. I didn't actually
31 // *measure* a real keyboard.
32
33 description= "101-key keyboard for Silicon Graphics O2";
34
35 width= 448;
36 height= 162;
37
38 shape "EDGE" {
39 cornerRadius= 2,
40 { [ 15, 0 ], [ 433, 0 ], [ 433, 10 ], [ 448, 10 ],
41 [ 448, 162 ], [ 0, 162 ], [ 0, 10 ], [ 15, 10 ] }
42 };
43 shape.cornerRadius= 1;
44 shape "NORM" { { [ 18,18] }, { [2,1], [16,17] } };
45 shape "BKSP" { { [ 37,18] }, { [2,1], [35,17] } };
46 shape "TABK" { { [ 28,18] }, { [2,1], [26,17] } };
47 shape "BKSL" { { [ 27,18] }, { [2,1], [25,17] } };
48 shape "RTRN" { { [ 40,18] }, { [2,1], [37,17] } };
49 shape "CAPS" { { [ 34,18] }, { [2,1], [29,17] } };
50 shape "RTSH" { { [ 49,18] }, { [2,1], [47,17] } };
51 shape "LFSH" { { [ 44,18] }, { [2,1], [42,17] } };
52 shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
53 shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
54 shape "KP0" { { [ 37,18] }, { [2,1], [35,17] } };
55 shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
56 shape "LOGO" { { [ 12,12] } };
57
58 outline "Edges" {
59 top= 0;
60 left= 0;
61 shape= "EDGE";
62 };
63
64 section.left= 6;
65 row.left= 1;
66 key.shape= "NORM";
67 key.gap= 1;
68 section "Function" {
69 top= 25;
70 row {
71 top= 1;
72 keys { { <ESC>, color="grey20" },
73 { <FK01>, 19}, <FK02>, <FK03>, <FK04>,
74 { <FK05>, 11}, <FK06>, <FK07>, <FK08>,
75 { <FK09>, 11}, <FK10>, <FK11>, <FK12>
76 };
77 };
78 }; // End of "Function" section
79
80 section "Alpha" {
81 top= 58;
82 row {
83 top= 1;
84 keys { <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
85 <AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
86 <AE10>, <AE11>, <AE12>,
87 { <BKSP>, "BKSP", color="grey20" }
88 };
89 };
90 row {
91 top= 20;
92 keys { { <TAB>, "TABK", color= "grey20" },
93 <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
94 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
95 <AD11>, <AD12>,
96 { <BKSL>, "BKSL" }
97 };
98 };
99 row {
100 top= 39;
101 keys { { <CAPS>, "CAPS", color="grey20" },
102 <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
103 <AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
104 <AC11>, { <RTRN>, "RTRN", color="grey20" }
105 };
106 };
107 row {
108 top= 58;
109 keys { { <LFSH>, "LFSH", color="grey20" },
110 <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
111 <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
112 { <RTSH>, "RTSH", color="grey20" }
113 };
114 };
115 row {
116 top= 77;
117 key.shape= "MODK";
118 key.color= "grey20";
119 keys { <LCTL>, { <LALT>, 20 },
120 { <SPCE>, "SPCE",color="white" },
121 <RALT>, { <RCTL>, 20 }
122 };
123 };
124 }; // End of "Alpha" section
125
126 section "Editing" {
127 top= 25;
128 left= 299;
129 key.color= "grey20";
130 row {
131 top= 1;
132 keys { <PRSC>, <SCLK>, <PAUS> };
133 };
134 row {
135 top= 33;
136 keys { <INS>, <HOME>, <PGUP> };
137 };
138 row {
139 top= 53;
140 keys { <DELE>, <END>, <PGDN> };
141 };
142 row {
143 top= 91;
144 left= 20;
145 keys { <UP> };
146 };
147 row {
148 top= 110;
149 keys { <LEFT>, <DOWN>, <RGHT> };
150 };
151 }; // End of "Editing" section
152
153 shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
154 shape "LED" { cornerRadius= 0, { [ 3, 1.5] } };
155 solid "LedPanel" {
156 shape= "LEDS";
157 top= 25;
158 left= 364;
159 color= "grey10";
160 };
161 indicator.onColor= "green";
162 indicator.offColor= "green30";
163 indicator.top= 40.5;
164 indicator.shape= "LED";
165 indicator "Num Lock" { left= 372; };
166 indicator "Caps Lock" { left= 397; };
167 indicator "Scro llLock" { left= 422; };
168
169 text.font= "helvetica";
170 text.weight= "bold";
171 text.slant= "r";
172 text.fontWidth= "normal";
173 text.fontSize= 12;
174 text.top= 39.5;
175 text.color= "black";
176 text "NumLockLabel" { left= 376.5; text="1"; };
177 text "CapsLockLabel" { left= 401.5; text="A"; };
178 text "ScrollLockLabel" { left= 426.5; text="S"; };
179
180 logo "SGILogoImage" {
181 top= 26.5;
182 left= 396;
183 name= "SGI";
184 shape= "LOGO";
185 };
186 text.font= "helvetica";
187 text.weight= "bold";
188 text.slant= "o";
189 text.fontWidth= "narrow";
190 text.fontSize= 18;
191 text "SiliconLogoText" {
192 top= 27;
193 left= 375;
194 width= 20;
195 text= "Silicon";
196 };
197 text "GraphicsLogoText" {
198 top= 27;
199 left= 409;
200 width= 20;
201 text= "Graphics";
202 };
203
204 section "Keypad" {
205 top= 58;
206 left= 363;
207 row {
208 top= 1;
209 key.color= "grey20";
210 keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
211 };
212 row {
213 top= 20;
214 keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color= "grey20" } };
215 };
216 row {
217 top= 39;
218 keys { <KP4>, <KP5>, <KP6> };
219 };
220 row {
221 top= 58;
222 keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color= "grey20" } };
223 };
224 row {
225 top= 77;
226 keys { { <KP0>, "KP0" }, <KPDL> };
227 };
228 }; // End of "Keypad" section
229 alias <AC00> = <CAPS>;
230 alias <AA00> = <LCTL>;
231 };
232
233 xkb_geometry "pc102" {
234
235 // This is an approximate layout for 102-key SGI international
236 // keyboards. I just took a similar layout (101 key PC keyboard)
237 // and adjusted the sizes of a few keys by eye. I didn't actually
238 // *measure* a real keyboard.
239
240 description= "Silicon Graphics 102-key Keyboard";
241 width= 470;
242 height= 193;
243
244 shape.cornerRadius= 1;
245 shape "EDGE" { cornerRadius=2, { [ 470, 193 ] } };
246 shape "NORM" { { [18,18] }, { [2,1], [16,17] } };
247 shape "BKSP" { { [35,18] }, { [2,1], [33,17] } };
248 shape "TABK" { { [27,18] }, { [2,1], [25,17] } };
249 shape "RTRN" {
250 approx = { [ 0, 0], [26,37] },
251 { [ 0, 0], [26, 0], [26,37],
252 [ 5,37], [ 5,18], [ 0,18] },
253 { [ 1, 1], [24, 1], [24,36],
254 [ 7,36], [ 7,17], [ 1,17] }
255 };
256 shape "CAPS" { { [ 32,18] }, { [2,1], [25,17] } };
257 shape "RTSH" { { [ 50,18] }, { [2,1], [48,17] } };
258 shape "LFSH" { { [ 22,18] }, { [2,1], [20,17] } };
259 shape "MODK" { { [ 28,18] }, { [2,1], [26,17] } };
260 shape "SPCE" { { [130,18] }, { [2,1], [128,17] } };
261 shape "KP0" { { [ 37,18] }, { [2,1], [35,17] } };
262 shape "KPAD" { { [ 18,37] }, { [2,1], [16,36] } };
263 shape "LOGO" { { [ 16,16] } };
264
265 outline "Edges" {
266 top= 0;
267 left= 0;
268 shape= "EDGE";
269 };
270
271 section.left= 19;
272 row.left= 1;
273 key.shape= "NORM";
274 key.gap= 1;
275 section "Function" {
276 top= 50;
277 row {
278 top= 1;
279 keys { { <ESC>, color="grey20" },
280 { <FK01>, 18}, <FK02>, <FK03>, <FK04>,
281 { <FK05>, 10}, <FK06>, <FK07>, <FK08>,
282 { <FK09>, 10}, <FK10>, <FK11>, <FK12>
283 };
284 };
285 }; // End of "Function" section
286
287 section "Alpha" {
288 top= 83;
289 row {
290 top= 1;
291 keys { <TLDE>, <AE01>, <AE02>, <AE03>, <AE04>,
292 <AE05>, <AE06>, <AE07>, <AE08>, <AE09>,
293 <AE10>, <AE11>, <AE12>,
294 { <BKSP>, "BKSP", color= "grey20" }
295 };
296 };
297 row {
298 top= 20;
299 keys { { <TAB>, "TABK", color= "grey20" },
300 <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
301 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
302 <AD11>, <AD12>,
303 { <RTRN>, "RTRN", color= "grey20" }
304 };
305 };
306 row {
307 top= 39;
308 keys { { <CAPS>, "CAPS", color= "grey20" },
309 <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
310 <AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
311 <AC11>, <BKSL>
312 };
313 };
314 row {
315 top= 58;
316 keys { { <LFSH>, "LFSH", color= "grey20" }, <LSGT>,
317 <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
318 <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
319 { <RTSH>, "RTSH", color= "grey20" }
320 };
321 };
322 row {
323 top= 77;
324 key.shape= "MODK";
325 key.color= "grey20";
326 keys { <LCTL>,
327 { <LALT>, 19 },
328 { <SPCE>, "SPCE", color="white" },
329 <RALT>,
330 { <RCTL>, 19 }
331 };
332 };
333 }; // End of "Alpha" section
334
335 section "Editing" {
336 top= 50;
337 left= 308;
338 key.color= "grey20";
339 row {
340 top= 1;
341 keys { <PRSC>, <SCLK>, <PAUS> };
342 };
343 row {
344 top= 33;
345 keys { <INS>, <HOME>, <PGUP> };
346 };
347 row {
348 top= 53;
349 keys { <DELE>, <END>, <PGDN> };
350 };
351 row {
352 top= 91;
353 left= 20;
354 keys { <UP> };
355 };
356 row {
357 top= 110;
358 keys { <LEFT>, <DOWN>, <RGHT> };
359 };
360 }; // End of "Editing" section
361
362 shape "LEDS" { cornerRadius= 0, { [ 76 ,20 ] } };
363 shape "LED" { cornerRadius= 0, { [ 1, 3 ] } };
364 solid "LedPanel" {
365 shape= "LEDS";
366 top= 50;
367 left= 375;
368 color= "grey10";
369 };
370 indicator.onColor= "green";
371 indicator.offColor= "green30";
372 indicator.top= 64.5;
373 indicator.shape= "LED";
374 indicator "Num Lock" { left= 384; };
375 indicator "Caps Lock" { left= 409; };
376 indicator "Scroll Lock" { left= 434; };
377 text.top= 52;
378 text.color= "black";
379 text "NumLockLabel" { left= 380.5; text="Num\nLock"; };
380 text "CapsLockLabel" { left= 405; text="Caps\nLock"; };
381 text "ScrollLockLabel" { left= 430; text="Scroll\nLock"; };
382
383 logo "SGILogoImage" {
384 top= 17;
385 left= 22;
386 name= "SGI";
387 shape= "LOGO";
388 };
389 text "SGILogoText" {
390 top= 21;
391 left= 40;
392 width= 50;
393 text= "SiliconGraphics";
394 font= "helvetica";
395 slant= "o";
396 weight= "bold";
397 setWidth= "narrow";
398 fontSize= 24;
399 };
400
401 section "Keypad" {
402 top= 83;
403 left= 374;
404 row {
405 top= 1;
406 key.color= "grey20";
407 keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
408 };
409 row {
410 top= 20;
411 keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
412 };
413 row {
414 top= 39;
415 keys { <KP4>, <KP5>, <KP6> };
416 };
417 row {
418 top= 58;
419 keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
420 };
421 row {
422 top= 77;
423 keys { { <KP0>, "KP0" }, <KPDL> };
424 };
425 }; // End of "Keypad" section
426 alias <AC00> = <CAPS>;
427 alias <AA00> = <LCTL>;
428 };
429
430 xkb_geometry "jp106" {
431 description= "Silicon Graphics 106-key Japanese keyboard";
432 width= 442;
433 height= 167;
434
435 shape "EDGE" { cornerRadius= 2, { [ 442, 167 ] } };
436 shape.cornerRadius= 1;
437 shape "NORM" { { [ 18,18] }, { [2,1], [ 16,17] } };
438 shape "BKSP" { { [ 18,18] }, { [2,1], [ 16,17] } };
439 shape "TABK" { { [ 28,18] }, { [2,1], [ 26,17] } };
440 shape "BKSL" { { [ 27,18] }, { [2,1], [ 25,17] } };
441 shape "RTRN" {
442 { [0,0],[ 27,0],[27,37],[4,37],[4,18],[0,18] } ,
443 { [2,1],[ 25,1],[25,36],[5,36],[5,17],[2,17] } };
444 shape "CAPS" { { [ 32,18] }, { [2,1], [ 30,17] } };
445 shape "LFSH" { { [ 42,18] }, { [2,1], [ 40,17] } };
446 shape "RTSH" { { [ 32,18] }, { [2,1], [ 30,17] } };
447 shape "MODK" { { [ 28,18] }, { [2,1], [ 26,17] } };
448 shape "SPCE" { { [ 46,18] }, { [2,1], [ 44,17] } };
449 shape "KP0" { { [ 37,18] }, { [2,1], [ 35,17] } };
450 shape "KPAD" { { [ 18,37] }, { [2,1], [ 16,36] } };
451 shape "LOGO" { { [ 16,16] } };
452
453 outline "Edges" {
454 top= 0;
455 left= 0;
456 shape= "EDGE";
457 };
458
459 logo "SGILogoImage" {
460 top= 5;
461 left= 6;
462 name= "SGI";
463 shape= "LOGO";
464 };
465
466 text "SGILogoText" {
467 top= 9;
468 left= 25;
469 width= 50;
470 text= "SiliconGraphics";
471 font= "helvetica";
472 slant= "o";
473 weight= "bold";
474 fontWidth= "narrow";
475 fontSize= 24;
476 };
477
478 shape "LEDS" { cornerRadius= 0.1, { [ 76 ,20 ] } };
479 shape "LED" { cornerRadius= 0, { [ 5, 1 ] } };
480 solid "LedPanel" {
481 shape= "LEDS";
482 top= 25;
483 left= 362;
484 color= "grey10";
485 };
486
487 indicator.onColor= "green";
488 indicator.offColor= "green30";
489 indicator.top= 40;
490 indicator.shape= "LED";
491 indicator "Num Lock" { left= 366; };
492 indicator "Caps Lock" { left= 391; };
493 indicator "Scroll Lock" { left= 416; };
494 text.top= 28;
495 text.color= "black";
496 text "NumLockLabel" { left= 366; text="Num\nLock"; };
497 text "CapsLockLabel" { left= 391; text="Caps\nLock"; };
498 text "ScrollLockLabel" { left= 416; text="Scroll\nLock"; };
499
500 section.left= 5;
501 row.left= 1;
502 key.shape= "NORM";
503 key.gap= 1;
504 section "Function" {
505 top= 25;
506 row {
507 top= 1;
508 keys { { <ESC>, color="grey20" },
509 { <FK01>, 18 }, <FK02>, <FK03>, <FK04>,
510 { <FK05>, 11 ,color="grey20"}, {<FK06>,color="grey20"},
511 { <FK07>, color="grey20"}, {<FK08>,color="grey20"},
512 { <FK09>, 11 }, <FK10>, <FK11>, <FK12>,
513 { <PRSC>, 8 }, <SCLK>, <PAUS>
514 };
515 };
516 }; // End of "Function" section
517
518 section "Alpha" {
519 top= 61;
520 row {
521 top= 1;
522 keys { {<HZTG>,color="grey20"}, <AE01>, <AE02>,
523 <AE03>, <AE04>, <AE05>, <AE06>, <AE07>,
524 <AE08>, <AE09>, <AE10>, <AE11>, <AE12>,
525 <AE13>, { <BKSP>, "BKSP", color="grey20" }
526 };
527 };
528 row {
529 top= 20;
530 keys { { <TAB>, "TABK", color="grey20" },
531 <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
532 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
533 <AD11>, <AD12>, { <RTRN>, 1 ,"RTRN",color="grey20" }
534 };
535 };
536 row {
537 top= 39;
538 keys { { <CAPS>, "CAPS", color="grey20" },
539 <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
540 <AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
541 <AC11>, <AC12>
542 };
543 };
544 row {
545 top= 58;
546 keys { { <LFSH>, "LFSH", color="grey20" },
547 <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
548 <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
549 <AB11>, { <RTSH>, "RTSH", color="grey20" }
550 };
551 };
552 row {
553 top= 77;
554 key.shape= "MODK";
555 key.color= "grey20";
556 keys { <LCTL>, { <LALT>, 20 },<NFER>,
557 { <SPCE>, "SPCE", color="white" },
558 <XFER>,<HKTG>,<RALT>, { <RCTL>, 17 }
559 };
560 };
561 }; // End of "Alpha" section
562
563 section "Editing" {
564 top= 61;
565 left= 296;
566 key.color= "grey20";
567 row {
568 top= 1;
569 keys { <INS>, <HOME>, <PGUP> };
570 };
571 row {
572 top= 20;
573 keys { <DELE>, <END>, <PGDN> };
574 };
575 row {
576 top= 58;
577 left= 20;
578 keys { <UP> };
579 };
580 row {
581 top= 77;
582 keys { <LEFT>, <DOWN>, <RGHT> };
583 };
584 }; // End of "Editing" section
585
586 section "Keypad" {
587 top= 61;
588 left= 361;
589 row {
590 top= 1;
591 key.color= "grey20";
592 keys { <NMLK>, <KPDV>, <KPMU>, <KPSU> };
593 };
594 row {
595 top= 20;
596 keys { <KP7>, <KP8>, <KP9>, { <KPAD>, "KPAD", color="grey20" } };
597 };
598 row {
599 top= 39;
600 keys { <KP4>, <KP5>, <KP6> };
601 };
602 row {
603 top= 58;
604 keys { <KP1>, <KP2>, <KP3>, { <KPEN>, "KPAD", color="grey20" } };
605 };
606 row {
607 top= 77;
608 keys { { <KP0>, "KP0" }, <KPDL> };
609 };
610 }; // End of "Keypad" section
611
612 alias <AC00> = <CAPS>;
613 alias <AA00> = <LCTL>;
614
615 }; // End of "jp106" geometry
616
617