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