se revision c067fea9
1154daed1Smrg//
2c067fea9Sghen// Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
3154daed1Smrg//
4154daed1Smrg// Permission is hereby granted, free of charge, to any person obtaining a
5154daed1Smrg// copy of this software and associated documentation files (the
6154daed1Smrg// "Software"), to deal in the Software without restriction, including
7154daed1Smrg// without limitation the rights to use, copy, modify, merge, publish,
8154daed1Smrg// distribute, and/or sell copies of the Software, and to permit persons
9154daed1Smrg// to whom the Software is furnished to do so, provided that the above
10154daed1Smrg// copyright notice(s) and this permission notice appear in all copies of
11154daed1Smrg// the Software and that both the above copyright notice(s) and this
12154daed1Smrg// permission notice appear in supporting documentation.
13154daed1Smrg// 
14154daed1Smrg// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15154daed1Smrg// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16154daed1Smrg// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
17154daed1Smrg// OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
18154daed1Smrg// HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
19154daed1Smrg// INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
20154daed1Smrg// FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
21154daed1Smrg// NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
22154daed1Smrg// WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
23154daed1Smrg// 
24154daed1Smrg// Except as contained in this notice, the name of a copyright holder
25154daed1Smrg// shall not be used in advertising or otherwise to promote the sale, use
26154daed1Smrg// or other dealings in this Software without prior written authorization
27154daed1Smrg// of the copyright holder.
28154daed1Smrg//
29154daed1Smrg
30c067fea9Sghen//
31c067fea9Sghen// CDDL HEADER START
32c067fea9Sghen//
33c067fea9Sghen// The contents of this file are subject to the terms of the
34c067fea9Sghen// Common Development and Distribution License (the "License").
35c067fea9Sghen// You may not use this file except in compliance with the License.
36c067fea9Sghen//
37c067fea9Sghen// You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
38c067fea9Sghen// or http://www.opensolaris.org/os/licensing.
39c067fea9Sghen// See the License for the specific language governing permissions
40c067fea9Sghen// and limitations under the License.
41c067fea9Sghen//
42c067fea9Sghen// When distributing Covered Code, include this CDDL HEADER in each
43c067fea9Sghen// file and include the License file at src/OPENSOLARIS.LICENSE.
44c067fea9Sghen// If applicable, add the following below this CDDL HEADER, with the
45c067fea9Sghen// fields enclosed by brackets "[]" replaced with your own identifying
46c067fea9Sghen// information: Portions Copyright [yyyy] [name of copyright owner]
47c067fea9Sghen//
48c067fea9Sghen// CDDL HEADER END
49c067fea9Sghen//
50c067fea9Sghen
51c067fea9Sghenpartial alphanumeric_keys
52c067fea9Sghenxkb_symbols "type6" {
53c067fea9Sghen
54c067fea9Sghen    name[Group1]="Sweden";
55154daed1Smrg
56c067fea9Sghen    key <TLDE> { [         section,         onehalf                ] };
57c067fea9Sghen    key <LSGT> { [            less,         greater,           bar ] };
58c067fea9Sghen    key <AE02> { [               2,        quotedbl,            at ] };
59c067fea9Sghen    key <AE03> { [               3,      numbersign,      sterling ] };
60c067fea9Sghen    key <AE04> { [               4,        currency,        dollar ] };
61c067fea9Sghen    key <AE06> { [               6,       ampersand                ] };
62c067fea9Sghen    key <AE07> { [               7,           slash,     braceleft ] };
63c067fea9Sghen    key <AE08> { [               8,       parenleft,   bracketleft ] };
64c067fea9Sghen    key <AE09> { [               9,      parenright,  bracketright ] };
65c067fea9Sghen    key <AE10> { [               0,           equal,    braceright ] };
66c067fea9Sghen    key <AE11> { [            plus,        question,     backslash ] };
67c067fea9Sghen    key <AE12> { [      dead_acute,      dead_grave                ] };
68c067fea9Sghen    key <AD03> { [               e,               E,      EuroSign ] };
69c067fea9Sghen    key <AD11> { [           aring,           Aring                ] };
70c067fea9Sghen    key <AD12> { [  dead_diaeresis,     asciicircum,    asciitilde ] };
71c067fea9Sghen    key <AC10> { [      odiaeresis,      Odiaeresis                ] };
72c067fea9Sghen    key <AC11> { [      adiaeresis,      Adiaeresis                ] };
73c067fea9Sghen    key <BKSL> { [      apostrophe,        asterisk,         grave ] };
74c067fea9Sghen    key <AB08> { [           comma,       semicolon                ] };
75c067fea9Sghen    key <AB09> { [          period,           colon                ] };
76c067fea9Sghen    key <AB10> { [           minus,      underscore                ] };
77c067fea9Sghen
78c067fea9Sghen        include "level3(ralt_switch)"
79c067fea9Sghen        include "kpdl(comma)"
80c067fea9Sghen
81c067fea9Sghen};
82c067fea9Sghen
83c067fea9Sghen// Swedish layout for a Type 5/5c Sun keyboard
84154daed1Smrgxkb_symbols "type5" {
85c067fea9Sghen    include "sun_vndr/us(type5)+se(basic)"
86c067fea9Sghen
87c067fea9Sghen    // Begin alphanumeric section
88c067fea9Sghen    // These two are not supposed to be dead.
89c067fea9Sghen    // A few others supposedly ARE dead, but don't care for now.
90c067fea9Sghen    key <AC12> { [ apostrophe, asterisk ],      [       grave ] };
91c067fea9Sghen    key <AD12> { [                      ],      [  asciitilde ] };
92c067fea9Sghen
93c067fea9Sghen    key <RTSH> { [      Shift_R         ]       };
94c067fea9Sghen
95c067fea9Sghen    key <LALT> { [      Alt_L           ]       };
96c067fea9Sghen    key <ALGR> { [      Mode_switch     ]       };
97c067fea9Sghen    key <LMTA> { [      Meta_L          ]       };
98c067fea9Sghen    key <RMTA> { [      Meta_R          ]       };
99c067fea9Sghen    key <COMP> { [      Multi_key       ]       };
100c067fea9Sghen    // End alphanumeric section
101c067fea9Sghen
102c067fea9Sghen    // Begin "Function" section
103c067fea9Sghen    key <FK01> { [ F1           ]                       };
104c067fea9Sghen    key <FK02> { [ F2           ]                       };
105c067fea9Sghen    key <FK03> { [ F3           ]                       };
106c067fea9Sghen    key <FK04> { [ F4           ]                       };
107c067fea9Sghen    key <FK05> { [ F5           ]                       };
108c067fea9Sghen    key <FK06> { [ F6           ]                       };
109c067fea9Sghen    key <FK07> { [ F7           ]                       };
110c067fea9Sghen    key <FK08> { [ F8           ]                       };
111c067fea9Sghen    key <FK09> { [ F9           ]                       };
112c067fea9Sghen    key <FK10> { [ F10          ]                       };
113c067fea9Sghen    key <FK11> { [ F11          ],      [ SunF36]       };
114c067fea9Sghen    key <FK12> { [ F12          ],      [ SunF37]       };
115c067fea9Sghen    key <STOP> { [ Cancel       ],      [ F11   ]       };
116c067fea9Sghen    key <AGAI> { [ Redo         ],      [ F12   ]       };
117c067fea9Sghen    key <PROP> { [ SunProps     ],      [ F13   ]       };
118c067fea9Sghen    key <UNDO> { [ Undo         ],      [ F14   ]       };
119c067fea9Sghen    key <FRNT> { [ SunFront     ],      [ F15   ]       };
120c067fea9Sghen    key <COPY> { [ SunCopy      ],      [ F16   ]       };
121c067fea9Sghen    key <OPEN> { [ SunOpen      ],      [ F17   ]       };
122c067fea9Sghen    key <PAST> { [ SunPaste     ],      [ F18   ]       };
123c067fea9Sghen    key <FIND> { [ Find         ],      [ F19   ]       };
124c067fea9Sghen    key <CUT>  { [ SunCut       ],      [ F20   ]       };
125c067fea9Sghen    // End "Function" section
126c067fea9Sghen
127c067fea9Sghen    // Begin "Editing" section
128c067fea9Sghen    key <PRSC> { [ Print        ],      [ Sys_Req, SunSys_Req ] };
129c067fea9Sghen    key <SCLK> { [ Scroll_Lock  ]                       };
130c067fea9Sghen    key <PAUS> { [ Pause        ],      [ Break ]       };
131c067fea9Sghen    key <LEFT> { [ Left         ]                       };
132c067fea9Sghen    key <RGHT> { [ Right        ]                       };
133c067fea9Sghen    key <UP>   { [ Up           ]                       };
134c067fea9Sghen    key <DOWN> { [ Down         ]                       };
135c067fea9Sghen
136c067fea9Sghen    key <DELE> { [ Delete       ]                       };
137c067fea9Sghen    key <INS>  { [ Insert       ]                       };
138c067fea9Sghen    key <PGUP> { [ Prior        ]                       };
139c067fea9Sghen    key <PGDN> { [ Next         ]                       };
140c067fea9Sghen    key <HOME> { [ Home         ]                       };
141c067fea9Sghen    key <END>  { [ End          ]                       };
142c067fea9Sghen    key <HELP> { [ Help         ]                       };
143c067fea9Sghen    // End "Editing" section
144c067fea9Sghen    
145c067fea9Sghen    // Begin "Keypad" section
146c067fea9Sghen    key <NMLK> { [ Num_Lock             ]                               };
147c067fea9Sghen    key <KPDV> { [ KP_Divide            ],      [       F25     ]       };
148c067fea9Sghen    key <KPMU> { [ KP_Multiply          ],      [       F26     ]       };
149c067fea9Sghen    key <KPSU> { [ KP_Subtract          ]                               };
150154daed1Smrg
151c067fea9Sghen    key  <KP7> { [  KP_Home,    KP_7    ],      [       F27     ]       };
152c067fea9Sghen    key  <KP8> { [  KP_Up,      KP_8    ],      [       F28     ]       };
153c067fea9Sghen    key  <KP9> { [  KP_Prior,   KP_9    ],      [       F29     ]       };
154c067fea9Sghen    key <KPAD> { [      KP_Add          ]                               };
155154daed1Smrg
156c067fea9Sghen    key  <KP4> { [  KP_Left,    KP_4    ],      [       F30     ]       };
157c067fea9Sghen    key  <KP5> { [  KP_Begin,   KP_5    ],      [       F31     ]       };
158c067fea9Sghen    key  <KP6> { [  KP_Right,   KP_6    ],      [       F32     ]       };
159c067fea9Sghen
160c067fea9Sghen    key  <KP1> { [  KP_End,     KP_1    ],      [       F33     ]       };
161c067fea9Sghen    key  <KP2> { [  KP_Down,    KP_2    ],      [       F34     ]       };
162c067fea9Sghen    key  <KP3> { [  KP_Next,    KP_3    ],      [       F35     ]       };
163c067fea9Sghen    key <KPEN> { [      KP_Enter        ]                               };
164c067fea9Sghen
165c067fea9Sghen    key  <KP0> { [  KP_Insert,  KP_0    ]                               };
166c067fea9Sghen    key <KPDL> { [  KP_Delete,  KP_Decimal ]                            };
167c067fea9Sghen    // End "Keypad" section, 
168c067fea9Sghen
169c067fea9Sghen    // Begin "four keys up on the right"
170c067fea9Sghen    key <MUTE> { [  SunAudioMute,       SunVideoDegauss         ]       };
171c067fea9Sghen    key <VOL-> { [  SunAudioLowerVolume,SunVideoLowerBrightness ]       };
172c067fea9Sghen    key <VOL+> { [  SunAudioRaiseVolume,SunVideoRaiseBrightness ]       };
173c067fea9Sghen    key <POWR> { [  SunPowerSwitch,     SunPowerSwitchShift     ]       };
174c067fea9Sghen    // End "four keys up on the right"
175c067fea9Sghen
176c067fea9Sghen    // Begin modifier mappings
177c067fea9Sghen    modifier_map Shift  { Shift_R };
178c067fea9Sghen    modifier_map Mod1   { Meta_L, Meta_R };
179c067fea9Sghen    modifier_map Mod2   { Num_Lock };
180c067fea9Sghen    modifier_map Mod3   { Mode_switch };
181c067fea9Sghen    modifier_map Mod4   { Alt_L };
182c067fea9Sghen    // End modifier mappings
183154daed1Smrg};
184154daed1Smrg
185c067fea9Sghen// Swedish layout for a Type 4 Sun keyboard
186c067fea9Sghenxkb_symbols "type4" {
187c067fea9Sghen    include "sun_vndr/us(type4basic)+se(basic)"
188c067fea9Sghen
189c067fea9Sghen    // Begin alphanumeric section
190c067fea9Sghen    // These two are not supposed to be dead.
191c067fea9Sghen    // A few others supposedly ARE dead, but don't care for now.
192c067fea9Sghen    key <AC12> { [ apostrophe, asterisk ],      [       grave ] };
193c067fea9Sghen    key <AD12> { [                      ],      [  asciitilde ] };
194c067fea9Sghen
195c067fea9Sghen    key <AF14> { [      asciitilde,     asciicircum     ] };
196c067fea9Sghen
197c067fea9Sghen    key <RTSH> { [      Shift_R         ]       };
198c067fea9Sghen
199c067fea9Sghen    key <LALT> { [      Alt_L           ]       };
200c067fea9Sghen    key <ALGR> { [      Mode_switch     ]       };
201c067fea9Sghen    key <LMTA> { [      Meta_L          ]       };
202c067fea9Sghen    key <RMTA> { [      Meta_R          ]       };
203c067fea9Sghen    key <COMP> { [      Multi_key       ]       };
204c067fea9Sghen    // End alphanumeric section
205c067fea9Sghen
206c067fea9Sghen    // Begin "Function" section
207c067fea9Sghen    key <FK01> { [ F1           ]                       };
208c067fea9Sghen    key <FK02> { [ F2           ]                       };
209c067fea9Sghen    key <FK03> { [ F3           ]                       };
210c067fea9Sghen    key <FK04> { [ F4           ]                       };
211c067fea9Sghen    key <FK05> { [ F5           ]                       };
212c067fea9Sghen    key <FK06> { [ F6           ]                       };
213c067fea9Sghen    key <FK07> { [ F7           ]                       };
214c067fea9Sghen    key <FK08> { [ F8           ]                       };
215c067fea9Sghen    key <FK09> { [ F9           ]                       };
216c067fea9Sghen    key <FK10> { [ F10          ]                       };
217c067fea9Sghen    key <FK11> { [ F11          ],      [ SunF36]       };
218c067fea9Sghen    key <FK12> { [ F12          ],      [ SunF37]       };
219c067fea9Sghen    key <STOP> { [ Cancel       ],      [ F11   ]       };
220c067fea9Sghen    key <AGAI> { [ Redo         ],      [ F12   ]       };
221c067fea9Sghen    key <PROP> { [ SunProps     ],      [ F13   ]       };
222c067fea9Sghen    key <UNDO> { [ Undo         ],      [ F14   ]       };
223c067fea9Sghen    key <FRNT> { [ SunFront     ],      [ F15   ]       };
224c067fea9Sghen    key <COPY> { [ SunCopy      ],      [ F16   ]       };
225c067fea9Sghen    key <OPEN> { [ SunOpen      ],      [ F17   ]       };
226c067fea9Sghen    key <PAST> { [ SunPaste     ],      [ F18   ]       };
227c067fea9Sghen    key <FIND> { [ Find         ],      [ F19   ]       };
228c067fea9Sghen    key <CUT>  { [ SunCut       ],      [ F20   ]       };
229c067fea9Sghen    // End "Function" section
230c067fea9Sghen
231c067fea9Sghen    // Begin "Editing" section
232c067fea9Sghen    key <LNFD> { [ Linefeed     ]       };
233c067fea9Sghen    key <DELE> { [ Delete       ]                       };
234c067fea9Sghen    key <PRSC> { [ Print        ],      [ Sys_Req, SunSys_Req ] };
235c067fea9Sghen    key <SCLK> { [ Scroll_Lock  ]                       };
236c067fea9Sghen    key <PAUS> { [ Pause        ],      [ Break ]       };
237c067fea9Sghen    key <HELP> { [ Help         ]                       };
238c067fea9Sghen    // End "Editing" section
239c067fea9Sghen    
240c067fea9Sghen   // Begin "Keypad" section
241c067fea9Sghen    key <NMLK> { [ Num_Lock             ]                               };
242c067fea9Sghen    key <KPEQ> { [ KP_Equal             ]                               };
243c067fea9Sghen    key <KPDV> { [ KP_Divide            ],      [       F25     ]       };
244c067fea9Sghen    key <KPMU> { [ KP_Multiply          ],      [       F26     ]       };
245c067fea9Sghen    key <KPSU> { [ KP_Subtract          ]                               };
246c067fea9Sghen
247c067fea9Sghen    key  <KP7> { [  KP_Home,    KP_7    ],      [       F27     ]       };
248c067fea9Sghen    key  <KP8> { [  KP_Up,      KP_8    ],      [       F28     ]       };
249c067fea9Sghen    key  <KP9> { [  KP_Prior,   KP_9    ],      [       F29     ]       };
250c067fea9Sghen    key <KPAD> { [      KP_Add          ]                               };
251c067fea9Sghen
252c067fea9Sghen    key  <KP4> { [  KP_Left,    KP_4    ],      [       F30     ]       };
253c067fea9Sghen    key  <KP5> { [  KP_Begin,   KP_5    ],      [       F31     ]       };
254c067fea9Sghen    key  <KP6> { [  KP_Right,   KP_6    ],      [       F32     ]       };
255c067fea9Sghen
256c067fea9Sghen    key  <KP1> { [  KP_End,     KP_1    ],      [       F33     ]       };
257c067fea9Sghen    key  <KP2> { [  KP_Down,    KP_2    ],      [       F34     ]       };
258c067fea9Sghen    key  <KP3> { [  KP_Next,    KP_3    ],      [       F35     ]       };
259c067fea9Sghen    key <KPEN> { [      KP_Enter        ]                               };
260c067fea9Sghen
261c067fea9Sghen    key  <KP0> { [  KP_Insert,  KP_0    ]                               };
262c067fea9Sghen    key <KPDL> { [  KP_Delete,  KP_Decimal ]                            };
263c067fea9Sghen    // End "Keypad" section, 
264c067fea9Sghen
265c067fea9Sghen    // Begin modifier mappings
266c067fea9Sghen    modifier_map Shift  { Shift_R };
267c067fea9Sghen    modifier_map Mod1   { Alt_L };
268c067fea9Sghen    modifier_map Mod2   { Num_Lock };
269c067fea9Sghen    modifier_map Mod3   { Mode_switch };
270c067fea9Sghen    modifier_map Mod4   { Meta_L };
271c067fea9Sghen    modifier_map Mod5   { Meta_R };
272c067fea9Sghen    // End modifier mappings
273154daed1Smrg};
274c067fea9Sghen
275c067fea9Sghen
276c067fea9Sghenpartial default alphanumeric_keys
277c067fea9Sghen	xkb_symbols "basic" {
278c067fea9Sghen	include "sun_vndr/se(type6)"
279c067fea9Sghen};
280c067fea9Sghen
281