1IRXEVENT(1)                      User Commands                     IRXEVENT(1)
2
3
4

NAME

6       irxevent - infrared X-event sender
7

SYNOPSIS

9       irxevent [option]... [config file]
10

DESCRIPTION

12       Irxevent is a program to send button clicks and key presses to X appli‐
13       cations triggered by a LIRC driven remote control. You can control your
14       favorite  CD/MP3  player, your TV tuner program or any other X applica‐
15       tion that responds to keyboard or mouse input. If you like to  you  can
16       send emacs ^X^S from your armchair.
17
18       Irxevent is a complement to irexec(1) and irpty(1).
19

OPTIONS

21       -d --daemon
22              Fork and run in background
23
24       -h --help
25              Display usage summary
26
27       -V --version
28              Display version
29

FILES

31       Irxevent  works  with the same config file as irexec and irpty (~/.con‐
32       fig/lircrc). For a complete sample lircrc look at examples/lircrc.
33
34       Part of your .lircrc could look like this:
35
36       begin
37               prog = irxevent
38               button = VIDEO_UP
39               config = Key SHIFT-KP_Add CurrentWindow
40       end
41       begin
42               prog = irxevent
43               button = VIDEO_DOWN
44               config = Key SHIFT-KP_Subtract CurrentWindow
45       end
46       begin
47               prog = irxevent
48               button = STOP
49               config = Key ctrl-c CurrentWindow
50       end
51       begin
52               prog = irxevent
53               button = 0
54               config = Key f xawtv
55               config = Key f xawtv
56       end
57       begin
58               prog = irxevent
59               button = POWER
60               config = Key q xawtv
61       end
62       begin
63               prog = irxevent
64               button = CH_DOWN
65               config = Button 1 329 92 kscd
66       end
67       begin
68               prog = irxevent
69               button = UP
70               config = Button 1 110 80 GQmpeg
71       end
72       begin
73               prog = irxevent
74               button = DOWN
75               config = Button 1 130 80 GQmpeg
76       end
77
78       Simply said config =  lines may look like this:
79
80       config = Key [shift-][ctrl-][alt-]<key> [Focus] <windowname>
81               | WindowID <id> | CurrentWindow | RootWindow
82       config = Button <button> <x> <y> [Focus] <windowname> | WindowID <id>
83               | CurrentWindow | RootWindow
84       config = xy_Key <x> <y> [shift-][ctrl-][alt-]<key> [Focus]
85               <windowname> | WindowID id | CurrentWindow | RootWindow
86
87       Some more examples:
88
89       config = Key Up xawtv
90       config = Key Down xawtv
91       config = Button 1 50 110 xclickme
92       config = Key q xawtv
93       config = Key ctrl-c mpg123
94       config = Key shift-Page_Up rxvt
95
96       In BNF this looks like:
97
98          LINE    = "config =" <KEY|BUTTON|XYKEY> <TARGET> |
99                    "config =" <KEY|BUTTON|XYKEY> "Focus" <TARGET>
100          XYKEY   = "xy_Key" <x_position> <y_position> <MOD><KEYSPEC>
101          KEY     = "Key" <MOD><KEYSPEC>
102          MOD     = ["shift-"]["numlock-"]["ctrl-"]["alt-"]["meta-"]
103                    ["numlock-"]["mod3-"]["mod4-"]["mod5-"]["altgr-"]["scrlock-"]
104          KEYSPEC = Keyname | "KeySym:"KeySym | "KeyCode:"KeyCode
105          BUTTON  = "Button" <1..5> <x_position> <y_position>
106          TARGET  = Windowname | "WindowID" id | "CurrentWindow" | "RootWindow"
107
108          Keyname:
109            is the key symbol that is declared in X windows. E.g. "Up"  refers
110            to  the cursor arrow pointing up. "KP_Add" is the plus sign on the
111            key pad. Just take a look at irxevent.keys (in  the  documentation
112            directory) if you are not sure about a symbol's name.
113          KeySym:
114            number as returned by XStringToKeysym(3x).
115          KeyCode:
116            number as returned by XKeysymToKeycode(3x).
117          Windowname:
118            can  be  the  first characters of the window name displayed by the
119            window manager or the name that is displayed below the icon.  Some
120            programs  use  the  name displayed by the window manager to show a
121            lot of status information but don't change  the  icon  name  (like
122            xawtv).  Others  append  information to the window name ("GQmpeg -
123            kill_windooz.mp3"). If neither window name nor icon name match the
124            given Windowname information from XClassHint(3x) will be checked.
125          CurrentWindow:
126            refers  to  the  active  window as returned by XGetInputFocus(3x).
127            Most times this is the window with your mouse pointer in it.
128          RootWindow:
129            refers to the root window as returned by RootWindow(3x).  You  may
130            need this to send events to the window manager.
131          WindowID id:
132            refers  to  the  window  with window identifier id. id should be a
133            decimal number. It is useful when irxevent can't find the  desired
134            window by other means.
135          Focus:
136            will  send the specified event to the given window only if it cur‐
137            rently has the input focus. This of  course  does  not  make  much
138            sense when combined with CurrentWindow.
139

TROUBLESHOOTING

141       If you have problems finding the coordinates for a button click you can
142       try xev -id <window_id>. The window_id can be found using xwininfo.
143
144       There are programs that do not accept any synthetic X-events by default
145       because  they  can  cause security problems. Currently xterm and xemacs
146       are known to ignore events simulated by irxevent.
147
148       You can however make xterm accept external events  by  enabling  "Allow
149       SendEvents"  in the "Main Options" (hold down the Ctrl button and press
150       the left mouse button inside the xterm window). You can as  well  place
151       this line into your .Xresources file to change this permanently:
152
153          XTerm.vt100.allowSendEvents: true
154
155       Yet another possibility is to start xterm like this:
156
157          xterm -xrm "XTerm.vt100.allowSendEvents: true"
158
159       xemacs will accept events if you set a built-in variable. The following
160       was taken from the online help:
161
162          `x-allow-sendevents' is a built-in boolean variable.
163
164          Value: t
165
166          Documentation:
167
168          *Non-nil means to  allow  synthetic  events.   Nil  means  they  are
169          ignored.
170
171          Beware:  allowing  emacs  to process SendEvents opens a big security
172          hole.
173
174          In order to allow events you have to evaluate this lisp code  (press
175          Meta-x and enter the following expression):
176
177                   (setq x-allow-sendevents t)
178
179          Placing  this  line  into  your .xemacs-options file should have the
180          same result.
181
182       If you have problems sending events please drop me an email.
183

AUTHOR

185       Written by Heinrich Langos <heinrich@mad.scientist.com>.
186

SEE ALSO

188       xdotool(1)
189              invoked from irexec(1), xdotool provides a more flexible  alter‐
190              native to irxevent.
191
192       The  documentation  for  lirc  is  maintained  as  html pages. They are
193       located under html/ in the documentation directory.
194
195
196
197irxevent 0.10.0              Last change: Aug 2015                 IRXEVENT(1)
Impressum