Al escribir en el teclado de una notebook suele ocurrir que se toca accidentalmente el touchpad (mousepad, ratón tactil) con la palma de la mano y se cambia el foco. Esto es algo realmente molesto y suele ser conveniente deshabilitar el touchpad mientras se escribe o cuando se utilizar un mouse adicional. En la mayoría de los modelos de computadoras portátiles de diferentes fabricantes se debe a que el mousepad está ubicado debajo del teclado.

La herramienta synclient permite consultar y modificar las opciones del controlador Synaptics desde línea de comandos, lo cual permite habilitar y deshabilitar el touchpad ejecutando un simple comando o definir un atajo de teclado a tal fin. Esta herramienta es parte del paquete xserver-xorg-input-synaptics en Debian/Devuan y derivados.

Cuando trabajo desde mi notebook siempre utilizo un mouse óptico por comodidad. Tal como se observa en la salida de lsusb:

emi@vaio:~$ lsusb | grep -i mouse
Bus 002 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse

Me resulta más práctico que el touchpad.

Como mencionaba, synclient permite consultar y modificar las opciones del controlador Synaptics. La opción -l permite listar la configuración actual:

emi@vaio:~$ synclient -l | grep -i touch
    TouchpadOff             = 0

Se observa que, a pesar de utilizar un mouse óptico, el touchpad sigue habilitado y activo (si lo toco, se mueve el puntero). Esto se debe a que la opción TouchpadOff, la cual deshabilita el touchpad, se encuentra en cero (deshabilitada).

Para deshabilitar el touchpad entonces simplemente basta con ejecutar synclient TouchpadOff=1:

emi@vaio:~$ synclient TouchpadOff=1

Al hacer esto el mousepad deja inmediatamente de funcionar.

Para volver a habilitarlo es necesario ejecutar:

emi@vaio:~$ synclient TouchpadOff=0

Así de simple.

Ahora bien, es deseable definir un atajo de teclado para hacerlo rápidamente. Mi computadora en particular por ejemplo tiene un ícono para deshabilitar el touchpad con la tecla de función en la tecla F1.

A tal fin, es necesario crear un pequeño script Bash que habilite si está deshabilitado, y deshabilite si está habilitado (lo que se conoce como toggle). Pasar a superusuario:

emi@vaio:~$ su -

Determinar la ruta absoluta al binario synclient:

root@vaio:~# which synclient
/usr/bin/synclient

Crear el script touchpad-toggle dentro del directorio /usr/local/bin/:

root@vaio:~# nano /usr/local/bin/touchpad-toggle

El script tiene el siguiente contenido:

#!/bin/bash

SYNCLIENT="/usr/bin/synclient"

DISABLED=$($SYNCLIENT -l | grep -i touch | cut -d'=' -f2 | tr -d '[:blank:]')

if [ "$DISABLED" = "1" ]
then
    $SYNCLIENT TouchpadOff=0
else
    $SYNCLIENT TouchpadOff=1
fi

Finalmente, otorgar permisos de ejecución:

root@vaio:~# chmod +x /usr/local/bin/touchpad-toggle

Cerrar la sesión como root y probar el script ejecutándolo con el usuario actual:

emi@vaio:~$ touchpad-toggle

No debe arrojar errores ni salida alguna.

En Devuan con XFCE es necesario acceder a la configuración del teclado desde el menú "Applications Menu > Settings > Keyboard" y luego a la pestaña "Application Shortcuts" para crear un nuevo atajo de teclado. Presionar el botón "Add":

Luego presionar la tecla o combinación de teclas deseada:

En mi caso decidí definir la tecla F8 como atajo de teclado para habilitar/deshabilitar el touchpad:

Compartí este artículo