2 This README is a bit outdated.
10 Please read this file carefully.
14 This is an unstable version , and as such it's buggy, poorly documented
15 and there are still features that are not implemented yet. It's aimed
16 mainly at users who used to use the KDE1.x versions of KHotKeys ( or are
17 smart enough to learn something complicated without having good docs
18 for it :) ). Calling it KHotKeys-2.0.0pre2 is a rather cruel joke.
22 The 2.x version of KHotKeys is a complete rewrite from scratch, and
23 the name KHotKeys is actually rather misleading by now ( and it has never
24 been really correct if I understand what the difference between a hotkey
25 and a keyboard shortcut is ... well, never mind ... ). KHotKeys2.x should
26 be capable of doing everything the 1.x versions could do, and much more,
29 In short, KHotKeys is a utility that allows you to bind actions to triggers
30 and conditions. The most common case is where action means launching some
31 command/application/URL, the trigger is some key combination pressed and
32 condition is some window being ( not ) active/existing. There are
33 ( or will be ) more types of actions, triggers and conditions.
37 The recommended KDE version is KDE3.1 ( unreleased yet at this time :-> ),
38 at least snapshot 20020108. I haven't tested it with any older versions,
39 so I don't know if it will work with them or not.
41 During installation, the files will replace the ones that are part
42 of the simple version in kdebase. Shortcuts assigned using KMenuEdit
43 should still work, and the config file will be converted to the new format.
44 However, you should backup all files before removing them ( including
45 the config file ), so you will be able to go back in case there will be
46 a serious problem with this version. The files you should remove
47 and backup before installing the new version are :
48 - $KDEDIR/bin/khotkeys
49 - $KDEDIR/lib/libkcm_khotkeys.la
50 - $KDEDIR/lib/libkcm_khotkeys.so
51 - $KDEDIR/lib/kde3/libkcm_khotkeys.la
52 - $KDEDIR/lib/kde3/libkcm_khotkeys.so
53 - $KDEDIR/lib/khotkeys.la
54 - $KDEDIR/lib/khotkeys.so
55 - $KDEDIR/lib/libkhotkeys.la
56 - $KDEDIR/lib/libkhotkeys.so
57 - $KDEDIR/share/autostart/khotkeys.desktop
58 - $KDEHOME/share/config/khotkeysrc
59 Not all these files exist, depending on your KDE and OS version. It's simply
60 all files having 'khotkeys' in their name.
61 Ok, now the standard install ( ./configure && make && make install ), and
62 now you can start you KDE.
66 The configuration module is started using K-Menu/Settings/System/KHotKeys .
67 If you have used the 1.x version ( you have, haven't you ? ), it will look
68 familiar. On the left, there's a list of all actions, they may be put
69 in groups. On the right, there are several tabs with details for
70 currently selected action, or an info tab when no action is selected ( no,
71 don't bother, the 'Global settings...' button doesn't do anything useful
72 yet, besides going down and up ).
74 The first tab ( 'General' ) lets you to select the type of the action.
75 You can either select 'Generic' type, allowing you to create any kind
76 of action, or some simple predefined actions, like launching an application
77 on keyboard shortcut press.
79 The second tab is the 'Triggers' tab for the 'Generic' type action,
80 or a tab specifying only the trigger for a specialized action (e.g.
81 a keyboard shortcut). Here you can specify trigger(s) that will start
82 this action, if conditions for it will be met.
83 The types available now are :
84 - Shortcut trigger - a keyboard combination is pressed
85 - Gesture trigger - press middle mouse button and start drawing ...
86 - Window trigger - a window appears, becomes active, ...
88 The next tab is settings for the action. ( Just in case you haven't noticed
89 yet, I'm apparently not very good at inventing good fitting names. 'Action'
90 in KHotKeys means either a whole action, e.g. 'run a new Konsole when
91 Ctrl+Alt+T is pressed and the active window is not a Konsole', or it can
92 mean just the resulting action, i.e. only 'run a new Konsole'. Live with it
93 or suggest better names ).
94 - Command/URL tab settings - enter the command or URL to execute ( no,
95 the 'Browse' doesn't do anything useful yet ).
96 - K-Menu entry tab settings - just like the Command/URL tab, only enter
97 a .desktop file from the K-Menu to execute (e.g. 'System/konsole.desktop')
98 - D-Bus call tab settings - enter the application, object, D-Bus method and
99 arguments (e.g. 'kdesktop', 'KBackgroundIface',
100 'setWallpaper(QString,int)' and '"/some/pic.jpg" 1')
101 - Keyboard input tab settings - enter the keyboard input you want to be
102 simulated ( no, sorry, the 'Edit' button doesn't really work yet ).
103 The "keypresses" are separated by a colon ( ':' ) and are written
104 in the form the are seen e.g. in the keybindings dialog ( e.g. to enter
105 a colon, you have to type 'Shift+;' ). The 'send to specific window'
106 checkbox and the window definition allow you to specify that the input
107 shouldn't be sent to the currently active window but to a window that
108 matches the definition. Note that certain things, like triggering
109 Ctrl+F1 for going to the first desktop, don't work yet.
111 The last tab is 'Conditions'. If there are any conditions specified, the action
112 will be active only if the at least one of the conditions is true. If the action
113 is in a group which also has conditions, at least one of the conditions
114 in the group must be true too.
115 Conditions are mainly specified using window definitions, the only type now
116 available is a simple window definition. You can specify a window title, class,
117 command and type ( again, the 'Autodetect...' button doesn't work yet ). Title
118 is easy, to get the window class and command, run 'xprop' in Konsole and click
119 on a window; then search for WM_CLASS and WM_COMMAND.
123 Ok, as I guess the things written above aren't that good explanation, I've
124 included a sample configuration file. Put it in $KDEHOME/share/config/khotkeysrc.
125 Every action is explained in its comment field. Note that all the actions are
126 disabled, so you'll have to enable them in order to use them.
128 KHotKeys Copyright 1999-2002 Lubos Lunak <l.lunak@kde.org>
129 Distributed under the terms of the GNU General Public License version 2.