Configurar Logitech MX Performance en Ubuntu

Logitech no ofrece herramientas para Linux que permitan mapear los botones extra de sus ratones o teclados, como puede ser el caso del MX Performance, que cuenta con cuatro botones extra prácticamente inservibles en Ubuntu.

Afortunadamente y como casi todo en Linux, tiene solución, vamos a usar el programa “xev“:

Este programa captura cualquier tecla que se pulse en el teclado o ratón, por ejemplo al pulsar el botón “Zoom” del MX Performance, se muestra algo así “state 0x10, button 13, same_screen YES”, eso significa que el código 13 corresponde al botón de “Zoom”, en el MX Performance quedaría algo así:

Botón atrás: 8
Botón adelante: 9
Botón zoom: 13
Botón presentar ventanas: 10

Ahora para re-mapear estos botones necesitamos otro programa llamado “xbindkeys” y para simular la pulsación de teclas, otro programa llamado “xte“:

Ahora para crear el fichero de configuración ejecutamos:

Y lo editamos:

Yo lo tengo configurado de la siguiente forma:

# Forward
“xte ‘keydown Control_L’ ‘keydown Alt_L’ ‘key Left’ ‘keyup Alt_L’ ‘keyup Control_L'”
b:9

# Back
“xte ‘keydown Control_L’ ‘keydown Alt_L’ ‘key Right’ ‘keyup Alt_L’ ‘keyup Control_L'”
b:8

# Email
“xte ‘key m’ ‘key i’ ‘key e’ ‘key m’ ‘key a’ ‘key i’ ‘key l’  ‘keydown ISO_Level3_Shift’ ‘key at’ ‘keyup ISO_Level3_Shift’ ‘key g’ ‘key m’ ‘key a’ ‘key i’ ‘key l’ ‘key period’ ‘key c’ ‘key o’ ‘key m'”
b:13

# Change windows
“xte ‘keydown Alt_L’ ‘key Tab’ ‘keyup Alt_L'”
b:10

¿Que significa esto?

El botón 9 (adelante) cambia al escritorio de la izquierda, simulando las teclas Control_L+Alt_L+Flecha Izquierda. Hay que tener en cuenta que después de usar “keydown” luego hay que usar “keyup” o la tecla quedara pulsada permanentemente.

El botón 8 (atras) es igual que el anterior, solo que cambia al escritorio de la derecha.

El botón 13 (zoom) es una forma de pegar una cadena de texto, en este caso “[email protected]”, muy útil para no perder tiempo cuando tienes que identificarte en muchos sitios con tu email.

El botón 10 (presentar ventanas) simula Alt_L+Tabulador, lo que permite cambiar rápidamente entre las dos ventanas mas recientes.

Después de esto solo queda reiniciar para que los cambios tengan efecto.