mev - a program to report mouse events


   mev [ options ]


   The `mev' program is part of the gpm package.  The information below is
   extracted from the texinfo file,  which  is  the  preferred  source  of

   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.

   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

   -i     Interactive. Accepts input from  `stdin'  to  change  connection

   -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

   -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.


   Beginning with release 1.16, mev no longer works under  xterm.   Please
   use  the  rmev  program (provided in the sample directory) to watch gpm
   events under xterm or rxvt.  rmev also displays keyboard events besides
   mouse events.


   Alessandro Rubini <>
   Ian Zimmerman <>


   /dev/gpmctl The socket used to connect to gpm.


    gpm(8)       The mouse server

   The  info  file  about `gpm', which gives more complete information and
   explains how to write a gpm client.


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.

Free Software

Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.

Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.

Free Books

The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.

Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.

Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.