IControl -- Live!Drive IR Support for Linux


This site hosted by:
SourceForge Logo

IControl version 0.1.0

TABLE OF CONTENTS 1) Release Notes 2) Prerequisites 3) QUICK install instructions 4) Command Line Parameters 5) Notes about the included configuration file 6) Contact the Author 1) Release Notes: This is the second public release of the IControl package. It is the first version meant for general public consumption, and while it has reached a state of general usability, it is still an ALPHA release, and thus may have many remaining bugs or compatibility issues. Thus, you use it at your own risk. A rudimentary set of installation instructions is contained in the README file included with this package. If you have trouble understanding these, perhaps this release is not for you. However, feel free to contact the author at <inzite@users.sourceforge.net> for help. Any questions will be promptly responded to. 2) Prerequisites: X11 <http://www.xfree86.org/> GTK+ <http://www.gtk.org/> Creative's EMU10K1 Sound Driver <http://opensource.creative.com/> 3) QUICK BUILD, INSTALL, and RUN instructions (detailed instructions below): These instructions apply to the source tarball, and not to any prebuilt binaries or source RPM distributions. ./configure make make install icontrol (by default placed in /usr/local/bin) Once you have IControl running, point your remote at the Live!Drive receiver, and press some buttons. You can also edit IControl's default configurations and keybindings contained in the file "~/.icontrol/icontrol.conf". 4) Command Line Parameters: You can use the following set of command line parameters: Options: -c FILENAME, Load configuration file FILENAME --config FILENAME (Default is ~/.icontrol/icontrol.conf) -d DEVICENAME, Use MIDI device DEVICENAME --device DEVICENAME (Default is /dev/midi) -v, --version Display version information -?, --help Display this help message 5) Notes about the included configuration file An example configuration file is included with this distribution at conf/icontrol.conf. It contains rudimentary support for XMMS, Xine, and Zapping. It is fairly easy to read, and feel free to edit it to support all your favorite programs. Every program has its own entry in the configuration file. When IControl detects a keypress from the Live!Drive receiver, it gets the window ID of whatever program currently has the keyboard focus. It then looks through the configuration file for a match (i.e., if xine has the current keyboard focus, IControl checks the configuration file for a program entry titled 'xine'). It only finds perfect substring matches. This means that if xine has the current focus, a program entry titled 'Xine' would not match, while a program entry titled 'ine', 'ne', 'xi', 'x', or even 'e' would match. If IControl fails to find a matching program entry for the focused program, it defaults to the first program entry in the file (in this case, DEFAULT). It then searches the program entry for an action assigned to whatever button was pressed. Actions are defined in the following format: BUTTON_NAME ACTION ACTION_ARGS An example action assigned to the play button: BUTTON_PLAY SENDKEY KEY_X This would spoof an 'X' keypress whenever the play button is pressed Another example action assigned to the play button: BUTTON_PLAY LOWER_WINDOW In this case, rather than sending a keypress to the focused window, IControl circulates the windows on the screen, lowering the current window and setting keyboard focus on the next window for which it has a matching program entry. The LOWER_WINDOW action takes no arguments. 6) Contact the Author Feel free to direct any questions, feature requests, bug reports, revised configuration files, or other information to: William Gross inzite@users.sourceforge.net