//------------------------------------------------------------------------- // // Copyright 2010 Sun Microsystems, Inc. All rights reserved. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, and/or sell copies of the Software, and to permit persons // to whom the Software is furnished to do so, provided that the above // copyright notice(s) and this permission notice appear in all copies of // the Software and that both the above copyright notice(s) and this // permission notice appear in supporting documentation. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT // OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR // HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL // INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING // FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, // NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION // WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. // // Except as contained in this notice, the name of a copyright holder // shall not be used in advertising or otherwise to promote the sale, use // or other dealings in this Software without prior written authorization // of the copyright holder. // //------------------------------------------------------------------------- // // // CDDL HEADER START // // The contents of this file are subject to the terms of the // Common Development and Distribution License (the "License"). // You may not use this file except in compliance with the License. // // You can obtain a copy of the license at src/OPENSOLARIS.LICENSE // or http://www.opensolaris.org/os/licensing. // See the License for the specific language governing permissions // and limitations under the License. // // When distributing Covered Code, include this CDDL HEADER in each // file and include the License file at src/OPENSOLARIS.LICENSE. // If applicable, add the following below this CDDL HEADER, with the // fields enclosed by brackets "[]" replaced with your own identifying // information: Portions Copyright [yyyy] [name of copyright owner] // // CDDL HEADER END // // Default map provides backwards compatibility with Sun keyboards from // long ago and the key mappings still used in Solaris Xsun today partial default xkb_symbols "defaults_common" { // Left side keys were labeled L1-L10 on Sun Type 2 & Type 3 keyboards // and the names have stuck (you can spot a longtime Sun admin when you // hear them say to hit "L1-A" to enter the OpenBoot PROM) // These names get mapped to the keysyms F11-F20 key { [ L1, L1 ], [ SunStop ] }; key { [ L2, L2 ], [ SunAgain ] }; key { [ L3, L3 ], [ SunProps ] }; key { [ L4, L4 ], [ SunUndo ] }; key { [ L5, L5 ], [ SunFront ] }; key { [ L6, L6 ], [ SunCopy ] }; key { [ L7, L7 ], [ SunOpen ] }; key { [ L8, L8 ], [ SunPaste ] }; key { [ L9, L9 ], [ SunFind ] }; key { [ L10, L10 ], [ SunCut ] }; // And on the right side, the function keys were labeled R1-R15, // which get mapped to the keysyms F21-F35 // This includes the keys that became the numeric keypad key { [ R1, R1 ], [ Pause ] }; key { [ R2, R2 ], [ Print ] }; key { [ R3, R3 ], [ Scroll_Lock, Break ] }; key { [ KP_Equal ], [ R4, KP_Equal ] }; key { [ KP_Divide ], [ R5, KP_Divide ] }; key { [ KP_Multiply ], [ R6, KP_Multiply ] }; key { [ KP_Home, KP_7, R7 ], [ R7, KP_7, Home ] }; key { [ KP_Up, KP_8, R8 ], [ R8, KP_8, Up ] }; key { [ KP_Prior, KP_9, R9 ], [ R9, KP_9, Prior ] }; key { [ KP_Left, KP_4, R10 ], [ R10, KP_4, Left ] }; key { [ KP_Begin, KP_5, R11 ], [ R11, KP_5 ] }; key { [ KP_Right, KP_6, R12 ], [ R12, KP_6, Right ] }; key { [ KP_End, KP_1, R13 ], [ R13, KP_1, End ] }; key { [ KP_Down, KP_2, R14 ], [ R14, KP_2, Down ] }; key { [ KP_Next, KP_3, R15 ], [ R15, KP_3, Next ] }; // F11 & F12 are mapped to SunF36 and SunF37 since they were added // after F11-F35 were already assigned on Sun keyboards key { [ SunF36 ], [ F11 ] }; key { [ SunF37 ], [ F12 ] }; // These were added to the keyboard much later and simply got mapped // to their logical names key { [ Help ] }; key { [ SunAudioMute, SunVideoDegauss ] }; key { [ SunAudioLowerVolume,SunVideoLowerBrightness ] }; key { [ SunAudioRaiseVolume,SunVideoRaiseBrightness ] }; key { [ XF86Sleep, XF86Hibernate ] }; // key { [ Alt_L ] }; // key { [ Meta_L ] }; // key { [ Meta_R ] }; // key { [ Multi_key ] }; }; partial default xkb_symbols "defaults" { include "sun_vndr/solaris(defaults_common)" // key { [ Mode_switch ] }; // key { [ Mode_switch ] }; // begin modifier mappings // modifier_map Shift { Shift_R, Shift_L }; // modifier_map Mod1 { Alt_L }; // modifier_map Mod2 { Num_Lock }; // modifier_map Mod3 { Alt_R, Mode_switch }; // modifier_map Mod4 { Meta_L, Meta_R }; }; partial default xkb_symbols "defaults_type7jp" { include "sun_vndr/solaris(defaults_common)" // begin modifier mappings modifier_map Shift { Shift_R, Shift_L }; modifier_map Mod1 { Alt_L , Alt_R}; modifier_map Mod2 { Num_Lock }; modifier_map Mod3 { Mode_switch }; modifier_map Mod4 { Meta_L, Meta_R }; }; // Map the keys to the actual key names instead of the ancient Sun function // keys partial xkb_symbols "keynames" { key { [ F11 ], [ SunF36 ] }; key { [ F12 ], [ SunF37 ] }; key { [ Cancel ], [ F11 ] }; key { [ Redo ], [ F12 ] }; key { [ SunProps ], [ F13 ] }; key { [ Undo ], [ F14 ] }; key { [ SunFront ], [ F15 ] }; key { [ SunCopy ], [ F16 ] }; key { [ SunOpen ], [ F17 ] }; key { [ SunPaste ], [ F18 ] }; key { [ Find ], [ F19 ] }; key { [ SunCut ], [ F20 ] }; key { [ Help ] }; key { [ Pause ] }; key { [ Print ] }; key { [ Scroll_Lock, Break ] }; key { [ KP_Home, KP_7 ] }; key { [ KP_Up, KP_8 ] }; key { [ KP_Prior, KP_9 ] }; key { [ KP_Left, KP_4 ] }; key { [ KP_Begin, KP_5 ] }; key { [ KP_Right, KP_6 ] }; key { [ KP_End, KP_1 ] }; key { [ KP_Down, KP_2 ] }; key { [ KP_Next, KP_3 ] }; key { [ KP_Enter ] }; key { [ KP_Equal ] }; key { [ SunAudioMute, SunVideoDegauss ] }; key { [ SunAudioLowerVolume, SunVideoLowerBrightness ] }; key { [ SunAudioRaiseVolume, SunVideoRaiseBrightness ] }; key { [ SunPowerSwitch, SunPowerSwitchShift ] }; key { [ Alt_L ] }; key { [ Mode_switch ] }; key { [ Mode_switch ] }; key { [ Meta_L ] }; key { [ Meta_R ] }; key { [ Multi_key ] }; }; // Map the keys to the XFree86 key names instead of the Sun key names partial xkb_symbols "xf86keynames" { key { [ XF86Stop ], [ F11 ] }; key { [ Redo ], [ F12 ] }; key { [ SunProps ], [ F13 ] }; key { [ Undo ], [ F14 ] }; key { [ SunFront ], [ F15 ] }; key { [ XF86Copy ], [ F16 ] }; key { [ XF86Open ], [ F17 ] }; key { [ XF86Paste ], [ F18 ] }; key { [ Find ], [ F19 ] }; key { [ XF86Cut ], [ F20 ] }; key { [ XF86AudioMute, SunVideoDegauss ] }; key { [ XF86AudioLowerVolume,SunVideoLowerBrightness ] }; key { [ XF86AudioRaiseVolume,SunVideoRaiseBrightness ] }; key { [ XF86Sleep, XF86PowerDown ] }; };