Category talk:R61i

From ThinkWiki
Jump to: navigation, search

4.2 Hotkeys

I got some of the Fn+Cursor-keys to work by doing some work within /etc/X11/xkb/symbols; it worked fine for me in the first set up (Ubuntu 8.04 amd64) though it kind of stopped working when I re-installed to 8.10 x86. What's working for me at the moment is the Play/Pause hotkey (globally; associated in amarok's global shortcuts) and the Previous/Next Track/Stop keys (only with amarok focussed).

Here's a couple of pieces which still need assembling for a fully functional piece of advice:

I created the file /etc/X11/xkb/symbols/lenovo-thinkpad-r61i-hotkeys with this content:

  // Layout for Lenovo Thinkpad R61i's multimedia keys
  //
  // $XFree86: xc/programs/xkbcomp/symbols/lenovo-thinkpad-r61i-hotkeys,v 0.1 2008/11/14 19:00:34 Pumba Exp $
  
  default partial
  
  xkb_symbols "audio" {
  
  key <I20>    { [ XF86AudioMute ] };
  key <I2E>    { [ XF86AudioLowerVolume ] };
  key <I30>    { [ XF86AudioRaiseVolume ] };
  
  // Play, Pause
  key <I22>    { [ XF86AudioPlay ] };
  
  // Previous track
  key <I10>    { [ XF86AudioPrev ] };
  
  // Next track
  key <I19>    { [ XF86AudioNext ] };
  
  // Stop
  key <I24>    { [ XF86AudioStop ] };
  
  };
  


Then I edited "my" language's file in /etc/X11/xkb/symbols (the one that looks like your country code, probably) to include the lines I just wrote:


  [...]
  
  default
  
  xkb_symbols "basic" {
  
  
  include "latin(type4)"
  include "lenovo-thinkpad-r61i-hotkeys(audio)"
  
  [...]
  
  };

The <Isomething>-part comes from X11/xkb/keycodes/xfree86 - compare xev | grep keycode's output with this file to find the <I##> code...


4.2.1 Hotkeys that worked out-of-the-box

anyway, here's the keys that worked ootb for me:

Fn+Page Up -- small light on the edge of the screen. Seems to be built into the hardware

Fn+Pos 1

Fn+End -- increase/dim screen brightness (KDE)

Fn+Roll -- Num lock/enables "numeric keypad"


Fn+F5 -- Bluetooth (plus Wireless?)

Fn+F12 -- Suspend to RAM

4.2.2 Hotkeys that generated an event but did not work ootb

Fn+F2 -- Lock Screen (generates event: XF86AudioMute)

Fn+F4 -- Sleep (generates event: XF86Sleep)

Fn -- when being held for "a moment": generates event "XF86WakeUp"



Help needed
What does the xev output "XKeysymToKeycode" mean? Why does it sometimes return a different keycode than the key pressed actually generated? And is there any way of changing this?
Hint:
Does that have anything to do with a remapping of keys via xmodmap? Check $ xmodmap -pke for details. Cheers, Low