XKBCOMP(1)XKBCOMP(1)NAMExkbevd - XKB event daemon
SYNOPSISxkbevd [ options ]
DESCRIPTION
This command is very raw and is therefore only partially
implemented; we present it here as a rough prototype for
developers, not as a general purpose tool for end users.
Something like this might make a suitable replacement for
xev; I'm not signing up, mind you, but it's an interest-
ing idea.
The xkbevd event daemon listens for specified XKB events
and executes requested commands if they occur. The con-
figuration file consists of a list of event specifica-
tion/action pairs and/or variable definitions.
An event specification consists of a short XKB event name
followed by a string or identifier which serves as a qual-
ifier in parentheses; empty parentesis indicate no quali-
fication and serve to specify the default command which is
applied to events which do not match any of the other
specifications. The interpretation of the qualifier
depends on the type of the event: Bell events match using
the name of the bell, message events match on the contents
of the message string and slow key events accept any of
press, release, accept, or reject. No other events are
currently recognized.
An action consists of an optional keyword followed by an
optional string argument. Currently, xkbev recognizes the
actions: none, ignore, echo, printEvent, sound, and shell.
If the action is not specified, the string is taken as the
name of a sound file to be played unless it begins with an
exclamation point, in which case it is taken as a shell
command.
Variable definitions in the argument string are expanded
with fields from the event in question before the argument
string is passed to the action processor. The general
syntax for a variable is either $cP or $(str), where c is
a single character and str is a string of arbitrary
length. All parameters have both single-character and
long names.
The list of recognized parameters varies from event to
event and is too long to list here right now. This is a
developer release anyway, so you can be expected to look
at the source code (evargs.c is of particular interest).
The ignore, echo, printEvent, sound,and shell actions do
what you would expect commands named ignore, echo,
X Version 11 Release 6.4 1
XKBCOMP(1)XKBCOMP(1)
printEvent, sound, and shell to do, except that the sound
command has only been implemented and tested for SGI
machines. It launches an external program right now, so
it should be pretty easy to adapt, especially if you like
audio cues that arrive about a half-second after you
expect them.
The only currently recognized variables are soundDirectory
and soundCmd. I'm sure you can figure out what they do.
OPTIONS-help Prints a usage message that is far more up-to-date
than anything in this man page.
-cfg file
Specifies the configuration file to read. If no
configuration file is specified, xkbevd looks for
~/.xkb/xkbevd.cf and $(LIBDIR)/xkb/xkbevd.cf in
that order.
-sc cmd Specifies the command used to play sounds.
-sd directory
Specifies a top-level directory for sound files.
-display display
Specifies the display to use. If not present,
xkbevd uses $DISPLAY.
-bg Tells xkbevd to fork itself (and run in the back-
ground).
-synch Forces synchronization of all X requests. Slow.
-v Print more information, including debugging mes-
sages. Multiple specifications of -v cause more
output, to a point.
SEE ALSOX(1)COPYRIGHT
Copyright 1995, Silicon Graphics Computer Systems Copy-
right 1995, 1998 The Open Group
See X(1) for a full statement of rights and permissions.
AUTHOR
Erik Fortune, Silicon Graphics
X Version 11 Release 6.4 2