summaryrefslogtreecommitdiff
path: root/xbindkeys.1
blob: a329caee72453440135883245fd4337f746cd684 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
.TH XBindKeys 1 "Tue Apr 19 2014"
.UC 1
.SH "NAME"
xbindkeys \- a grabbing keys program for X
.SH "SYNOPSIS"
\fBxbindkeys\fP [ \fIoptions\fP ]
.br
.SH "DESCRIPTION"
\fIXbindKeys\fP is a program that grabs key and mouse button events
in X and starts associated shell commands.

.LP
.SH "COMMAND LINE OPTIONS"
Available command line options are as follows:
.TP
\fB-d, --defaults\fP
Print a default rc file
.TP
\fB-f, --file\fP
Use an alternative rc file
.TP
\fB-h, --help\fP
Short help on options plus version/author info.
.TP
\fB-X, --display\fP
Set X display to use
.TP
\fB-v, --verbose\fP
More information on xbindkeys when it runs

.TP
\fB-k, --key\fP
Identify one key pressed (useful for configuration)

.TP
\fB-mk, --multikey\fP
Identify multi key pressed (useful for configuration)

.TP
\fB-g, --geometry\fP
size and position of window with -k|-mk option

.TP
\fB-n, --nodaemon\fP
don't start as daemon

.LP
If guile support has not been disabled:
.TP
\fB-dg, --defaults-guile\fP
Print a default guile configuration file

.TP
\fB-fg, --file-guile\fP
Use an alternative guile configuration file

.SH "XBINDKEYSRC"
XBindKeys default configuration file is at $HOME/.xbindkeysrc,
used only for one user.
.LP
The configuration file consists of commands in double quotes,
and associated keys in the next line.
.LP
Comments are started with a pound (#) and extend to the end of the line.
.LP
You can see a default configuration with --defaults
.LP
.fi

.SH "KEYSYMS"
The program expects combinations of keysyms to be used by using plus (+)
characters to combine them together.
.LP
The format of a command line is:
.nf
    "command to start &"
.nf
       associated key
.LP
.fi
To specify an associated key, you can use `xbindkeys --key` or
 `xbindkeys --multikey` and put one of the two lines in the
configuration file.
.LP
A list of keys is in /usr/include/X11/keysym.h and in
/usr/include/X11/keysymdef.h.
The XK_ is not needed.
.LP
List of modifiers:
.nf
    Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
.nf
    Mod3 (CapsLock), Mod4, Mod5 (Scroll).
.LP
.fi
The release modifier is not a standard X modifier, but you can
use it if you want to catch release events instead of press events.
Modifiers are not case sensitive.
.LP
By defaults, xbindkeys does not pay attention to the modifiers
NumLock, CapsLock and ScrollLock.
Add the lines below in the configuration file if you want to pay
attention to them.
.LP
    keystate_numlock = enable
.nf
    keystate_capslock = enable
.nf
    keystate_scrolllock= enable

.SH "EXAMPLES"
.LP
# control+shift+q starts xterm
.nf
"xterm"
.nf
  control+shift + q
.LP
# Menu key starts xbindkeys_show
.nf
"xbindkeys_show"
.nf
  Menu
.LP
# Control + mouse button 1 starts xterm
.nf
"xterm"
.nf
  Control + b:1
.LP
# Control+Shift+a  release event starts rxvt
.nf
"rxvt"
.nf
  release+control+shift + a
.LP
# Control + mouse button 2 release event starts rxvt
.nf
"rxvt"
.nf
  Control + b:2 + Release

.SH "SCHEME CONFIGURATION STYLE"
A scheme configuration can be used if guile support has not been disabled.
The standard configuration is loaded only if the scheme configuration is not
available.
.LP
For more details, please see here
.nf
  http://www.gnu.org/software/guile/guile.html
.LP
\fBNote: The guile configuration file is prefered for non trivial
configurations, for example double click, timed click or key combinations.\fP
.LP
The default location is ~/.xbindkeysrc.scm
.LP
Use xbindkeys --defaults-guile for more details.
.LP
And xbindkeys --defaults-guile > ~/.xbindkeysrc.scm to use this method.

.SH "NOTE"
xbindkeys reloads the configuration file if modified.
Send a HUP signal to force reloading:
.LP
killall -HUP xbindkeys
.LP
When a HUP signal is sent to xbindkeys, changes take effect only after
moving the mouse.

.SH "BUGS"
If you find a bug, please send mail to <xbindkeys-devel@nongnu.org>
.LP
.SH "HOMEPAGE"
.nf
http://www.nongnu.org/xbindkeys/
.fi

.LP
.SH "AUTHOR"
Philippe Brochard <hocwp@free.fr>
.nf
Marcello Mathias Herreshoff for guile support <marcello@hummer.stanford.edu>

.LP
.SH "FILES"
.nf
$HOME/.xbindkeysrc
        The users configuration file.
.LP
$HOME/.xbindkeysrc.scm
        The users configuration file in scheme
        (if guile support has not been disabled).
.fi

.LP
.SH "SEE ALSO"
.nf

\fBxbindkeys_show\fP
    Utility for showing the actual keybinding with xbindkeys
\fBxmodmap(1x)\fP
    Utility for modifying keymap & button mappings in X.
\fBxev(1x)\fP
    Print contents of X events.
\fB/usr/include/X11/keysymdef.h\fP
    X11 KeySym definitions.