Welcome Guest ( Log In | Register )




                Web Hosting Guide

 
Reply to this topicNew Topic
Hotkeys / Keyboard Quick Launch Keys In Linux
intrepid
post Dec 15 2004, 10:03 PM
Post #1


Newbie [ Level 1 ]
Group Icon

Group: Members
Posts: 3
Joined: 15-December 04
Member No.: 1,770


I first submitted this tutorial a couple of months ago over at http://linuxiso.org/forums as user adpsimpson.

Having spent ages wishing the hotkeys on my laptop would work, I spent most of an afternoon looking into it. Since no site I found explained it satisfactorily, here's my method...

The first step is to find out which of the keys are registered by the kernel, and what their keycodes are (the unique event number that they cause). To do this you need a program called xev, (in Mandrake this is part of X11R6-contrib, is installed by default in Slack, and should be easy to find for other distros). From the terminal, in a graphical interface, type xev to launch it, move the mouse over the new window and press the hotkeys. What appears in the terminal is something like
CODE
KeyPress event, serial 28, synthetic NO, window 0x2c00001,
   root 0xb5, subw 0x2c00002, time 3593153, (55,38), root:(730,82),
   state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
   XLookupString gives 0 bytes:  ""



The "keycode" (in this case 64) is the important part. The next is to make the keycode actually do something when X registers it. For this you need to run xmodmap to modify the keyboard map. A small script in the ~/.kde/Autostart folder (or similar for other desktops) means this will be done each time KDE is stated. I wanted key 176 to increase the system volume, and 174 to decrease it, so the script reads
CODE
xmodmap -e 'keycode 174=F21' #voldown
xmodmap -e 'keycode 176=F22' #volup


Don't forget to make this executable. Run this script, re-run xev and you should now see, for example, F22 or F21 in the even notification.

The final step is to make F21 or F22 (or whatever you called your keys) actually do something useful. You can do this using the existing shortcut options (if you wish it to start an application), or you can use the program xbindkeys, here - http://hocwp.free.fr/xbindkeys/xbindkeys.html . This program links key events to bash commands, very easily.

The script in the KDE Autostart folder can then be modified to launch xbindkeys when KDE is launched, and the file ~/.xbindkeysrc modified to link the key events to the desired bash commands. I used dcop (the inter-program communication process) to tell kmix (the default KDE mixer) to increase/decrease the master volume (channel 0) whenever the relevant keys were pressed. Below is the complete file ~/.kde/Autostart/keycodes (MUST be executable):
CODE
#!/bin/sh
#file to map special keys.
#File location: ~/.kde/Autostart
#File Name:keycodes

xmodmap -e 'keycode 174=F21' #voldown
xmodmap -e 'keycode 176=F22' #volup

#Open kmix to allow xbindkeys to work:
kmix

#Open xbindkeys to link keys to applications:
xbindkeys
and the few lines I had to add to ~/.xbindkeysrc:
Code:
#Volume decrease
"dcop kmix Mixer0 decreaseVolume 0"
 F21

#Volume increase
"dcop kmix Mixer0 increaseVolume 0"
 F22



Hopefully this will help people make their keyboards more useful. If anyone has any further suggestions, or knows of obvious or important differences between desktop environments, please post them below. However it should be relatively distro/desktop independent.
Go to the top of the page
 
+Quote Post
cryptwizard
post Dec 22 2004, 03:16 AM
Post #2


Member - Active Contributor
Group Icon

Group: Members
Posts: 77
Joined: 11-December 04
Member No.: 1,704


That's very useful.
I'll be looking back to this when I get a keyboard with hotkeys.
Go to the top of the page
 
+Quote Post
the empty calori...
post Dec 28 2004, 06:56 PM
Post #3


Premium Member
Group Icon

Group: Members
Posts: 254
Joined: 28-December 04
Member No.: 1,884


Ugh, I hate hotkeys. I always had them disabled on my laptop, because if you'd accidentally press one, you would end up having to wait a minute (painfully slow computer) just to close whatever you opened.
Go to the top of the page
 
+Quote Post
cryptwizard
post Jan 4 2005, 07:18 AM
Post #4


Member - Active Contributor
Group Icon

Group: Members
Posts: 77
Joined: 11-December 04
Member No.: 1,704


Good point.
That happened to me a few times at school once.
Even if your keyboard doesn't have hotkeys, the F1 (Help) button can be annoying when you're reaching for the F2 (Rename) button.
Go to the top of the page
 
+Quote Post
iGuest
post Apr 23 2008, 09:47 PM
Post #5


Newbie [ Level 1 ]
Group Icon

Group: Members
Posts: 0
Joined: 1-November 07
Member No.: 25,869


Rally good, I've been looking for something like this. I hate exit from full screen mode just to increase the volume.

-reply by physlord
Go to the top of the page
 
+Quote Post
iGuest
post Jun 26 2008, 04:06 AM
Post #6


Newbie [ Level 1 ]
Group Icon

Group: Members
Posts: 0
Joined: 1-November 07
Member No.: 25,869


A better hotkey system (or different at least)
Hotkeys / Keyboard Quick Launch Keys In Linux

Is it possible to listen to those keystrokes, keep them in a buffer, and setup hotkeys, then have a "fire" key that actually launches programs? Ideally then if you type in the say "ff[tab]" firefox would open, etc.



-reply by joseph
Go to the top of the page
 
+Quote Post

Reply to this topicNew Topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Collapse

> Similar Topics

    Topic Title Replies Topic Starter Views Last Action
No New Posts   9 helix 1,661 20th November 2009 - 07:50 AM
Last post by: iG-BeeMan
No New Posts 6 borejk 1,653 19th November 2009 - 05:49 PM
Last post by: iG-vishwanath
No New Posts   5 puzzledgranny 105 14th November 2009 - 05:34 AM
Last post by: iG-
No New Posts   1 magickay 23 12th November 2009 - 11:23 PM
Last post by: yordan
No New Posts   14 kanade 4,261 12th November 2009 - 07:55 PM
Last post by: iG-Ram
No New Posts   1 FirefoxRocks 109 5th November 2009 - 11:39 PM
Last post by: HannahI
No New Posts 0 fermin25 41 22nd October 2009 - 05:39 PM
Last post by: fermin25
No New Posts   11 dserban 1,389 8th October 2009 - 07:47 PM
Last post by: HannahI
No New Posts   2 turbopowerdmaxsteel 69 8th October 2009 - 07:40 PM
Last post by: HannahI
No New Posts   2 jedipi 3,414 8th October 2009 - 08:47 AM
Last post by: iG-Neville
No New Posts   13 vicky99 2,738 5th October 2009 - 11:43 AM
Last post by: iG-shrikant
No New Posts   15 laniczech 1,446 18th September 2009 - 08:51 AM
Last post by: takerraj
No New Posts   17 drogus 3,658 17th September 2009 - 08:29 AM
Last post by: ndowens
No new   63 Airlub 11,373 17th September 2009 - 08:17 AM
Last post by: ndowens
No new   20 liveblue 1,564 17th September 2009 - 08:12 AM
Last post by: ndowens


Web Hosting Powered by ComputingHost.com.