Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
IRXEVENT(1)			 User Commands			   IRXEVENT(1)

NAME
       irxevent	- infrared X-event sender

SYNOPSIS
       irxevent	[option]... [config file]

DESCRIPTION
       Irxevent	 is  a	program	 that  I  wrote	 to send button	clicks and key
       presses to X applications triggered by a	LIRC  driven  remote  control.
       You can control your favorite CD/MP3 player or your TV tuner program or
       any other X application that responds to	keyboard or  mouse  input.  If
       you like	to you can send	emacs ^X^S from	your armchair.

       Irxevent	is a complement	to irexec and irpty.

       -d --daemon
	      fork and run in background

       -h --help
	      display usage summary

       -V --version
	      display version

FILES
       Irxevent	 works	with the same config file as irexec and	irpty (~/.lir-
       crc). For a complete sample .lircrc look	at examples/lircrc.

       Part of your .lircrc could look like this:

	  begin
		  prog = irxevent
		  button = VIDEO_UP
		  config = Key SHIFT-KP_Add CurrentWindow
	  end
	  begin
		  prog = irxevent
		  button = VIDEO_DOWN
		  config = Key SHIFT-KP_Subtract CurrentWindow
	  end
	  begin
		  prog = irxevent
		  button = STOP
		  config = Key ctrl-c CurrentWindow
	  end
	  begin
		  prog = irxevent
		  button = 0
		  config = Key f xawtv
		  config = Key f xawtv
	  end
	  begin
		  prog = irxevent
		  button = POWER
		  config = Key q xawtv
	  end
	  begin
		  prog = irxevent
		  button = CH_DOWN
		  config = Button 1 329	92 kscd
	  end
	  begin
		  prog = irxevent
		  button = UP
		  config = Button 1 110	80 GQmpeg
	  end
	  begin
		  prog = irxevent
		  button = DOWN
		  config = Button 1 130	80 GQmpeg
	  end

       Simply said config = lines may look like	this:

	  config = Key [shift-][ctrl-][alt-]<key> [Focus] <windowname>
	       | WindowID <id> | CurrentWindow | RootWindow
	  config = Button <button> <x> <y> [Focus] <windowname>	| WindowID <id>
	       | CurrentWindow | RootWindow
	  config = xy_Key <x> <y> [shift-][ctrl-][alt-]<key> [Focus]
	       <windowname> | WindowID id | CurrentWindow | RootWindow

       some more examples:

	  config = Key Up xawtv
	  config = Key Down xawtv
	  config = Button 1 50 110 xclickme
	  config = Key q xawtv
	  config = Key ctrl-c mpg123
	  config = Key shift-Page_Up rxvt

       In BNF this looks like:

	  LINE	  = "config =" <KEY|BUTTON|XYKEY> <TARGET> |
		    "config =" <KEY|BUTTON|XYKEY> "Focus" <TARGET>
	  XYKEY	  = "xy_Key" <x_position> <y_position> <MOD><KEYSPEC>
	  KEY	  = "Key" <MOD><KEYSPEC>
	  MOD	  = ["shift-"]["numlock-"]["ctrl-"]["alt-"]["meta-"]
		    ["numlock-"]["mod3-"]["mod4-"]["mod5-"]["altgr-"]["scrlock-"]
	  KEYSPEC = Keyname | "KeySym:"KeySym |	"KeyCode:"KeyCode
	  BUTTON  = "Button" <1..5> <x_position> <y_position>
	  TARGET  = Windowname | "WindowID" id | "CurrentWindow" | "RootWindow"

	  Keyname:
	    is the key symbol that is declared in X windows. E.g. "Up"	refers
	    to	the cursor arrow pointing up. "KP_Add" is the plus sign	on the
	    key	pad. Just take a look at irxevent.keys (in  the	 documentation
	    directory) if you are not sure about a symbol's name.
	  KeySym:
	    number as returned by XStringToKeysym(3x).
	  KeyCode:
	    number as returned by XKeysymToKeycode(3x).
	  Windowname:
	    can	 be  the  first	characters of the window name displayed	by the
	    window manager or the name that is displayed below the icon.  Some
	    programs  use  the	name displayed by the window manager to	show a
	    lot	of status information but don't	change	the  icon  name	 (like
	    xawtv).  Others  append  information to the	window name ("GQmpeg -
	    kill_windooz.mp3").	If neither window name nor icon	name match the
	    given Windowname information from XClassHint(3x) will be checked.
	  CurrentWindow:
	    refers  to	the  active  window as returned	by XGetInputFocus(3x).
	    Most times this is the window with your mouse pointer in it.
	  RootWindow:
	    refers to the root window as returned by RootWindow(3x).  You  may
	    need this to send events to	the window manager.
	  WindowID id:
	    refers  to	the  window  with window identifier id.	id should be a
	    decimal number. It is useful when irxevent can't find the  desired
	    window by other means.
	  Focus:
	    will  send the specified event to the given	window only if it cur-
	    rently has the input focus.	This of	 course	 does  not  make  much
	    sense when combined	with CurrentWindow.

TROUBLESHOOTING
       If you have problems finding the	coordinates for	a button click you can
       try xev -id <window_id>.	The window_id can be found using xwininfo.  If
       xev and xwininfo	are not	part of	your distribution you can find them at
       a FTP server using the search engine  at:  http://ftpsearch.ntnu.no/  .
       xev  also  reports the names of key symbols like	"Control_L" (your left
       control key) or "KP_Subtract" (the 'minus' key on your keypad).

       There are programs that do not accept any synthetic X-events by default
       because	they  can  cause security problems. Currently xterm and	xemacs
       are known to ignore events simulated by irxevent.

       You can however make xterm accept external events  by  enabling	"Allow
       SendEvents"  in the "Main Options" (hold	down the Ctrl button and press
       the left	mouse button inside the	xterm window). You can as  well	 place
       this line into your .Xresources file to change this permanently:

	  XTerm.vt100.allowSendEvents: true

       Yet another possibility is to start xterm like this:

	  xterm	-xrm "XTerm.vt100.allowSendEvents: true"

       xemacs will accept events if you	set a built-in variable. The following
       was taken from the online help:

	  `x-allow-sendevents' is a built-in boolean variable.

	  Value: t

	  Documentation:

	  *Non-nil means to allow synthetic events.  Nil means	they  are  ig-
	  nored.

	  Beware:  allowing  emacs  to process SendEvents opens	a big security
	  hole.

	  In order to allow events you have to evaluate	this lisp code	(press
	  Meta-x and enter the following expression):

		(setq x-allow-sendevents t)

	  Placing  this	 line  into  your .xemacs-options file should have the
	  same result.

       If you have problems sending events please drop me an email.

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

SEE ALSO
       The documentation for lirc is maintained	as html	pages.	They  are  lo-
       cated under html/ in the	documentation directory.

irxevent 0.9.0			  March	2011			   IRXEVENT(1)

NAME | SYNOPSIS | DESCRIPTION | FILES | TROUBLESHOOTING | AUTHOR | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=irxevent&sektion=1&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help