Ratón

Cómo cambiar la configuración del mouse y el panel táctil con Xinput en Linux

Cómo cambiar la configuración del mouse y el panel táctil con Xinput en Linux
La mayoría de las distribuciones de Linux se envían con la biblioteca "libinput" de forma predeterminada para manejar eventos de entrada en un sistema. Puede procesar eventos de entrada tanto en Wayland como en X y puede manejar una variedad de dispositivos de entrada, incluidas pantallas táctiles y lápices ópticos.

Este artículo explica cómo cambiar varias opciones para un dispositivo de entrada que maneja la biblioteca libinput. Para verificar y configurar las opciones disponibles, se utilizará una herramienta de línea de comandos llamada "xinput".

Tenga en cuenta que esta guía solo funciona con el servidor de pantalla X. Para Wayland, debe confiar en la configuración del sistema proporcionada por la distribución o usar una utilidad de configuración centralizada como gsettings.

Listar dispositivos de entrada

Xinput viene preinstalado de forma predeterminada en Ubuntu. Si por alguna razón no está instalado en su sistema, ejecute el siguiente comando para instalarlo:

$ sudo apt install xinput

Para enumerar todos los dispositivos de entrada integrados y externos conectados a su sistema, ejecute el siguiente comando:

$ xinput - lista

Verá una salida en la terminal como esta:

La entrada debajo de "Puntero de núcleo virtual" (resaltada con flechas rojas) es un mouse USB con cable conectado a mi sistema. Tendrá que usar el nombre exacto o la identificación que se muestra en la captura de pantalla anterior para configurar los ajustes del mouse o del panel táctil a través de la herramienta de línea de comandos xinput.

Tenga en cuenta que en la captura de pantalla anterior, xinput muestra las propiedades de los dispositivos conectados a mi sistema. Los nombres e ID de los dispositivos serán diferentes para su sistema según la configuración de su hardware y los dispositivos externos conectados a través de USB, Bluetooth o receptores inalámbricos.

Ver propiedades de un dispositivo conectado

Para ver el estado actual y varias opciones activas para el dispositivo enumerado anteriormente, ejecute un comando en el siguiente formato:

$ xinput --list-props "id"

Para el mouse Dell mencionado anteriormente, el comando sería:

$ xinput --list-props 8

Existe una limitación con el uso de este comando. Los ID que se muestran en la salida del terminal tienden a cambiar cuando conecta un dispositivo listado a un puerto diferente. A medida que cambian las ID, siempre existe la posibilidad de cambiar accidentalmente la configuración de un dispositivo diferente. Para solucionar este problema, es mejor utilizar el nombre completo del dispositivo como identificador en lugar de su id. Entonces, para el mouse Dell mencionado anteriormente, el mejor comando sería:

$ xinput --list-props "PixArt Dell MS116 USB Optical Mouse"

El área resaltada a continuación en un rectángulo rojo muestra la configuración actual del dispositivo. Solo puede cambiar las opciones que se muestran en la salida. Dependiendo de las capacidades de su dispositivo, se pueden enumerar algunas opciones adicionales, mientras que otras se pueden omitir por completo.

Cambiar las propiedades de un dispositivo conectado

Ahora que sabe cómo verificar las propiedades de un dispositivo de entrada conectado, la configuración se puede cambiar fácilmente usando algunos comandos simples.

Por ejemplo, para habilitar o deshabilitar el desplazamiento natural, debe ejecutar comandos en el siguiente formato:

$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse" 285 0
$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse" 285 1

"285" es el ID para el desplazamiento natural, como se muestra en la captura de pantalla anterior. "0" deshabilita el desplazamiento natural mientras que "1" lo habilita. Una vez más, usar ID no es una forma confiable de cambiar esta configuración. Un mejor enfoque es utilizar el identificador de propiedad completo.

$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse"
"libinput Natural Scrolling Enabled" 0
$ xinput set-prop "PixArt Dell MS116 USB Optical Mouse"
"libinput Natural Scrolling Enabled" 1

Tenga en cuenta que no debe tocar los identificadores de propiedad que contengan la palabra "Predeterminado". Estos son valores de respaldo de referencia y cualquier intento de cambiarlos dará como resultado que xinput arroje un error.

Para saber más sobre otras opciones y las que se enumeran en la salida del terminal anterior, visite el siguiente página.

Hacer que los cambios sean persistentes

El método explicado anteriormente cambia la configuración solo para la sesión activa. Cuando reinicie el sistema, estos cambios desaparecerán. Para hacerlos persistentes, se pueden utilizar dos enfoques.

El primer método requiere que agregue estos comandos a las aplicaciones de inicio. Puede agregar tantas entradas como desee utilizando una bonita interfaz gráfica. No se requieren permisos de root para crear estas entradas, y cambiarlas más tarde es muy fácil.

Para agregar el comando a las aplicaciones de inicio, inicie la aplicación "Aplicaciones de inicio" desde el iniciador de aplicaciones. Haga clic en el botón "Agregar" para agregar una entrada. Establezca una descripción e ingrese el comando xinput apropiado según sus necesidades. Asegúrese de que la casilla de verificación esté marcada una vez que haya guardado la entrada.

Eso es todo, el comando xinput que ingresó se ejecutará automáticamente al iniciar el sistema. Agregué un poco de retraso al comando para esperar a que la sesión se cargue correctamente. Como referencia, aquí está el comando que se usa a continuación en la captura de pantalla a continuación:

$ sleep 3 && xinput set-prop "PixArt Dell MS116 USB Optical Mouse"
"libinput Natural Scrolling Enabled" 1

El segundo método requiere que ejecute algunos comandos como root y edite un archivo de texto. La ventaja de usar este método es que no tiene que crear entradas separadas para cada opción en una GUI y todo simplemente reside en un archivo de texto, lo que facilita compartirlo entre dispositivos.

Ejecute los siguientes comandos para crear el directorio requerido y el archivo conf:

$ sudo mkdir -p / etc / X11 / xorg.conf.D
$ sudo touch / etc / X11 / xorg.conf.d / 99-libinput.conf

Observe la parte "99" en el nombre del archivo. Indica el orden de carga de los archivos que existen en "xorg.conf.carpeta d ”. Un archivo que tenga el número más alto como prefijo se cargará en último lugar, anulando cualquier opción especificada en archivos anteriores en caso de que haya duplicados. Al especificar "99" o cualquier otro número como prefijo, puede asegurarse de que se cargue después de otros archivos.

Abra "99-libinput.conf ”con acceso de root en su editor de texto favorito. Ingrese el fragmento de código a continuación después de realizar los cambios necesarios según sus requisitos.

Sección "InputClass"
Identificador "Dell Mouse"
MatchProduct "Mouse óptico USB PixArt Dell MS116"
Opción "NaturalScrolling" "true"
EndSection

Dónde:

Si especifica correctamente "MatchProduct", podrá limitar las opciones de configuración solo a un dispositivo específico. Los cambios realizados en el archivo conf entrarán en vigor cuando reinicie la próxima vez. Puede agregar cualquier número de opciones en la sección "InputClass". Está disponible una lista de varias opciones que se pueden agregar al archivo aquí.

Conclusión

El método explicado anteriormente es especialmente útil cuando desea utilizar reglas de configuración por dispositivo. La interfaz de configuración predeterminada del sistema en GNOME y KDE proporciona solo algunas de las opciones más utilizadas disponibles para varios dispositivos de entrada. Para configurar opciones avanzadas para un dispositivo de entrada, no tiene más remedio que usar "xinput" o crear un archivo de configuración dedicado.

Los 5 mejores productos ergonómicos de mouse de computadora para Linux
¿El uso prolongado de la computadora causa dolor en la muñeca o los dedos?? ¿Sufre de rigidez en las articulaciones y constantemente tiene que dar la ...
Cómo cambiar la configuración del mouse y el panel táctil con Xinput en Linux
La mayoría de las distribuciones de Linux se envían con la biblioteca "libinput" de forma predeterminada para manejar eventos de entrada en un sistema...
Vuelva a asignar los botones del mouse de manera diferente para diferentes programas con X-Mouse Button Control
Tal vez necesite una herramienta que pueda hacer que el control de su mouse cambie con cada aplicación que use. Si este es el caso, puede probar una a...