gpm: mev

 
 5.1 'mev'
 =========
 
 The 'mev' program is modeled after 'xev'.  It prints to 'stdout' the
 mouse console events it gets.
 
    'mev''s 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 program's behaviour.  I'm using
 'mev' to handle mouse events to Emacs.  SeeEmacs Support.
 
    Command line switches for 'mev' are the following:
 
 '\-C NUMBER'
      Select a virtual console to get events from.  This is intended to
      be used for debugging.
 
 '\-d NUMBER'
      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.
 
 '\-e NUMBER'
      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.
 
 '\-f'
      Fit events inside the screen before reporting them.  This options
      re-fits drag events, which are allowed to exit the screen border,
      SeeMargins.
 '\-i'
      Interactive.  Accepts input from 'stdin' to change connection
      parameters.
 
 '\-m NUMBER'
      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.
 
 '\-M NUMBER'
      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.
 
 '\-p'
      Requests to draw the pointer during drags.  This option is used by
      emacs to avoid invoking 'ioctl()' from lisp code.
 
    When the arguments are not decimal integers, they are considered
 lists of alphanumeric characters, separated by a single non-alphanumeric
 character.  I use the comma (','), but any will do.
 
    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.