The mev program is modeled after xev. It prints to stdout the mouse console events it gets.
mevs default behaviour is to get anything, but command line switches can be used to set the various fields in the Gpm_Connect structure, in order to customize the programs behaviour. Im using mev to handle mouse events to Emacs.
Command line switches for mev are the following:
|Select a virtual console to get events from. This is intended to be used for debugging.|
|Choose a default mask. By default the server gets any events not belonging to the event mask. The mask can be provided either as a decimal number, or as a symbolic string.|
|Choose the event mask. By default any event is received. The mask can be provided either as a decimal number, or as a symbolic string.|
|-E||Enter emacs mode. In emacs mode events are reported as lisp forms rather than numbers. This is the format used by the t-mouse package within emacs.|
Fit events inside the screen before reporting them. This options
re-fits drag events, which are allowed to exit the screen border,
|-i||Interactive. Accepts input from stdin to change connection parameters.|
|Choose the minimum modifier mask. Any event with fewer modifiers will not be reported to mev. It defaults to 0. The mask must be provided either as a decimal number, or as a symbolic string.|
|Choose the maximum modifier mask. Any event with more modifier than specified will not be reported to mev. It defaults to ~~0, i.e. all events are received. The mask must be provided either as a decimal number, or as a symbolic string.|
Requests to draw the pointer during drags. This option is used
by emacs to avoid invoking ioctl() from lisp code.
Allowed names for events are move, drag, down or press, up or release, motion (which is both move and drag), and hard.
Allowed names for modifiers are shift, leftAlt, rightAlt, anyAlt (one or the other), control.
When the -i switch is specified, mev looks at its standard input as command lines rather than events. The input lines are parsed, and the commands push and pop are recognized.
The push command, then, accepts the options -d, -e, -m and -M, with the same meaning described above. Unspecified options retain the previous value and the resulting masks are used to reopen the connection with the server. pop is used to pop the connection stack. If an empty stack is popped the program exits.
Other commands recognized are info, used to return the stack depth; quit to prematurely terminate the program; and snapshot to get some configuration information from the server.
/dev/gpmctl The socket used to connect to gpm.