Ratón con scroll HOWTO


Jaime Pérez Crespo (japecre at pantuflo.escet.urjc.es)

Última actualización: 11 de Julio de 2003



Motivación

Todo aquel que haya utilizado en alguna ocasión un ratón con rueda de scrolling sabe lo útil que puede llegar a ser esta funcionalidad. Somos hoy dia muchos los que tenemos en nuestros ordenadores ratones de este tipo, pero son muchos también los que desconocen que se puede sacar el máximo partido a la ruedecilla también bajo entornos GNU/Linux.

Así pues en este mini-howto explicaremos de que sencilla manera podemos añadir en nuestro Linux soporte para cualquier ratón con ruedecilla y poder así disfrutar de él como en otros sistemas.


El soporte de las X

Seguramente muchos de los que estén leyendo este documento se preguntarán que tendrán que ver las X con nuestro ratón con scroll. La razón es simple. La ruedecilla de scroll del ratón se utiliza con aplicaciones que usan el entorno gráfico, esto es, las X windows, por lo tanto tenemos que buscar la manera de que dichas aplicaciones reciban los eventos asociados con el movimiento de la ruedecilla. Esto se hace a través de las X windows. Nuestro entorno gráfico provee de un modelo de eventos que indican una ocurrencia determinada con alguno de los dispositivos de interacción con el operador, esto es, la pulsación de una tecla, el movimiento del ratón, o en nuestro caso, el giro de la ruedecilla. Es por esto por lo que para que nuestras aplicaciones se beneficien de la comodidad del scroll, tenemos que indicarle al servidor gráfico que capture y notifique a las aplicaciones los eventos relacionados con el mismo.

Los que estén acostumbrados a tratar con la configuración de las X sabrán ya que es lo que debemos hacer. El método es sencillo, y tan solo necesitamos editar el fichero de configuración de las X. Lo primero será asegurarnos de que fichero de configuración estamos usando. Por lo general se encontrará bajo /etc/X11 y en la mayoría de los casos, será concretamente /etc/X11/XF86Config-4, si bien no tiene por que ser asi siempre. En adelante asumiremos el uso de dicho fichero como fichero de configuración, si bien el nombre del mismo es por supuesto lo de menos.

Dado que este fichero es un fichero importante del sistema, solamente puede modificarlo el administrador de la máquina o root. Abrimos un terminal, y cambiamos el modo de ejecución para salir facilmente de las X y trabajar así en modo consola:


[icarus@mordor icarus]$ su
Password:
[root@mordor icarus]# telinit 3

Esto cerrará nuestra sesión de las X y matará el servidor (aparte de parar o arrancar otros servicios), y nos dejará identificados como root en el terminal 1 (tty1, ctrl + alt + F1). Nos desplazamos hasta /etc/X11 y editamos el fichero de configuración de las X con nuestro editor de texto plano favorito, por ejemplo vi:


[root@mordor icarus]$ cd /etc/X11
[root@mordor X11]# vi XF86Config-4

Esto abre el editor vi y carga en él el documento XF86Config-4. Para los que no sepan utilizar este magnífico editor, incluyo un vistazo rápido que nos permita editar el archivo, y recomiendo encarecidamente leer su página de manual:

Una vez tenemos unas nociones básicas con las que poder empezar a usar vi, editamos el fichero de configuración de las X. Con los cursores nos desplazamos hasta localizar una sección InputDevice en el fichero que haga referencia a nuestro ratón. Debemos ser cuidadosos con la sintaxis del fichero. Modificamos la sección para añadir o modificar las opciones hasta que quede de forma similar a esto:


Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Device" "/dev/mouse"
        Option      "Protocol" "imps/2"
        Option      "Emulate3Buttons" "off"
        Option      "ZAxisMapping" "4 5"
        Option      "Buttons" "3"
EndSection

Las opciones más importantes son "ZAxixMapping" a la que daremos el valor "4 5", y "Protocol", cuyo valor modificaremos por "imps/2". Si nuestro ratón tiene un conector de tipo usb, la opción "Device" deberá tener valor "/dev/usbmouse". También podemos desactivar con "off" la opción "Emulate3Buttons" dado que nuestra ruedecilla hace de botón central y no necesitamos emularlo como si tuvieramos un ratón de dos botones. Se puede incluir así mismo una opción "Buttons" con el número de botones que tenga nuestro dispositivo, teniendo en cuenta que las X windows a no ser en sus últimas versiones no soportan más de cinco botones. Por último, podemos jugar con el valor de una opción "Resolution" buscando valores que nos funcionen mejor, partiendo de, por ejemplo, "100".

Una vez hayamos realizado los cambios pertinentes podemos salir guardando el fichero, tras lo cual procederemos a rearrancar las X y comprobar que nuestra ruedecilla funciona a nuestro gusto. Para ello, volveremos al nivel de ejecución en el que estábamos antes, que usualmente es 5, o 2 en Debian GNU/Linux:


[root@mordor X11]$ telinit 5

Tras esto sólo queda probar el funcionamiento de nuestro redescubierto ratón con scroll y ajustarlo como más nos guste repitiendo el método explicado aquí. Nótese que no es imprescindible matar las X ni cambiar de nivel de ejecución para hacer todo esto, ya que el fichero se puede editar perfectamente desde una consola abierta en el entorno gráfico y rearrancar las X con la combinación de teclas ctrl + alt + backspace, pero no obstante es recomendable hacer las cosas bien y para evitarnos posibles sorpresas, hacerlo como aquí se ha explicado.


Enlaces Interesantes

Proyecto XFree86: http://www.xfree86.org/


Licencia

Este documento público puede ser distribuido y/o traducido libremente, siempre y cuando en el documento resultante se incluyan los datos del autor indicados en la cabecera, esta sección de licencia, y la url del documento original: