jp revision c067fea9
1// $XdotOrg: $
2//
3// Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
4//
5// Permission is hereby granted, free of charge, to any person obtaining a
6// copy of this software and associated documentation files (the
7// "Software"), to deal in the Software without restriction, including
8// without limitation the rights to use, copy, modify, merge, publish,
9// distribute, and/or sell copies of the Software, and to permit persons
10// to whom the Software is furnished to do so, provided that the above
11// copyright notice(s) and this permission notice appear in all copies of
12// the Software and that both the above copyright notice(s) and this
13// permission notice appear in supporting documentation.
14// 
15// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
18// OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
19// HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
20// INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
21// FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
22// NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
23// WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
24// 
25// Except as contained in this notice, the name of a copyright holder
26// shall not be used in advertising or otherwise to promote the sale, use
27// or other dealings in this Software without prior written authorization
28// of the copyright holder.
29//
30// $TOG: us /main/5 1998/02/10 13:45:06 kaleb $
31//
32//Copyright 1996, 1998  The Open Group
33//
34//All Rights Reserved.
35//
36//The above copyright notice and this permission notice shall be
37//included in all copies or substantial portions of the Software.
38//
39//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
40//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
41//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
42//IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
43//OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
44//ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
45//OTHER DEALINGS IN THE SOFTWARE.
46//
47//Except as contained in this notice, the name of The Open Group shall
48//not be used in advertising or otherwise to promote the sale, use or
49//other dealings in this Software without prior written authorization
50//from The Open Group.
51//
52// US/ASCII layout for a Type 4 Sun keyboard
53
54//
55// CDDL HEADER START
56//
57// The contents of this file are subject to the terms of the
58// Common Development and Distribution License (the "License").
59// You may not use this file except in compliance with the License.
60//
61// You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
62// or http://www.opensolaris.org/os/licensing.
63// See the License for the specific language governing permissions
64// and limitations under the License.
65//
66// When distributing Covered Code, include this CDDL HEADER in each
67// file and include the License file at src/OPENSOLARIS.LICENSE.
68// If applicable, add the following below this CDDL HEADER, with the
69// fields enclosed by brackets "[]" replaced with your own identifying
70// information: Portions Copyright [yyyy] [name of copyright owner]
71//
72// CDDL HEADER END
73//
74
75xkb_symbols "basic" {
76    // Alphanumeric section
77    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
78    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
79    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
80    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
81    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
82    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
83    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	]	};
84    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	]	};
85    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	]	};
86    key <AE10> { [ 0			], [ kana_WA, kana_WO	]	};
87    key <AE11> { [ minus, equal		], [ kana_HO		]	};
88    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
89    key <BKSP> { [ BackSpace		]	};
90
91    key  <TAB> { [ Tab,	ISO_Left_Tab	]	};
92    key <AD01> { [ q, Q 		], [ kana_TA		]	};
93    key <AD02> { [ w, W			], [ kana_TE		]	};
94    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
95    key <AD04> { [ r, R			], [ kana_SU		]	};
96    key <AD05> { [ t, T			], [ kana_KA		]	};
97    key <AD06> { [ y, Y			], [ kana_N		]	};
98    key <AD07> { [ u, U			], [ kana_NA		]	};
99    key <AD08> { [ i, I			], [ kana_NI		]	};
100    key <AD09> { [ o, O			], [ kana_RA		]	};
101    key <AD10> { [ p, P			], [ kana_SE		]	};
102    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
103    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
104    key <RTRN> { [ Return		]	};
105
106    key <CAPS> { [ Caps_Lock		]	};
107    key <AC01> { [ a, A 		], [ kana_CHI		]	};
108    key <AC02> { [ s, S			], [ kana_TO		]	};
109    key <AC03> { [ d, D			], [ kana_SHI		]	};
110    key <AC04> { [ f, F			], [ kana_HA		]	};
111    key <AC05> { [ g, G			], [ kana_KI		]	};
112    key <AC06> { [ h, H			], [ kana_KU		]	};
113    key <AC07> { [ j, J			], [ kana_MA		]	};
114    key <AC08> { [ k, K			], [ kana_NO		]	};
115    key <AC09> { [ l, L			], [ kana_RI		]	};
116    key <AC10> { [ semicolon, plus	], [ kana_RE		]	};
117    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
118    key <TLDE> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
119
120    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
121    key <AB02> { [ x, X			], [ kana_SA		]	};
122    key <AB03> { [ c, C			], [ kana_SO		]	};
123    key <AB04> { [ v, V			], [ kana_HI		]	};
124    key <AB05> { [ b, B			], [ kana_KO		]	};
125    key <AB06> { [ n, N			], [ kana_MI		]	};
126    key <AB07> { [ m, M			], [ kana_MO		]	};
127    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
128    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ]	};
129    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ]};
130    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
131
132    key <SPCE> { [ space		]			};
133    key <KANJ> { [ Kanji		]			};
134    key <HENK> { [ Henkan_Mode		]			};
135//    key <LNFD> { [ backslash, underscore], [ kana_RO		]};
136    // End alphanumeric section
137
138    // Begin "Function" section
139    key <ESC>  { [ Escape		]			};
140    key <FK01> { [ F1			]			};
141    key <FK02> { [ F2			]			};
142    key <FK03> { [ F3			]			};
143    key <FK04> { [ F4			]			};
144    key <FK05> { [ F5			]			};
145    key <FK06> { [ F6			]			};
146    key <FK07> { [ F7			]			};
147    key <FK08> { [ F8			]			};
148    key <FK09> { [ F9			]			};
149    key <FK10> { [ F10			]			};
150    key <FK11> { [ SunF36		]			};
151    key <FK12> { [ SunF37		]			};
152    key <BKSL> { [ backslash, bar	], [ prolongedsound 	] };
153//    key <BRCR> { [ Linefeed		]			};
154    key <EXEC> { [ Execute		]			};
155};
156xkb_symbols "type4" {
157
158    // Alphanumeric section
159    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
160    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
161    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
162    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
163    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
164    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
165    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	]	};
166    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	]	};
167    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	]	};
168    key <AE10> { [ 0			], [ kana_WA, kana_WO	]	};
169    key <AE11> { [ minus, equal		], [ kana_HO		]	};
170    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
171    key <BKSP> { [ BackSpace		]	};
172
173    key  <TAB> { [ Tab,	ISO_Left_Tab	]	};
174    key <AD01> { [ q, Q 		], [ kana_TA		]	};
175    key <AD02> { [ w, W			], [ kana_TE		]	};
176    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
177    key <AD04> { [ r, R			], [ kana_SU		]	};
178    key <AD05> { [ t, T			], [ kana_KA		]	};
179    key <AD06> { [ y, Y			], [ kana_N		]	};
180    key <AD07> { [ u, U			], [ kana_NA		]	};
181    key <AD08> { [ i, I			], [ kana_NI		]	};
182    key <AD09> { [ o, O			], [ kana_RA		]	};
183    key <AD10> { [ p, P			], [ kana_SE		]	};
184    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
185    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
186    key <RTRN> { [ Return		]	};
187
188    key <CAPS> { [ Caps_Lock		]	};
189    key <AC01> { [ a, A 		], [ kana_CHI		]	};
190    key <AC02> { [ s, S			], [ kana_TO		]	};
191    key <AC03> { [ d, D			], [ kana_SHI		]	};
192    key <AC04> { [ f, F			], [ kana_HA		]	};
193    key <AC05> { [ g, G			], [ kana_KI		]	};
194    key <AC06> { [ h, H			], [ kana_KU		]	};
195    key <AC07> { [ j, J			], [ kana_MA		]	};
196    key <AC08> { [ k, K			], [ kana_NO		]	};
197    key <AC09> { [ l, L			], [ kana_RI		]	};
198    key <AC10> { [ semicolon, plus	], [ kana_RE		]	};
199    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
200    key <TLDE> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
201
202    key <LFSH> { [ Shift_L		]	};
203    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
204    key <AB02> { [ x, X			], [ kana_SA		]	};
205    key <AB03> { [ c, C			], [ kana_SO		]	};
206    key <AB04> { [ v, V			], [ kana_HI		]	};
207    key <AB05> { [ b, B			], [ kana_KO		]	};
208    key <AB06> { [ n, N			], [ kana_MI		]	};
209    key <AB07> { [ m, M			], [ kana_MO		]	};
210    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
211    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ]	};
212    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ]};
213    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
214    key <RTSH> { [ Shift_R		]	};
215
216    key <LCTL> { [ Control_L		]			};
217    key <SPCE> { [ space		]			};
218    key <KANJ> { [ Kanji		]			};
219    key <HENK> { [ Henkan_Mode		]			};
220    key <LALT> { [ Alt_L		]			};
221    key <ALGR> { [ Mode_switch		]			};
222    key <LMTA> { [ Meta_L		]			};
223    key <RMTA> { [ Meta_R		]			};
224    key <LNFD> { [ backslash, underscore], [ kana_RO		]};
225    key <COMP> { [ Multi_key		]			};
226    key <EXEC> { [ Execute		]			};
227//    key <TLFD> { [ Linefeed		]			};
228    // End alphanumeric section
229
230    // Begin "Function" section
231    key <ESC>  { [ Escape		]			};
232    key <FK01> { [ F1			]			};
233    key <FK02> { [ F2			]			};
234    key <FK03> { [ F3			]			};
235    key <FK04> { [ F4			]			};
236    key <FK05> { [ F5			]			};
237    key <FK06> { [ F6			]			};
238    key <FK07> { [ F7			]			};
239    key <FK08> { [ F8			]			};
240    key <FK09> { [ F9			]			};
241    key <FK10> { [ F10			]			};
242    key <FK11> { [ SunF36		]			};
243    key <FK12> { [ SunF37		]			};
244    key <BKSL> { [ backslash, bar	], [ prolongedsound 	] };
245    key <BRCR> { [ Linefeed		]			};
246
247    key <STOP> { [ L1,	L1		], [ SunStop	]	};
248    key <AGAI> { [ L2,	L2		], [ SunAgain	]	};
249    key <PROP> { [ L3,	L3		], [ SunProps	]	};
250    key <UNDO> { [ L4,	L4		], [ SunUndo	]	};
251    key <FRNT> { [ L5,	L5		], [ SunFront	]	};
252    key <COPY> { [ L6,	L6		], [ SunCopy	]	};
253    key <OPEN> { [ L7,	L7		], [ SunOpen	]	};
254    key <PAST> { [ L8,	L8		], [ SunPaste	]	};
255    key <FIND> { [ L9,	L9		], [ SunFind	]	};
256    key <CUT>  { [ L10,	L10		], [ SunCut	]	};
257    // End "Function" section
258
259    // Begin "Editing" section
260    key <PRSC> { [ R2,	R2		], [ Print		] };
261    key <SCLK> { [ R3,	R3		], [ Scroll_Lock, Break	] };
262    key <PAUS> { [ R1,	R1		], [ Pause		] };
263    key <DELE> { [ Delete		]			};
264    key <HELP> { [ Help			]			};
265
266    // End "Editing" section, begin "Keypad"
267    key <NMLK> { [ Num_Lock 		]			};
268    key <KPEQ> { [ R4,	R4 		], [ KP_Equal		] };
269    key <KPDV> { [ R5,	R5		], [ KP_Divide		] };
270    key <KPMU> { [ R6,	R6		], [ KP_Multiply	] };
271    key <KPSU> { [ KP_Subtract		]			};
272
273    key  <KP7> { [ R7,	R7		], [ KP_7, Home		] };
274    key  <KP8> { [ Up,	R8		], [ KP_8		] };
275    key  <KP9> { [ R9,	R9		], [ KP_9, Prior	] };
276    key <KPAD> { [ KP_Add		]			};
277
278    key  <KP4> { [ Left, R10		], [ KP_4		] };
279    key  <KP5> { [ R11,	R11		], [ KP_5		] };
280    key  <KP6> { [ Right, R12		], [ KP_6		] };
281
282    key  <KP1> { [ R13,	R13		], [ KP_1,	End	] };
283    key  <KP2> { [ Down, R14		], [ KP_2		] };
284    key  <KP3> { [ R15,	R15		], [ KP_3,	Next	] };
285    key <KPEN> { [ KP_Enter		]			}; 
286    key  <KP0> { [ KP_Insert, KP_Insert], [ KP_0		]	};
287    key <KPDL> { [ Delete, Delete	], [ KP_Decimal ]	};
288    // End "Keypad" section
289
290
291    // begin modifier mappings
292    modifier_map Shift  	{ Shift_R, Shift_L };
293    modifier_map Mod1   	{ Meta_L, Meta_R };
294    modifier_map Mod2   	{ Mode_switch };
295    modifier_map Mod3   	{ Num_Lock };
296    modifier_map Mod4		{ Alt_L };
297};
298
299// US/ASCII layout for a Type 5 Sun keyboard
300xkb_symbols "type5" {
301
302    // Alphanumeric section
303    key <TLDE> { [ backslash, bar	], [ prolongedsound	]	};
304    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
305    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
306    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
307    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
308    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
309    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
310    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	]	};
311    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	]	};
312    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	]	};
313    key <AE10> { [ 0			], [ kana_WA, kana_WO	]	};
314    key <AE11> { [ minus, equal		], [ kana_HO		]	};
315    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
316    key <BKSP> { [ BackSpace		]	};
317
318    key  <TAB> { [ Tab,	ISO_Left_Tab	]	};
319    key <AD01> { [ q, Q 		], [ kana_TA		]	};
320    key <AD02> { [ w, W			], [ kana_TE		]	};
321    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
322    key <AD04> { [ r, R			], [ kana_SU		]	};
323    key <AD05> { [ t, T			], [ kana_KA		]	};
324    key <AD06> { [ y, Y			], [ kana_N		]	};
325    key <AD07> { [ u, U			], [ kana_NA		]	};
326    key <AD08> { [ i, I			], [ kana_NI		]	};
327    key <AD09> { [ o, O			], [ kana_RA		]	};
328    key <AD10> { [ p, P			], [ kana_SE		]	};
329    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
330    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
331    key <RTRN> { [ Return		]	};
332
333    key <CAPS> { [ Caps_Lock		]	};
334    key <AC01> { [ a, A 		], [ kana_CHI		]	};
335    key <AC02> { [ s, S			], [ kana_TO		]	};
336    key <AC03> { [ d, D			], [ kana_SHI		]	};
337    key <AC04> { [ f, F			], [ kana_HA		]	};
338    key <AC05> { [ g, G			], [ kana_KI		]	};
339    key <AC06> { [ h, H			], [ kana_KU		]	};
340    key <AC07> { [ j, J			], [ kana_MA		]	};
341    key <AC08> { [ k, K			], [ kana_NO		]	};
342    key <AC09> { [ l, L			], [ kana_RI		]	};
343    key <AC10> { [ semicolon, plus	], [ kana_RE		]	};
344    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
345    key <BKSL> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
346
347    key <LFSH> { [ Shift_L		]	};
348    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
349    key <AB02> { [ x, X			], [ kana_SA		]	};
350    key <AB03> { [ c, C			], [ kana_SO		]	};
351    key <AB04> { [ v, V			], [ kana_HI		]	};
352    key <AB05> { [ b, B			], [ kana_KO		]	};
353    key <AB06> { [ n, N			], [ kana_MI		]	};
354    key <AB07> { [ m, M			], [ kana_MO		]	};
355    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
356    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ]	};
357    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ]};
358    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
359    key <RTSH> { [ Shift_R		]	};
360
361    key <LCTL> { [ Control_L		]			};
362//    key <RCTL> { [ Control_R		]			};
363    key <EXEC> { [ Execute		]			};
364    key <SPCE> { [ space		]			};
365    key <KANJ> { [ Kanji		]			};
366    key <HENK> { [ Henkan_Mode		]			};
367    key <LALT> { [ Alt_L		]	};
368    key <ALGR> { [ Mode_switch		]	};
369    key <LMTA> { [ Meta_L		]	};
370    key <RMTA> { [ Meta_R		]	};
371    key <COMP> { [ Multi_key		]	};
372    // End alphanumeric section
373
374    // Begin "Function" section
375    key <ESC>  { [ Escape		]			};
376    key <FK01> { [ F1			]			};
377    key <FK02> { [ F2			]			};
378    key <FK03> { [ F3			]			};
379    key <FK04> { [ F4			]			};
380    key <FK05> { [ F5			]			};
381    key <FK06> { [ F6			]			};
382    key <FK07> { [ F7			]			};
383    key <FK08> { [ F8			]			};
384    key <FK09> { [ F9			]			};
385    key <FK10> { [ F10			]			};
386    key <FK11> { [ SunF36		]			};
387    key <FK12> { [ SunF37		]			};
388    key <STOP> { [ L1, L1		], [ SunStop	]	};
389    key <AGAI> { [ L2, L2		], [ SunAgain	]	};
390    key <PROP> { [ L3, L3		], [ SunProps	]	};
391    key <UNDO> { [ L4, L4		], [ SunUndo	]	};
392    key <FRNT> { [ L5, L5		], [ SunFront	]	};
393    key <COPY> { [ L6, L6		], [ SunCopy	]	};
394    key <OPEN> { [ L7, L7		], [ SunOpen	]	};
395    key <PAST> { [ L8, L8		], [ SunPaste	]	};
396    key <FIND> { [ L9, L9		], [ SunFind	]	};
397    key <CUT>  { [ L10, L10		], [ SunCut	]	};
398    // End "Function" section
399
400    // Begin "Editing" section
401    key <PRSC> { [ R2, R2 		], [ Print, SunSys_Req	]	};
402    key <SCLK> { [ R3, R3		], [ Scroll_Lock	]	};
403    key <PAUS> { [ R1, R1		], [ Pause, Break	]	};
404    key <LEFT> { [ Left			]			};
405    key <RGHT> { [ Right		]			};
406    key <UP>   { [ Up			]			};
407    key <DOWN> { [ Down			]			};
408
409    key <DELE> { [ Delete		]			};
410    key <INS>  { [ Insert		]			};
411    key <PGUP> { [ Prior		]			};
412    key <PGDN> { [ Next			]			};
413    key <HOME> { [ Home			]			};
414    key <END>  { [ End			]			};
415    key <HELP> { [ Help			]			};
416
417    // End "Editing" section, begin "Keypad"
418    key <NMLK> { [ Num_Lock 		]				};
419    key <KPDV> { [ R5, R5		], [ KP_Divide	]	};
420    key <KPMU> { [ R6, R6		], [ KP_Multiply	]	};
421    key <KPSU> { [ R4, R4		], [ KP_Subtract	]	};
422
423    key  <KP7> { [ R7, R7		], [ KP_7, Home		]	};
424    key  <KP8> { [ Up, R8		], [ KP_8		]	};
425    key  <KP9> { [ R9, R9		], [ KP_9, Prior	]	};
426    key <KPAD> { [ KP_Add		]				};
427
428    key  <KP4> { [ Left, R10		], [ KP_4		]	};
429    key  <KP5> { [ R11,	R11		], [ KP_5		]	};
430    key  <KP6> { [ Right, R12		], [ KP_6		]	};
431
432    key  <KP1> { [ R13,	R13		], [ KP_1, End		]	};
433    key  <KP2> { [ Down, R14		], [ KP_2		]	};
434    key  <KP3> { [ R15,	R15		], [ KP_3		]	};
435    key <KPEN> { [ KP_Enter		]				};
436
437    key  <KP0> { [ KP_Insert, KP_Insert	], [ KP_0		]	};
438    key <KPDL> { [ KP_Delete, KP_Delete ], [ KP_Decimal 	]	};
439    // End "Keypad" section, 
440    // begin "four keys up on the right"
441
442    key <MUTE> { [ SunAudioMute,	SunVideoDegauss		]	};
443    key <VOL-> { [ SunAudioLowerVolume,	SunVideoLowerBrightness ]	};
444    key <VOL+> { [ SunAudioRaiseVolume,	SunVideoRaiseBrightness	]	};
445    key <POWR> { [ SunPowerSwitch,	SunPowerSwitchShift	]	};
446
447    // begin modifier mappings
448    modifier_map Shift  { Shift_R };
449    modifier_map Mod1	{ Meta_L, Meta_R };
450    modifier_map Mod2	{ Alt_R };
451    modifier_map Mod3	{ Num_Lock };
452    modifier_map Mod4	{ Alt_L };
453};
454
455xkb_symbols "type5hobo" {
456
457    // Alphanumeric section
458    key <TLDE> { [ backslash, bar	], [ prolongedsound	]	};
459    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
460    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
461    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
462    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
463    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
464    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
465    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	], [ KP_7 ]};
466    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	], [ KP_8 ]};
467    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	], [ KP_9 ]};
468    key <AE10> { [ 0			], [ kana_WA, kana_WO	], [ KP_Multiply]};
469    key <AE11> { [ minus, equal		], [ kana_HO		]	};
470    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
471    key <BKSP> { [ BackSpace		]	};
472
473    key  <TAB> { [ Tab,	ISO_Left_Tab	]	};
474    key <AD01> { [ q, Q 		], [ kana_TA		]	};
475    key <AD02> { [ w, W			], [ kana_TE		]	};
476    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
477    key <AD04> { [ r, R			], [ kana_SU		]	};
478    key <AD05> { [ t, T			], [ kana_KA		]	};
479    key <AD06> { [ y, Y			], [ kana_N		]	};
480    key <AD07> { [ u, U		], [ kana_NA		], [ KP_4 ]	};
481    key <AD08> { [ i, I		], [ kana_NI		], [ KP_5 ]	};
482    key <AD09> { [ o, O		], [ kana_RA		], [ KP_6 ]	};
483    key <AD10> { [ p, P		], [ kana_SE		], [ KP_Subtract]};
484    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
485    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
486    key <RTRN> { [ Return	], [ NoSymbol, NoSymbol], [ KP_Enter	] };
487
488    key <CAPS> { [ Caps_Lock		]	};
489    key <AC01> { [ a, A 		], [ kana_CHI		]	};
490    key <AC02> { [ s, S			], [ kana_TO		]	};
491    key <AC03> { [ d, D			], [ kana_SHI		]	};
492    key <AC04> { [ f, F			], [ kana_HA		]	};
493    key <AC05> { [ g, G			], [ kana_KI		]	};
494    key <AC06> { [ h, H			], [ kana_KU		]	};
495    key <AC07> { [ j, J		], [ kana_MA		], [ KP_1 ]};
496    key <AC08> { [ k, K		], [ kana_NO		], [ KP_2 ]};
497    key <AC09> { [ l, L		], [ kana_RI		], [ KP_3 ]};
498    key <AC10> { [ semicolon, plus], [ kana_RE		], [ KP_Add ]};
499    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
500    key <BKSL> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
501
502    key <LFSH> { [ Shift_L		]	};
503    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
504    key <AB02> { [ x, X			], [ kana_SA		]	};
505    key <AB03> { [ c, C			], [ kana_SO		]	};
506    key <AB04> { [ v, V			], [ kana_HI		]	};
507    key <AB05> { [ b, B			], [ kana_KO		]	};
508    key <AB06> { [ n, N			], [ kana_MI		]	};
509    key <AB07> { [ m, M			], [ kana_MO		], [ KP_0 ]};
510    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
511    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ], [ KP_Decimal ]	};
512    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ], [ KP_Divide ]};
513    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
514    key <RTSH> { [ Shift_R		]	};
515
516    key <LCTL> { [ Control_L		]			};
517    key <EXEC> { [ Execute		]			};
518    key <SPCE> { [ space		]			};
519    key <KANJ> { [ Kanji		]			};
520    key <HENK> { [ Henkan_Mode		]			};
521    key <LALT> { [ Alt_L		]	};
522    key <ALGR> { [ Mode_switch		]	};
523    key <LMTA> { [ Meta_L		]	};
524    key <RMTA> { [ Meta_R		]	};
525    key <COMP> { [ Multi_key		]	};
526    // End alphanumeric section
527
528    // Begin "Function" section
529    key <ESC>  { [ Escape		]			};
530    key <FK01> { [ F1			]			};
531    key <FK02> { [ F2			]			};
532    key <FK03> { [ F3			]			};
533    key <FK04> { [ F4			]			};
534    key <FK05> { [ F5			]			};
535    key <FK06> { [ F6			]			};
536    key <FK07> { [ F7			]			};
537    key <FK08> { [ F8			]			};
538    key <FK09> { [ F9			]			};
539    key <FK10> { [ F10			]			};
540    key <FK11> { [ SunF36		]			};
541    key <FK12> { [ SunF37		]			};
542    key <STOP> { [ L1, L1		], [ SunStop	]	};
543    key <AGAI> { [ L2, L2		], [ SunAgain	]	};
544    key <PROP> { [ L3, L3		], [ SunProps	]	};
545    key <UNDO> { [ L4, L4		], [ SunUndo	]	};
546    key <FRNT> { [ L5, L5		], [ SunFront	]	};
547    key <COPY> { [ L6, L6		], [ SunCopy	]	};
548    key <OPEN> { [ L7, L7		], [ SunOpen	]	};
549    key <PAST> { [ L8, L8		], [ SunPaste	]	};
550    key <FIND> { [ L9, L9		], [ SunFind	]	};
551    key <CUT>  { [ L10, L10		], [ SunCut	]	};
552    // End "Function" section
553
554    // Begin "Editing" section
555    key <PRSC> { [ R2, R2 		], [ Print, SunSys_Req	]	};
556    key <SCLK> { [ R3, R3		], [ Scroll_Lock	]	};
557    key <PAUS> { [ R1, R1		], [ Pause, Break	]	};
558    key <LEFT> { [ Left			]			};
559    key <RGHT> { [ Right		]			};
560    key <UP>   { [ Up			]			};
561    key <DOWN> { [ Down			]			};
562
563    key <DELE> { [ Delete		]			};
564    key <INS>  { [ Insert		]			};
565    key <PGUP> { [ Prior		]			};
566    key <PGDN> { [ Next			]			};
567    key <HOME> { [ Home			]			};
568    key <END>  { [ End			]			};
569    key <HELP> { [ Help			]			};
570
571    // End "Editing" section, begin "Keypad"
572     key <NMLK> { [ Num_Lock 		]				};
573//     key <KPDV> { [ R5, R5		], [ KP_Divide	]	};
574//     key <KPMU> { [ R6, R6		], [ KP_Multiply	]	};
575//     key <KPSU> { [ R4, R4		], [ KP_Subtract	]	};
576
577//     key  <KP7> { [ R7, R7		], [ KP_7, Home		]	};
578//     key  <KP8> { [ Up, R8		], [ KP_8		]	};
579//     key  <KP9> { [ R9, R9		], [ KP_9, Prior	]	};
580//     key <KPAD> { [ KP_Add		]				};
581
582//     key  <KP4> { [ Left, R10		], [ KP_4		]	};
583//     key  <KP5> { [ R11,	R11		], [ KP_5		]	};
584//     key  <KP6> { [ Right, R12		], [ KP_6		]	};
585
586//     key  <KP1> { [ R13,	R13		], [ KP_1, End		]	};
587//     key  <KP2> { [ Down, R14		], [ KP_2		]	};
588//     key  <KP3> { [ R15,	R15		], [ KP_3		]	};
589//     key <KPEN> { [ KP_Enter		]				};
590
591//     key  <KP0> { [ KP_Insert, KP_Insert	], [ KP_0		]	};
592//     key <KPDL> { [ KP_Delete, KP_Delete ], [ KP_Decimal 	]	};
593    // End "Keypad" section, 
594    // begin "four keys up on the right"
595
596    key <MUTE> { [ SunAudioMute,	SunVideoDegauss		]	};
597    key <VOL-> { [ SunAudioLowerVolume,	SunVideoLowerBrightness ]	};
598    key <VOL+> { [ SunAudioRaiseVolume,	SunVideoRaiseBrightness	]	};
599    key <POWR> { [ SunPowerSwitch,	SunPowerSwitchShift	]	};
600
601    // begin modifier mappings
602    modifier_map Shift  { Shift_R };
603    modifier_map Mod1	{ Meta_L, Meta_R };
604    modifier_map Mod2	{ Alt_R };
605    modifier_map Mod3	{ Num_Lock };
606    modifier_map Mod4	{ Alt_L };
607};
608
609// layout for a Japanese Type 6 Sun keyboard
610// Just shows differences from Type 6 US layout 
611partial
612xkb_symbols "type6" {
613
614    // Alphanumeric section
615    // Though Yen symbol is engraved on key AE13, JA L10N folks want backslash.
616    key <AE13> { [ backslash, bar       ], [ prolongedsound     ]       };
617    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
618    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
619    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
620    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
621    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
622    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
623    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	]	};
624    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	]	};
625    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	]	};
626    key <AE10> { [ 0			], [ kana_WA, kana_WO	]	};
627    key <AE11> { [ minus, equal		], [ kana_HO		]	};
628    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
629
630    key <AD01> { [ q, Q 		], [ kana_TA		]	};
631    key <AD02> { [ w, W			], [ kana_TE		]	};
632    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
633    key <AD04> { [ r, R			], [ kana_SU		]	};
634    key <AD05> { [ t, T			], [ kana_KA		]	};
635    key <AD06> { [ y, Y			], [ kana_N		]	};
636    key <AD07> { [ u, U			], [ kana_NA		]	};
637    key <AD08> { [ i, I			], [ kana_NI		]	};
638    key <AD09> { [ o, O			], [ kana_RA		]	};
639    key <AD10> { [ p, P			], [ kana_SE		]	};
640    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
641    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
642
643    key <AC01> { [ a, A 		], [ kana_CHI		]	};
644    key <AC02> { [ s, S			], [ kana_TO		]	};
645    key <AC03> { [ d, D			], [ kana_SHI		]	};
646    key <AC04> { [ f, F			], [ kana_HA		]	};
647    key <AC05> { [ g, G			], [ kana_KI		]	};
648    key <AC06> { [ h, H			], [ kana_KU		]	};
649    key <AC07> { [ j, J			], [ kana_MA		]	};
650    key <AC08> { [ k, K			], [ kana_NO		]	};
651    key <AC09> { [ l, L			], [ kana_RI		]	};
652    key <AC10> { [ semicolon, plus	], [ kana_RE		]	};
653    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
654    key <BKSL> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
655
656    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
657    key <AB02> { [ x, X			], [ kana_SA		]	};
658    key <AB03> { [ c, C			], [ kana_SO		]	};
659    key <AB04> { [ v, V			], [ kana_HI		]	};
660    key <AB05> { [ b, B			], [ kana_KO		]	};
661    key <AB06> { [ n, N			], [ kana_MI		]	};
662    key <AB07> { [ m, M			], [ kana_MO		]	};
663    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
664    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ]	};
665    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ]};
666    key <AB11> { [ backslash, underscore], [ kana_RO		]	};
667    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
668
669    key <EXEC> { [ Execute		]			};
670    key <KANJ> { [ Kanji		]			};
671    key <HENK> { [ Henkan_Mode		]			};
672    key <ALGR> { [ Kana_Lock, Mode_switch ]	};
673    // End alphanumeric section
674};
675
676xkb_symbols "x86" {
677    include "sun_vndr/us(pc101)"
678    include "sun_vndr/jp(basic)"
679    key <TLDE> { [ Henkan_Mode, Henkan_Mode ], [ Henkan_Mode ] };
680
681    key <AE10> { [ 0, asciitilde	    ], [ kana_WA, kana_WO	]};
682    key <AE13> { [ backslash, bar	    ], [ prolongedsound		]};
683
684    
685    key <AC12> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket	]};
686
687    key <ALGR> { [ Mode_switch ]	       };
688    key <RALT> { [ Alt_R ]	       };
689
690};
691
692xkb_symbols "J3100" {
693    include "sun_vndr/us(pc101)"
694
695    // Alphanumeric section
696    key <AE01> { [ 1, exclam 		], [ kana_NU		]	};
697    key <AE02> { [ 2, quotedbl		], [ kana_FU		]	};
698    key <AE03> { [ 3, numbersign	], [ kana_A, kana_a	]	};
699    key <AE04> { [ 4, dollar		], [ kana_U, kana_u	]	};
700    key <AE05> { [ 5, percent		], [ kana_E, kana_e	]	};
701    key <AE06> { [ 6, ampersand		], [ kana_O, kana_o	]	};
702    key <AE07> { [ 7, apostrophe	], [ kana_YA, kana_ya	]	};
703    key <AE08> { [ 8, parenleft		], [ kana_YU, kana_yu	]	};
704    key <AE09> { [ 9, parenright	], [ kana_YO, kana_yo	]	};
705    key <AE10> { [ 0			], [ kana_WA, kana_WO	]	};
706    key <AE11> { [ minus, equal		], [ kana_HO		]	};
707    key <AE12> { [ asciicircum,	asciitilde], [ kana_HE		]	};
708    key <BKSP> { [ BackSpace		]	};
709
710    key  <TAB> { [ Tab,	ISO_Left_Tab	]	};
711    key <AD01> { [ q, Q 		], [ kana_TA		]	};
712    key <AD02> { [ w, W			], [ kana_TE		]	};
713    key <AD03> { [ e, E			], [ kana_I, kana_i	]	};
714    key <AD04> { [ r, R			], [ kana_SU		]	};
715    key <AD05> { [ t, T			], [ kana_KA		]	};
716    key <AD06> { [ y, Y			], [ kana_N		]	};
717    key <AD07> { [ u, U			], [ kana_NA		]	};
718    key <AD08> { [ i, I			], [ kana_NI		]	};
719    key <AD09> { [ o, O			], [ kana_RA		]	};
720    key <AD10> { [ p, P			], [ kana_SE		]	};
721    key <AD11> { [ at, quoteleft	], [ voicedsound	]	};
722    key <AD12> { [ bracketleft,	braceleft ], [ semivoicedsound, kana_openingbracket ] };
723    key <RTRN> { [ Return		]	};
724
725    key <CAPS> { [ Caps_Lock		]	};
726    key <AC01> { [ a, A 		], [ kana_CHI		]	};
727    key <AC02> { [ s, S			], [ kana_TO		]	};
728    key <AC03> { [ d, D			], [ kana_SHI		]	};
729    key <AC04> { [ f, F			], [ kana_HA		]	};
730    key <AC05> { [ g, G			], [ kana_KI		]	};
731    key <AC06> { [ h, H			], [ kana_KU		]	};
732    key <AC07> { [ j, J			], [ kana_MA		]	};
733    key <AC08> { [ k, K			], [ kana_NO		]	};
734    key <AC09> { [ l, L			], [ kana_RI		]	};
735    key <AC10> { [ semicolon, plus	], [ kana_RE		]	};
736    key <AC11> { [ colon, asterisk	], [ kana_KE		]	};
737    key <TLDE> { [ bracketright, braceright ], [ kana_MU, kana_closingbracket ] };
738
739    key <AB01> { [ z, Z 		], [ kana_TSU, kana_tsu	]	};
740    key <AB02> { [ x, X			], [ kana_SA		]	};
741    key <AB03> { [ c, C			], [ kana_SO		]	};
742    key <AB04> { [ v, V			], [ kana_HI		]	};
743    key <AB05> { [ b, B			], [ kana_KO		]	};
744    key <AB06> { [ n, N			], [ kana_MI		]	};
745    key <AB07> { [ m, M			], [ kana_MO		]	};
746    key <AB08> { [ comma, less		], [ kana_NE, kana_comma ]	};
747    key <AB09> { [ period, greater	], [ kana_RU, kana_fullstop ]	};
748    key <AB10> { [ slash, question	], [ kana_ME, kana_conjunctive ]};
749//    key <UNDR> { [ backslash, underscore], [ kana_RO		]	};
750
751    key <SPCE> { [ space		]			};
752//    key <KANJ> { [ Kanji		]			};
753//    key <HENK> { [ Henkan_Mode		]			};
754//    key <LNFD> { [ backslash, underscore], [ kana_RO		]};
755    // End alphanumeric section
756
757    // Begin "Function" section
758    key <ESC>  { [ Escape		]			};
759    key <FK01> { [ F1			]			};
760    key <FK02> { [ F2			]			};
761    key <FK03> { [ F3			]			};
762    key <FK04> { [ F4			]			};
763    key <FK05> { [ F5			]			};
764    key <FK06> { [ F6			]			};
765    key <FK07> { [ F7			]			};
766    key <FK08> { [ F8			]			};
767    key <FK09> { [ F9			]			};
768    key <FK10> { [ F10			]			};
769    key <FK11> { [ SunF36		]			};
770    key <FK12> { [ SunF37		]			};
771    key <BKSL> { [ backslash, bar	], [ prolongedsound 	] };
772//    key <BRCR> { [ Linefeed		]			};
773//    key <EXEC> { [ Execute		]			};
774
775    key <ESC>  { [ Escape, 3 ] };
776
777    key <AE02> { [ 2, at		], [ kana_FU			]};
778    key <AE06> { [ 6, asciicircum	], [ kana_O, kana_o		]};
779    key <AE07> { [ 7, ampersand		], [ kana_YA, kana_ya		]};
780    key <AE08> { [ 8, asterisk		], [ kana_YU, kana_yu		]};
781    key <AE09> { [ 9, parenleft		], [ kana_YO, kana_yo		]};
782    key <AE10> { [ 0, parenright	], [ kana_WA, kana_WO		]};
783    key <AE11> { [ minus, underscore	], [ kana_HO			]};
784    key <AE12> { [ equal, plus		], [ kana_HE			]};
785
786    key <BKSL> { [ backslash, bar	    ], [ prolongedsound		]};
787    key <AE12> { [ equal, plus		], [ kana_HE			]};
788
789    key <AD11> { [ bracketleft, braceleft  ], [ voicedsound		]};    
790    key <AD12> { [ bracketright, braceright  ], [ semivoicedsound, kana_openingbracket	]};    
791
792    key <AC10> { [ semicolon, colon	     ], [ kana_RE		]};    
793    key <AC11> { [ quoteright, quotedbl	     ], [ kana_KE		]};    
794
795    key <TLDE> { [ quoteleft, asciitilde ], [ kana_MU, kana_closingbracket	]};
796    key <LSGT> { [ backslash, bar	 ], [ kana_RO			]};
797//    key <ALGR> { [ Mode_switch ]	       };
798    key <RALT> { [ Henkan_Mode ]	       };
799    key <RCTL> { [ Mode_switch ]	       };
800
801};
802
803xkb_symbols "Muhenkan_x86" {
804    include "sun_vndr/jp(x86)"
805
806    key <EXEC> { [ Muhenkan ] };
807};
808
809
810
811partial
812xkb_symbols "type7" {
813    include "sun_vndr/jp(type6)"
814    key <AE10> { [ 0, asciitilde       ], [ kana_WA, kana_WO   ]       };
815    key <TLDE> { [ Henkan_Mode ] };
816    key <HENK> { [ Kana_Lock, Mode_switch ] };
817    key <ALGR> { [ Alt_R, Alt_R ] };
818};
819
820