Provided by: manpages-es-extra_0.8a-19_all bug

NOMBRE

       gpm - una utilidad para cortar y pegar y un servidor de ratón para las consolas virtuales

SINOPSIS

       gpm [ opciones ]

DESCRIPCIÓN

       Este paquete intenta ser un servidor de raton útil para las aplicaciones que se ejecutan en la consola de
       Linux. Está basado en el paquete llamado "selección", y algunas partes de su código  provienen  de  dicho
       paquete.   Este  paquete  está  pensado para reemplazar el paquete "selección" como mecanismo de cortar y
       pegar; además ofrece mejoras adicionales.  El paquete "seleccion" ofrecía una primera implementación  del
       método  de  cortar  y  pegar para Linux usando dos botones del ratón, así, la memoria intermedia usada al
       cortar todavía se sigue denominando buffer de selección o simplemente "selección" en este documento.   La
       información  contenida  en  este  documento  ha sido extraida del fichero de Texinfo, que es la fuente de
       información recomendada actualmente.

       El ejecutable de gpm actúa como un demonio (así que gpmd sería un nombre  más  acertado  para  él).  Esta
       sección  describe  las  opciones  de  la  línea de comando de gpm, mientras que los detalles internos son
       comentados en la siguiente sección.

       Debido a las restricciones impuestas por la llamada a sistema ioctl(TIOCLINUX), gpm  debe  ser  ejecutado
       por  el  superusuario.  Dichas  restricciones  fueron añadidas a partir de la versión 1.1 del kernel para
       solucionar un agujero de seguridad relacionado con la selección y el vaciado de memoria en pantalla.

       El servidor puede ser configurado según las preferencias del usuario, y cualquier aplicación que  utilice
       el  ratón seguirá las preferencias dictaminadas al servidor. Desde la versión 1.02, el comportamiento del
       ratón puede ser reconfigurado por cada usuario que entre en la consola del sistema. Véase la  descripción
       del parámetro ``-q''.

       Igualmente,  desde  la  versión  0.97,  el  servidor  se  pone a si mismo en segundo plano. Para matar el
       servidor gpm, simplemente se puede ejecutar con el parámetro -k, de todas maneras,  "killall  gpm"  puede
       ser otra solución.

COMANDOS ESPECIALES

       La  versión  1.10 introduce la capacidad de ejecutar comandos especiales bajo ciertas circunstancias. Por
       defecto, estos comandos especiales son rebotar y parar el sistema,  pero  el  usuario  puede  especificar
       cualquier  otro  comando.   La  posibilidad  de  invocar  comandos  usando  el  ratón  es  muy  útil para
       programadores, ya que permite rebotar o parar el sistema  de  manera  ordenada  cuando  el  teclado  está
       bloqueado y no hay red disponible para devolver el sistema a un estado consistente.

       Los comandos especiales son ejecutados haciendo un triple clic sobre los botones izquierdo y derecho a la
       vez (un evento poco probable durante el uso normal del ratón). La manera más fácil de realizar un  triple
       clic  es  pulsar  uno  de  los  dos  botones y hacer un triple clic sobre el otro. Cuando se ejecuta esta
       acción, se pasa a un modo de trabajo especial, un mensaje aparece en la consola y el altavoz del  sistema
       emite  dos  pitidos  (si se tiene altavoz); si el usuario suelta todos los botones y pulsa otra vez sobre
       uno de ellos antes de tres segundos, entonces el comando especial asociado al botón es ejecutado.

       Los comandos especiales ejecutados por defecto son:

       botón izquierdo:
              Rebotar el sistema mediante el envío de una señal al proceso init

       botón central (si existe):
              Ejecutar `/sbin/shutdown -h now'

       botón derecho:
              Ejecutar `/sbin/shutdown -r now'

       El parámetro -S de la línea de comandos habilita los comandos especiales y  permite  modificar  los  tres
       especificados  por  defecto.  Para  usar los comandos especiales propuestos por defecto, usar `-S ""' (es
       decir, especificar un argumento vacío a -S). Para especificar otros comandos, usar una lista separada por
       el  carácter  dos  puntos  (:) para especificar los comandos asociados a los botones izquierdo, central y
       derecho respectivamente. Si alguno de los comandos está vacío, será interpretado como `enviar  un  signal
       al proceso init'. En vez de ejecutar comandos externos, este comportamiento tan particular está soportado
       por que algunas situaciones extrañas pueden llevar al sistema a un estado tal que sea imposible  ejecutar
       más programas mediante la llamada a sistema fork(); ante esta improbable situación, el usuario será capaz
       de apagar el sistema de manera ordenada. Matar el proceso init desde un proceso que se esté ejecutando es
       la única manera de lograrlo.

       Como  ejemplo,  `-S  ":telinit  1:/sbin/halt"', asocia el envío de la señal para matar al proceso init al
       botón izquierdo, pasar a modo monousuario al botón central, y parar el sistema al botón derecho.

       Evidentemente, los administradores del sistema tendrán que ir con cuidado con los comandos especiales, ya
       que  gpm  se  ejecuta  con  los  permisos  del  superusuario. Los comandos especiales están pensados para
       ordenadores donde el ratón está disponible únicamente para usuarios de confianza.

OPCIONES DE LA LÍNEA DE COMANDOS

       Las opciones de la línea de comandos disponibles son las siguientes:

       -a acel
              Fija la aceleración usada cuando se mueve el ratón por un tiempo superior a delta (ver -d)

       -A     Arranca el servidor con la opción de pegar desactivada. Esta opción está pensada como  una  medida
              de  seguridad;  un  posible  ataque al sistema podria ser introducir un comando desagradable en el
              buffer de selección (rm -rf /) incluyendo el retorno  de  carro  final,  en  este  caso  cualquier
              víctima  que  pulsase el botón central del ratón .. Con el tiempo necesario, esperamos desarrollar
              un mecanismo más general de envejecimiento; el demonio de gpm vaciará automáticamente el buffer de
              selección al pasar un periodo de inactividad (edad). A partir de la versión 1.15.7, se proporciona
              un programa trivial llamado "disable-paste", que ejecuta "gpm -A -q".  Esto  es  así  por  que  el
              último  comando,  al  igual  que  "gpm  -q" en general, necesita los privilegios del superusuario;
              "disable-paste" se instala con el bit de setuid  activado  hacia  el  superusuario.  La  siguiente
              secuencia  puede  ser  añadida  en  /etc/profile  si se permite trabajar a diversos usuarios en la
              consola.

       case $( /usr/bin/tty ) in
       /dev/tty[0-9]*) /usr/bin/disable-paste ;;
       esac

       -b baudios
              Fija la velocidad en baudios.

       -B secuencia
              Fija la secuencia de los botones. ``123'' es la secuencia normal, ``321'' puede ser útil para  los
              usuarios  zurdos,  y  ``132''puede  ser  útil  con  los  ratones que únicamente poseen dos botones
              (especialmente dentre de Emacs). Todas las permutaciones posibles son permitidas.

       -d delta
              Fija el valor delta. Cuando se mueve el ratón por un tiempo superior a delta, el parámetro acel es
              usado como factor multiplicativo. (Debe ser 2 o superior)

       -D     No ejecutar automáticamente en segundo plano cuando el programa comienza, y mostrar los mensajes a
              la salida de error estándar y no mediante el mecanismo de syslog.  Este  parámetro  es  útil  para
              corregir errores; en versiones anteriores, se hacía mediante una opción en tiempo de compilación.

       -g número
              Con  dispositivos  de planeo, emula el botón especificado con un ligero golpe.  El número debe ser
              1, 2 o 3, y se refiere al número antes que se haya remapeado con el parámetro -B. Esta  opción  se
              aplica  a los decodificadores mman y ps2.  Por defecto, no se emula ningún botón, ya que el efecto
              de golpe ligero en los dispositivos ps2 es incompatible con algunos ratones ps2 normales.

       -h     Imprime por pantalla un resumen de los parámetros de la línea de comandos.

       -i intervalo
              Fija el intervalo a usar como el límite superior para los clics múltiples. Si el  intervalo  entre
              que  se  aprieta  el  botón  y se suelta es menor que el límite, la pulsación se considera como un
              doble o triple clic. El tiempo se mide en milisegundos.

       -k     Mata un gpm que se esté ejecutando. Este parámetro puede ser usado si se posee un ratón  del  tipo
              "busmouse"  antes  de  entrar  en Xwindow (a menos que se use -R o la limitación de apertura única
              (single-open) sea eliminada del núcleo del sistema operativo)

       -l juego_de_carácteres
              Especifica la tabla de traducción de inword(). El parámetro juego_de_carácteres es  una  lista  de
              carácteres.  "-"  se  usa  para  especificar  un  rango y " como secuencia de escape del siguiente
              carácter o  para  especificar  códigos  octales.   Únicamente  se  pueden  especificar  carácteres
              visibles,  ya  que los carácteres de control no aparecen en la memoria de vídeo en modo texto, una
              vez que el texto seleccionado ha sido cortado.

       -m nombre_de_fichero
              Especifica el nombre del fichero correspondiente al ratón. Por defecto se coge /dev/mouse.

       -M     Activa el modo múltiple. El demonio leera dos dispositivos de ratón diferentes.  Cualquier  opción
              especificada  a  posteriori  se  referirá  al  segundo  dispositivo,  mientras  que  las  opciones
              especificadas a priori se referirán al primer dispositivo. Esta opción automáticamente  actica  la
              opción ``repetir'' (-R)

       -o líneas
              Conmuta  las  líneas  del módem. El argumento "líneas" puede ser ``dtr'', ``rts'' o ``both''. Este
              parámetro es necesario para algunos ratones extraños conectados a través de la línea serie.

       -p     Especifica que el puntero sea visible  mientras  se  selecciona.  Este  es  el  comportamiento  de
              selection-1.7,  pero  a veces confunde. El comportamiento por defecto es no enseñar el puntero, la
              cual cosa tambien puede confundir.

       -q     Acaba después de cambiar el comportamiento del ratón. Este parámetro está pensado para permitir  a
              los  usuarios modificar el estado del ratón (-a, -B, -d, -i, -l, -p, -r, -V, -A) sin rearrancar el
              servidor. Como este parámetro requiere permisos de  superusuario,  el  administrador  del  sistema
              pueden  usar los bits de "setuid" para permitir su uso por parte de los usuarios. El cambio de los
              parámetros del ratón está solamente permitido desde una de las consolas  virtuales.  Las  opciones
              son trasferidas únicamente al primer ratón.

       -r numero
              Fija la sensibilidad del ratón. Una sensibilidad mayor provoca que el ratón se mueva más rápido.

       -R     Provoca  que gpm se comporte como un repetidos: cualquier dato recibido del ratón mientras se está
              en modo gráfico será reenviado al fichero /dev/gpmdata, que se  comporta  como  una  cola  (fifo),
              siguiendo  el protocolo "mouse-system".  Esto significa que se puede configurar el servidor X para
              que utilice este fichero como dispositivo de ratón. Este parámetro es útil para los  usuarios  que
              posean un ratón del tipo "bus-mouse", ya que podrán invalidar la limitación de abrir únicamente un
              raton (single-open). También una manera sencilla de manejar esos estúpidos ratones con modo  dual,
              que  te  obligan  a  mantener  apretado el botón central mientras se cambia el modo de vídeo. Este
              parámetro se activa si se utiliza el parámetro -M.

       -s número
              Fija la velocidad de muestreo para el ratón.

       -S comandos
              Permite los comandos especiales, y opcionalmente  define  los  comandos  propios  como  una  lista
              separada  por  el  carácter  dos  puntos (:). Ver más arriba para una explicación detallada de los
              comandos especiales.

       -t nombre
              Especifica el tipo de ratón. Usar "-t help"   para  obtener  una  lista  de  los  tipos  de  ratón
              permitidos.

       -v     Imprime información sobre la versión y acaba.

       -V incremento de información
              Especifica  el  nivel  máximo  de  mensajes  que serán mostrados. Así, un número positivo tiene el
              efecto de incrementar el número de mensajes de información mostrados. También se puede especificar
              un  valor  negativo  para  silenciar  el  programa; sin embargo, nótese que debido a las reglas de
              getopt(3) , un valor negativo debe ser especificado justo detrás del parámetro, sin ningún espacio
              entre  ellos  (o sea, -V-1 pero no -V -1). El valor numérico es opcional y su valor por defecto es
              1.

       -2     Obliga a que el ratón tenga dos botones. Esto significa que el botón  central,  si  existe  en  el
              ratón, se comportará exactamente igual que el botón de la derecha.

       -3     Obliga  a  que  el ratón tenga tres botones. Por defecto el ratón se supone que tendrá dos botones
              hasta que se pulsa el botón central. Si realmente existen los tres botones, el de  la  derecha  es
              usado para extender la selección, y el central para pegarla.  ¡Cuidado! si se utiliza el parámetro
              -3 con ratones de dos botones, no será posible pegar la selección que se haya hecho.

MODO DE OPERACIÓN

       Para seleccionar  texto,  pulsar  el  botón  izquierdo  y  arrastrar  el  ratón.   Para  pegar  el  texto
       seleccionado,  en  la  misma  u  otra  consola,  pulsar el botón central.  El botón derecho es usado para
       extender la selección, como en `xterm'.

       En los ratones de dos botones se utiliza el botón derecho para pegar el texto seleccionado.

       Los dobles y triples clics seleccionan toda la palabra y toda la línea respectivamente. Se recomienda  el
       uso de la opción `-P' para obtener un efecto visual mejor.

       Si  se selecciona un espacio en blanco al final de una oración, y no hay ningún otro texto hasta el final
       de la línea, el resto de la línea será seleccionado automáticamente. Si se selecciona un grupo de líneas,
       los espacios del final de cada línea serán eliminados del buffer de selección.

       Cualquier  salida  que  se haga a la consola virtual que tenga una selección de texto marcada hará que la
       marca de texto seleccionado sea eliminada de la pantalla a fin de mantener la  integridad  de  la  misma,
       aunque el contenido del buffer de selección no se verá afectado.

       El mecanismo de selección es desactivado si la consola virtual pasa a modo gráfico, por ejemplo cuando se
       ejecuta X11, y se restaura cuando se vuelve a modo texto. (Ver la sección de errores más abajo)

ERRORES

       El servidor gpm puede tener algunos problemas cuando interactúa con las X: si el ratón es un  dispositivo
       de  apertura  única (single-open), un ratón del tipo "bus-mouse", por ejemplo, se debería manar gpm antes
       de ejecutar las X, o usar la opción ``-R'' (ver más arriba).  Para  matar  al  servidor  gpm  simplemente
       invocar gpm -k. Este problema no es aplicable a ratones conectados al puerto serie.

       Dos  instancias  de  gpm  no pueden ejecutarse en el mismo sistema. Si se dispone de dos ratones, usar la
       opción ``-M'' (ver más arriba).

       Cuando la consola actual está en modo gráfico, gpm duerme hasta que se vuelve a modo texto (a  menos  que
       se especifique -R). Así, no responderá a los clientes. De todas formas, es poco probable que los clientes
       que estén impacientes esperando al ratón molesten en las consolas distintas a la actual.

       Las versiones anteriores a la 1.0 de gpm tienen problemas con las versiones 1.2.9 del kernel, ya que  los
       clientes  tienen  que tener permisos de escritura sobre /dev/gpmctl. Se debería invocar chmod sobre dicho
       nodo o instalar la versión 1.0 o posteriores  de  gpm  (si  tienes  este  documento,  tienes  la  versión
       actualizada)

AUTORES

       Andrew Haylett <ajh@gec-mrc.co.uk> (el código de selección original)
       Alessandro Rubini <rubini@linux.it> (nuevas características)

       Muchos, muchos colaboradores, tanto del paquete "selection" como de gpm.

MANTENIMIENTO

       Desde  la  versión 1.14 yo realizo exclusivamente el mantenimiento. Ian Zimmerman y Prosa Inc respaldarán
       el desarrollo de gpm. El punto de contacto oficial es actualmente la lista de correo gpm@animal.unipv.it,
       gracias  a  mi Universidad, la cual generosamente acoge las discusiones sobre gpm. La lista es gestionada
       por SmartList y todos sois bienvenidos.

FICHEROS

       /dev/mouse        El dispositivo de ratón por defecto
       /var/run/gpm.pid  El PID del servidor gpm en ejecución
       /dev/gpmctl       Un enchufe (socket) de control para
                         los clientes
       /dev/gpmdata      La cola que se comporta como demonio
                         `repetidor' (-R)

VÉASE TAMBIÉN

        mev(1)        Un ejemplo de cliente para el demonio gpm.
        gpm-root(1)   Un manejador para controlar los eventos
                      del ratón.
       El fichero de info sobre `gpm', el cual da información más completa y explica como construir  un  cliente
       de gpm.