us 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// 30154daed1Smrg//Copyright 1996, 1998 The Open Group 31154daed1Smrg// 32154daed1Smrg//All Rights Reserved. 33154daed1Smrg// 34154daed1Smrg//The above copyright notice and this permission notice shall be 35154daed1Smrg//included in all copies or substantial portions of the Software. 36154daed1Smrg// 37154daed1Smrg//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 38154daed1Smrg//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 39154daed1Smrg//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 40154daed1Smrg//IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 41154daed1Smrg//OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 42154daed1Smrg//ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 43154daed1Smrg//OTHER DEALINGS IN THE SOFTWARE. 44154daed1Smrg// 45154daed1Smrg//Except as contained in this notice, the name of The Open Group shall 46154daed1Smrg//not be used in advertising or otherwise to promote the sale, use or 47154daed1Smrg//other dealings in this Software without prior written authorization 48154daed1Smrg//from The Open Group. 49154daed1Smrg// 50154daed1Smrg 51c067fea9Sghen// 52c067fea9Sghen// CDDL HEADER START 53c067fea9Sghen// 54c067fea9Sghen// The contents of this file are subject to the terms of the 55c067fea9Sghen// Common Development and Distribution License (the "License"). 56c067fea9Sghen// You may not use this file except in compliance with the License. 57c067fea9Sghen// 58c067fea9Sghen// You can obtain a copy of the license at src/OPENSOLARIS.LICENSE 59c067fea9Sghen// or http://www.opensolaris.org/os/licensing. 60c067fea9Sghen// See the License for the specific language governing permissions 61c067fea9Sghen// and limitations under the License. 62c067fea9Sghen// 63c067fea9Sghen// When distributing Covered Code, include this CDDL HEADER in each 64c067fea9Sghen// file and include the License file at src/OPENSOLARIS.LICENSE. 65c067fea9Sghen// If applicable, add the following below this CDDL HEADER, with the 66c067fea9Sghen// fields enclosed by brackets "[]" replaced with your own identifying 67c067fea9Sghen// information: Portions Copyright [yyyy] [name of copyright owner] 68c067fea9Sghen// 69c067fea9Sghen// CDDL HEADER END 70c067fea9Sghen// 71c067fea9Sghen 72154daed1Smrg// Symbols shared by all Sun Keyboard layouts 73154daed1Smrgxkb_symbols "sunbasic" { 74154daed1Smrg include "srvr_ctrl(xfree86)" 75154daed1Smrg 76154daed1Smrg // Needed for left function keys and volume keys 77154daed1Smrg // Need to include this before us(basic) otherwise tilde is mapped to 78154daed1Smrg // a jp key 79154daed1Smrg include "inet(evdev)" 80154daed1Smrg 81154daed1Smrg include "us(basic)" 82154daed1Smrg include "pc(function)" 83154daed1Smrg include "pc(editing)" 84154daed1Smrg include "keypad(x11)" 85154daed1Smrg 86c067fea9Sghen key <ESC> { [ Escape ] }; 87c067fea9Sghen 88c067fea9Sghen // the extra key on most European keyboards 89c067fea9Sghen key <LSGT> { [ less, greater, bar, brokenbar ] }; 90c067fea9Sghen 91c067fea9Sghen // these keys are common to almost all layouts 92c067fea9Sghen key <BKSL> { [ backslash, bar ] }; 93c067fea9Sghen key <SPCE> { [ space ] }; 94c067fea9Sghen 95c067fea9Sghen key <BKSP> { [ BackSpace ] }; 96c067fea9Sghen key <TAB> { [ Tab, ISO_Left_Tab ] }; 97c067fea9Sghen key <RTRN> { [ Return ] }; 98c067fea9Sghen 99c067fea9Sghen key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] }; 100c067fea9Sghen 101c067fea9Sghen key <COMP> { [ Multi_key ] }; 102c067fea9Sghen // End alphanumeric section 103c067fea9Sghen 104c067fea9Sghen key <LFSH> { [ Shift_L ] }; 105c067fea9Sghen key <LCTL> { [ Control_L ] }; 106c067fea9Sghen 107c067fea9Sghen key <RTSH> { [ Shift_R ] }; 108c067fea9Sghen key <RCTL> { [ Control_R ] }; 109c067fea9Sghen 110c067fea9Sghen 111c067fea9Sghen // begin modifier mappings 112c067fea9Sghen modifier_map Shift { Shift_L, Shift_R }; 113c067fea9Sghen modifier_map Lock { Caps_Lock, ISO_Lock }; 114c067fea9Sghen modifier_map Control{ Control_L, Control_R }; 115c067fea9Sghen modifier_map Mod2 { Num_Lock }; 116c067fea9Sghen 117c067fea9Sghen // Fake keys for virtual<->real modifiers mapping 118c067fea9Sghen key <LVL3> { [ ISO_Level3_Shift ] }; 119c067fea9Sghen key <MDSW> { [ Mode_switch ] }; 120c067fea9Sghen modifier_map Mod5 { <LVL3>, <MDSW> }; 121c067fea9Sghen 122c067fea9Sghen key <ALT> { [ NoSymbol, Alt_L ] }; 123c067fea9Sghen key <LALT> { [ Alt_L, Alt_L ] }; 124c067fea9Sghen key <LWIN> { [ Meta_L ] }; 125c067fea9Sghen key <RWIN> { [ Meta_R ] }; 126c067fea9Sghen modifier_map Mod1 { Alt_L }; 127c067fea9Sghen modifier_map Mod4 { Meta_L, Meta_R }; 128c067fea9Sghen 129c067fea9Sghen// key <LALT> { [ Alt_L ] }; 130c067fea9Sghen// key <ALGR> { [ Mode_switch ] }; 131c067fea9Sghen// key <LMTA> { [ Meta_L ] }; 132c067fea9Sghen// key <RMTA> { [ Meta_R ] }; 133c067fea9Sghen 134154daed1Smrg include "sun_vndr/us(left_funkeys)" 135154daed1Smrg 136154daed1Smrg include "capslock(capslock)" 137154daed1Smrg //include "capslock(shiftlock)" 138154daed1Smrg 139c067fea9Sghen 140c067fea9Sghen// This default section uses the same symbols as other XKB implementations 141c067fea9Sghen// for greater compatibility & AccessX MouseKeys support, but it is 142c067fea9Sghen// different than the traditional Sun key mappings that date back to the 143c067fea9Sghen// Sun Type 2 keyboard, in which the right side numpad were "R" function 144c067fea9Sghen// keys. To restore the original behavior, comment out this section and 145c067fea9Sghen// uncomment the section below that lists the R key mappings. 146c067fea9Sghen key <KPDV> { [ KP_Divide ] }; 147c067fea9Sghen key <KPMU> { [ KP_Multiply ] }; 148c067fea9Sghen key <KPSU> { [ KP_Subtract ] }; 149c067fea9Sghen 150c067fea9Sghen key <KP7> { [ KP_Home, KP_7 ] }; 151c067fea9Sghen key <KP8> { [ KP_Up, KP_8 ] }; 152c067fea9Sghen key <KP9> { [ KP_Prior, KP_9 ] }; 153c067fea9Sghen key <KPAD> { [ KP_Add ] }; 154c067fea9Sghen 155c067fea9Sghen key <KP4> { [ KP_Left, KP_4 ] }; 156c067fea9Sghen key <KP5> { [ KP_Begin, KP_5 ] }; 157c067fea9Sghen key <KP6> { [ KP_Right, KP_6 ] }; 158c067fea9Sghen 159c067fea9Sghen key <KP1> { [ KP_End, KP_1 ] }; 160c067fea9Sghen key <KP2> { [ KP_Down, KP_2 ] }; 161c067fea9Sghen key <KP3> { [ KP_Next, KP_3 ] }; 162c067fea9Sghen key <KPEN> { [ KP_Enter ] }; 163c067fea9Sghen 164c067fea9Sghen key <KP0> { [ KP_Insert, KP_0 ] }; 165c067fea9Sghen key <KPDL> { [ KP_Delete, KP_Decimal ] }; 166c067fea9Sghen 167c067fea9Sghen// End New Keypad section - Begin Sun traditional Keypad section 168c067fea9Sghen 169c067fea9Sghen// key <KP7> { [ R7, R7 ], [ KP_7, Home ] }; 170154daed1Smrg// key <KP8> { [ Up, R8 ], [ KP_8 ] }; 171c067fea9Sghen// key <KP9> { [ R9, R9 ], [ KP_9, Prior ] }; 172c067fea9Sghen// key <KPAD> { [ KP_Add ] }; 173154daed1Smrg// 174c067fea9Sghen// key <KP4> { [ Left, R10 ], [ KP_4 ] }; 175c067fea9Sghen// key <KP5> { [ R11, R11 ], [ KP_5 ] }; 176c067fea9Sghen// key <KP6> { [ Right, R12 ], [ KP_6 ] }; 177154daed1Smrg// 178c067fea9Sghen// key <KP1> { [ R13, R13 ], [ KP_1, End ] }; 179c067fea9Sghen// key <KP2> { [ Down, R14 ], [ KP_2 ] }; 180c067fea9Sghen// key <KP3> { [ R15, R15 ], [ KP_3, Next ] }; 181c067fea9Sghen// key <KPEN> { [ KP_Enter ] }; 182c067fea9Sghen// key <KP0> { [ KP_Insert, KP_Insert], [ KP_0 ] }; 183c067fea9Sghen// key <KPDL> { [ Delete, Delete ], [ KP_Decimal ] }; 184c067fea9Sghen 185c067fea9Sghen// End "Keypad" section 186c067fea9Sghen 187154daed1Smrg}; 188154daed1Smrg 189c067fea9Sghen 190154daed1Smrgxkb_symbols "left_funkeys" { 191154daed1Smrg // Suppliment to inet(evdev) for added functionality of left-funkeys 192c067fea9Sghen //key <STOP> { [ NoSymbol ], [ L1, L1 ] }; 193c067fea9Sghen //key <AGAI> { [ NoSymbol ], [ L2, L2 ] }; 194c067fea9Sghen //key <PROP> { [ NoSymbol ], [ L3, L3 ] }; 195c067fea9Sghen //key <UNDO> { [ NoSymbol ], [ L4, L4 ] }; 196c067fea9Sghen //key <FRNT> { [ NoSymbol ], [ L5, L5 ] }; 197c067fea9Sghen //key <COPY> { [ NoSymbol ], [ L6, L6 ] }; 198c067fea9Sghen //key <OPEN> { [ NoSymbol ], [ L7, L7 ] }; 199c067fea9Sghen //key <PAST> { [ NoSymbol ], [ L8, L8 ] }; 200c067fea9Sghen //key <FIND> { [ NoSymbol ], [ L9, L9 ] }; 201c067fea9Sghen //key <CUT> { [ NoSymbol ], [ L10, L10 ] }; 202154daed1Smrg 203154daed1Smrg // The above symbols were chosen for better compatibility withother xkb 204154daed1Smrg // mappings. The old mappings are kepy below in case someone needs them 205c067fea9Sghen key <STOP> { [ L1, L1, SunStop ] }; 206c067fea9Sghen key <AGAI> { [ L2, L2, SunAgain ] }; 207c067fea9Sghen key <PROP> { [ L3, L3, SunProps ] }; 208c067fea9Sghen key <UNDO> { [ L4, L4, SunUndo ] }; 209c067fea9Sghen key <FRNT> { [ L5, L5, SunFront ] }; 210c067fea9Sghen key <COPY> { [ L6, L6, SunCopy ] }; 211c067fea9Sghen key <OPEN> { [ L7, L7, SunOpen ] }; 212c067fea9Sghen key <PAST> { [ L8, L8, SunPaste ] }; 213c067fea9Sghen key <FIND> { [ L9, L9, SunFind ] }; 214c067fea9Sghen key <CUT> { [ L10, L10, SunCut ] }; 215154daed1Smrg}; 216154daed1Smrg 217154daed1Smrghidden 218154daed1Smrgxkb_symbols "volumekeys" { 219154daed1Smrg // Suppliment to inet(evdev) for added functionality of audio keys 220c067fea9Sghen key <MUTE> { [ NoSymbol, SunVideoDegauss ] }; 221c067fea9Sghen key <VOL-> { [ NoSymbol, XF86MonBrightnessDown ] }; 222c067fea9Sghen key <VOL+> { [ NoSymbol, XF86MonBrightnessUp ] }; 223154daed1Smrg 224154daed1Smrg // The above symbols were chosen for better compatibility withother xkb 225154daed1Smrg // mappings. The old mappings are kepy below in case someone needs them 226c067fea9Sghen //key <MUTE> { [ SunAudioMute, SunVideoDegauss ] }; 227c067fea9Sghen //key <VOL-> { [ SunAudioLowerVolume, SunVideoLowerBrightness ] }; 228c067fea9Sghen //key <VOL+> { [ SunAudioRaiseVolume, SunVideoRaiseBrightness ] }; 229c067fea9Sghen //key <POWR> { [ SunPowerSwitch, SunPowerSwitchShift ] }; 230154daed1Smrg}; 231154daed1Smrg 232c067fea9Sghen 233154daed1Smrg// US/ASCII layout for a Type 4 Sun keyboard 234154daed1Smrgxkb_symbols "type4basic" { 235154daed1Smrg include "sun_vndr/us(sunbasic)" 236154daed1Smrg 237154daed1Smrg // A few alphanumeric keys are different 238c067fea9Sghen key <AE04> { [ 4, dollar, EuroSign ] }; 239c067fea9Sghen key <AE05> { [ 5, percent, EuroSign ] }; 240c067fea9Sghen key <AD03> { [ e, E, EuroSign ] }; 241154daed1Smrg 242154daed1Smrg key <LNFD> { [ Linefeed ] }; 243154daed1Smrg 244154daed1Smrg // Begin "Editing" section 245c067fea9Sghen key <PRSC> { [ R2, R2, Print ] }; 246c067fea9Sghen key <SCLK> { [ R3, R3, Scroll_Lock, Break ] }; 247c067fea9Sghen key <PAUS> { [ R1, R1, Pause ] }; 248154daed1Smrg 249154daed1Smrg // End "Editing" section, begin "Keypad" 250c067fea9Sghen key <KPEQ> { [ R4, KP_Equal, KP_Equal ] }; 251c067fea9Sghen 252154daed1Smrg}; 253154daed1Smrg 254154daed1Smrgxkb_symbols "type4" { 255154daed1Smrg include "sun_vndr/us(type4basic)" 256154daed1Smrg 257c067fea9Sghen key <BKSL> { [ backslash, bar, brokenbar ] }; 258154daed1Smrg}; 259154daed1Smrg 260154daed1Smrg// US/ASCII layout for a Type 5 Sun keyboard 261154daed1Smrgxkb_symbols "type5basic" { 262154daed1Smrg include "sun_vndr/us(sunbasic)" 263154daed1Smrg include "sun_vndr/us(volumekeys)" 264154daed1Smrg 265154daed1Smrg // Begin "Editing" section 266c067fea9Sghen key <PRSC> { [ R2, R2, Print, SunSys_Req ] }; 267c067fea9Sghen key <SCLK> { [ R3, R3, Scroll_Lock ] }; 268c067fea9Sghen key <PAUS> { [ R1, R1, Pause, Break ] }; 269154daed1Smrg // End "Editing" section 270154daed1Smrg}; 271154daed1Smrg 272154daed1Smrgxkb_symbols "type5" { 273154daed1Smrg include "sun_vndr/us(type5basic)" 274154daed1Smrg 275154daed1Smrg // A few alphanumeric keys are different 276c067fea9Sghen key <AE04> { [ 4, dollar, EuroSign ] }; 277c067fea9Sghen key <AE05> { [ 5, percent, EuroSign ] }; 278c067fea9Sghen key <AD03> { [ e, E , EuroSign ] }; 279c067fea9Sghen key <BKSL> { [ backslash, bar, brokenbar ] }; 280154daed1Smrg}; 281154daed1Smrg 282154daed1Smrg// US/ASCII layout for a Type 5 Sun keyboard 283154daed1Smrgxkb_symbols "type5hobobasic" { 284154daed1Smrg include "sun_vndr/us(type5basic)" 285154daed1Smrg}; 286154daed1Smrg 287154daed1Smrgxkb_symbols "type5hobo" { 288154daed1Smrg include "sun_vndr/us(type5hobobasic)" 289154daed1Smrg 290154daed1Smrg // A few alphanumeric keys are different 291c067fea9Sghen key <AE04> { [ 4, dollar, EuroSign ] }; 292c067fea9Sghen key <AE05> { [ 5, percent, EuroSign ] }; 293c067fea9Sghen key <AD03> { [ e, E, EuroSign ] }; 294c067fea9Sghen key <BKSL> { [ backslash, bar, brokenbar ] }; 295154daed1Smrg 296154daed1Smrg // Here is the hobo keypad: 297154daed1Smrg 298c067fea9Sghen key <AE07> { [ 7, ampersand, NoSymbol, NoSymbol, KP_7 ] }; 299c067fea9Sghen key <AE08> { [ 8, asterisk, NoSymbol, NoSymbol, KP_8 ] }; 300c067fea9Sghen key <AE09> { [ 9, parenleft, NoSymbol, NoSymbol, KP_9 ] }; 301c067fea9Sghen key <AE10> { [ 0, parenright, NoSymbol, NoSymbol, KP_Multiply] }; 302154daed1Smrg 303c067fea9Sghen key <AD07> { [ u, U, NoSymbol, NoSymbol, KP_4 ] }; 304c067fea9Sghen key <AD08> { [ i, I, NoSymbol, NoSymbol, KP_5 ] }; 305c067fea9Sghen key <AD09> { [ o, O, NoSymbol, NoSymbol, KP_6 ] }; 306c067fea9Sghen key <AD10> { [ p, P, NoSymbol, NoSymbol, KP_Subtract] }; 307154daed1Smrg 308c067fea9Sghen key <AC07> { [ j, J, NoSymbol, NoSymbol, KP_1 ] }; 309c067fea9Sghen key <AC08> { [ k, K, NoSymbol, NoSymbol, KP_2 ] }; 310c067fea9Sghen key <AC09> { [ l, L, NoSymbol, NoSymbol, KP_3 ] }; 311c067fea9Sghen key <AC10> { [ semicolon, colon, NoSymbol, NoSymbol, KP_Add ] }; 312154daed1Smrg 313c067fea9Sghen key <RTRN> { [ Return, NoSymbol, NoSymbol, KP_Enter ] }; 314154daed1Smrg 315c067fea9Sghen key <AB07> { [ m, M, NoSymbol, NoSymbol, KP_0 ] }; 316154daed1Smrg 317c067fea9Sghen key <AB09> { [ period, greater, NoSymbol, NoSymbol, KP_Decimal] }; 318c067fea9Sghen key <AB10> { [ slash, question, NoSymbol, NoSymbol, KP_Divide ] }; 319154daed1Smrg}; 320154daed1Smrg 321c067fea9Sghen 322154daed1Smrgxkb_symbols "type6" { 323154daed1Smrg include "sun_vndr/us(sunbasic)" 324154daed1Smrg include "sun_vndr/us(volumekeys)" 325154daed1Smrg include "eurosign(4)" 326c067fea9Sghen include "level3(ralt_switch)" 327154daed1Smrg 328c067fea9Sghen key <SYRQ> { [ SunSys_Req ]}; 329154daed1Smrg}; 330154daed1Smrg 331c067fea9Sghen 332c067fea9Sghen 333154daed1Smrgxkb_symbols "pc101" { 334154daed1Smrg include "us(pc101)" 335154daed1Smrg key <RALT> { [ Mode_switch, Meta_R ] }; 336154daed1Smrg}; 337154daed1Smrg 338154daed1Smrgxkb_symbols "pc102" { 339154daed1Smrg include "us(pc102)" 340154daed1Smrg key <RALT> { [ Mode_switch, Meta_R ] }; 341154daed1Smrg}; 342154daed1Smrg 343154daed1Smrgxkb_symbols "pc104" { 344154daed1Smrg include "us(pc104)" 345154daed1Smrg}; 346154daed1Smrg 347154daed1Smrgxkb_symbols "pc101currency" { 348154daed1Smrg 349154daed1Smrg key <AE04> { [ 4, dollar ], [ EuroSign ] }; 350154daed1Smrg key <AE05> { [ 5, percent ], [ EuroSign ] }; 351154daed1Smrg key <AD03> { [ e, E ], [ EuroSign ] }; 352154daed1Smrg key <BKSL> { [ backslash, bar ], [ brokenbar ]}; 353154daed1Smrg}; 354154daed1Smrg 355154daed1Smrgxkb_symbols "US101A_Sun" { 356154daed1Smrg 357154daed1Smrg key <AE04> { [ 4, dollar ], [ EuroSign ] }; 358154daed1Smrg key <AE05> { [ 5, percent ], [ EuroSign ] }; 359154daed1Smrg key <AD03> { [ e, E ], [ EuroSign ] }; 360154daed1Smrg key <BKSL> { [ backslash, bar ], [ brokenbar ]}; 361154daed1Smrg 362154daed1Smrg // Begin "Editing" section 363154daed1Smrg key <PRSC> { [ L5, L5 ], [ Print, SunSys_Req ]}; 364154daed1Smrg key <SCLK> { [ L7, L7 ], [ Scroll_Lock ]}; 365154daed1Smrg key <PAUS> { [ L1, L1 ], [ Pause, Break ]}; 366154daed1Smrg key <INS> { [ L8, L8 ], [ Insert ]}; 367154daed1Smrg key <HOME> { [ L6, L6 ], [ Home ]}; 368154daed1Smrg key <PGUP> { [ L3, L3 ], [ Prior ]}; 369154daed1Smrg 370154daed1Smrg 371154daed1Smrg key <DELE> { [ L10, L10 ], [ Delete ]}; 372154daed1Smrg key <END> { [ L9, L9 ], [ End ]}; 373154daed1Smrg key <PGDN> { [ L4, L4 ], [ Next ]}; 374154daed1Smrg 375154daed1Smrg key <UP> { [ Up ] }; 376154daed1Smrg key <LEFT> { [ Left ] }; 377154daed1Smrg key <DOWN> { [ Down ] }; 378154daed1Smrg key <RGHT> { [ Right ] }; 379154daed1Smrg 380154daed1Smrg key <KPDV> { [ R5, R5 ], [ KP_Divide ] }; 381154daed1Smrg key <KPMU> { [ R6, R6 ], [ KP_Multiply ] }; 382154daed1Smrg 383154daed1Smrg key <KP7> { [ R7, KP_7 ], [ KP_7, Home ] }; 384154daed1Smrg key <KP8> { [ KP_Up, KP_8 ], [ KP_8 ] }; 385154daed1Smrg key <KP9> { [ R9, KP_9 ], [ KP_9, Prior ] }; 386154daed1Smrg key <KPAD> { [ KP_Add ] }; 387154daed1Smrg 388154daed1Smrg key <KP4> { [ KP_Left, KP_4 ], [ KP_4 ] }; 389154daed1Smrg key <KP5> { [ R11, KP_5 ], [ KP_5 ] }; 390154daed1Smrg key <KP6> { [ KP_Right, KP_6 ], [ KP_6 ] }; 391154daed1Smrg 392154daed1Smrg key <KP1> { [ R13, KP_1 ], [ KP_1, End ] }; 393154daed1Smrg key <KP2> { [ KP_Down, KP_2 ], [ KP_2 ] }; 394154daed1Smrg key <KP3> { [ R15, KP_3 ], [ KP_3, Next ] }; 395154daed1Smrg key <KPEN> { [ KP_Enter ] }; 396154daed1Smrg 397154daed1Smrg key <LALT> { [ Meta_L ] }; 398154daed1Smrg key <RALT> { [ Alt_L ] }; 399154daed1Smrg key <RCTL> { [ Multi_key ] }; 400154daed1Smrg}; 401154daed1Smrg 402