141 lines
4.0 KiB
Markdown
141 lines
4.0 KiB
Markdown
|
# xbindkeys
|
|||
|
|
|||
|
## Rimappare tastiera e mouse
|
|||
|
|
|||
|
Installare i seguenti pacchetti:
|
|||
|
|
|||
|
```bash
|
|||
|
sudo apt install xbindkeys xvkbd
|
|||
|
```
|
|||
|
|
|||
|
Quindi creare il seguente file nella propria home:
|
|||
|
|
|||
|
```bash
|
|||
|
cd
|
|||
|
touch .xbindkeysrc
|
|||
|
```
|
|||
|
|
|||
|
### Rimappare i pulsanti del mouse
|
|||
|
|
|||
|
Dare il seguente comando:
|
|||
|
|
|||
|
```bash
|
|||
|
xev -event button
|
|||
|
```
|
|||
|
Quindi, all'interno del riquadro della finestra che si apre, cliccare i pulsanti del mouse. Vengono sempre intercettati due eventi, la pressione e il rilascio del pulsante.
|
|||
|
|
|||
|
Nel esempio sottostante, il **pulsante 1** corrisponde al click sinistro del mouse
|
|||
|
|
|||
|
```md
|
|||
|
xev -event button
|
|||
|
|
|||
|
Outer window is 0x7400001, inner window is 0x7400002
|
|||
|
|
|||
|
ButtonPress event, serial 25, synthetic NO, window 0x7400001,
|
|||
|
root 0x6be, subw 0x7400002, time 24648844, (40,43), root:(1006,608),
|
|||
|
state 0x0, button 1, same_screen YES
|
|||
|
|
|||
|
ButtonRelease event, serial 25, synthetic NO, window 0x7400001,
|
|||
|
root 0x6be, subw 0x7400002, time 24648916, (40,43), root:(1006,608),
|
|||
|
state 0x100, button 1, same_screen YES
|
|||
|
```
|
|||
|
|
|||
|
In questo modo è possibile assegnare dei comandi ai vari bottoni e pulsanti del mouse.
|
|||
|
|
|||
|
Per il Logitech MX Ergo questa è la mappatura:
|
|||
|
|
|||
|
| Numero | Pulsante |
|
|||
|
|--------|--------------------------------------|
|
|||
|
| 1 | click sinistro |
|
|||
|
| 2 | pulsante centrale (click su rotella) |
|
|||
|
| 3 | click destro |
|
|||
|
| 4 | rotella su |
|
|||
|
| 5 | rotella giù |
|
|||
|
| 6 | rotella a sinistra |
|
|||
|
| 7 | rotella a destra |
|
|||
|
| 8 | pulsante indietro |
|
|||
|
| 9 | pulsante avanti |
|
|||
|
|
|||
|
[Qui](https://www.alternativalinux.it/assegnare-bottoni-mouse-in-linux-mint/) maggiori informazioni su come rimappare i pulsanti del mouse nel file `.xbindkeys`.
|
|||
|
|
|||
|
Ecco alcuni semplici esempi:
|
|||
|
|
|||
|
```bash
|
|||
|
# Lanciare firefox con il bottone 9
|
|||
|
"firefox"
|
|||
|
m:0x0 + b:9
|
|||
|
|
|||
|
# Scrivere formula di chiusura con B9
|
|||
|
"xvkbd -text "Cordiali saluti\rDavide.""
|
|||
|
m:0x0 + b:9
|
|||
|
```
|
|||
|
|
|||
|
Dopo aver rimappato i pulsanti nel file `.xbindkeys`, uccidere e riavviare il processo:
|
|||
|
|
|||
|
```bash
|
|||
|
killall xbindkeys
|
|||
|
|
|||
|
xbindkeys
|
|||
|
```
|
|||
|
|
|||
|
### Rimappare la tastiera
|
|||
|
|
|||
|
Per visualizzare come specificare la combinazione di tasti scelta per avviare un comando si può utilizzare:
|
|||
|
|
|||
|
```bash
|
|||
|
xbindkeys -k
|
|||
|
```
|
|||
|
Digitando una combinazione di tasti, ad esempio `control+shift+t`, appariranno a terminale uno o due modi per indicare correttamente la combinazione di tasti all’interno del file `.xbindkeysrc`.
|
|||
|
|
|||
|
```bash
|
|||
|
xbindkeys -k
|
|||
|
|
|||
|
Press combination of keys or/and click under the window.
|
|||
|
You can use one of the two lines after "NoCommand"
|
|||
|
in $HOME/.xbindkeysrc to bind a key.
|
|||
|
"NoCommand"
|
|||
|
m:0x5 + c:28
|
|||
|
Control+Shift + t
|
|||
|
```
|
|||
|
|
|||
|
Nella prima riga *NoCommand* andrà precisato il comando da avviare.
|
|||
|
La seconda riga e anche la terza, sicuramente più intellegibile, presentano la combinazione usata.
|
|||
|
|
|||
|
## Esempio di configurazione
|
|||
|
|
|||
|
```bash
|
|||
|
cat .xbindkeysrc
|
|||
|
|
|||
|
# print pipe
|
|||
|
"xvkbd -xsendevent -text "|""
|
|||
|
m:0x5 + c:30
|
|||
|
# Control+Shift + u
|
|||
|
|
|||
|
# stamp
|
|||
|
"flameshot gui"
|
|||
|
m:0x5 + c:33
|
|||
|
Control+Shift + p
|
|||
|
|
|||
|
#\r per Invio
|
|||
|
#\t per tasto TAB
|
|||
|
#\b per backspace cioè l’eliminazione dell’ultimo carattere digitato
|
|||
|
#\e per Esc
|
|||
|
#\d per Canc o Del
|
|||
|
#\S per Maiuscolo o Shift
|
|||
|
#\C per CTRL
|
|||
|
#\A per Alt
|
|||
|
#\M per il tasto Meta
|
|||
|
#\W per il tasto Windows
|
|||
|
#\[F1] per simulare un tasto funzione
|
|||
|
#\[End] per simulare il tasto fine
|
|||
|
#\[Prior] simula il tasto Pag Su
|
|||
|
#\[Next] simula il tasto Pag Giù
|
|||
|
#\[Print] per il tasto stamp o PrintScreen (esegue uno screenshot)
|
|||
|
```
|
|||
|
|
|||
|
## Collegamenti
|
|||
|
|
|||
|
- [https://www.alternativalinux.it/assegnare-bottoni-mouse-in-linux-mint/](https://www.alternativalinux.it/assegnare-bottoni-mouse-in-linux-mint/)
|
|||
|
- [https://medium.com/@Aenon/bind-mouse-buttons-to-keys-or-scripts-under-linux-with-xbindkeys-and-xvkbd-7e6e6fcf4cba](https://medium.com/@Aenon/bind-mouse-buttons-to-keys-or-scripts-under-linux-with-xbindkeys-and-xvkbd-7e6e6fcf4cba)
|
|||
|
- [https://mauriziosiagri.wordpress.com/tag/xbindkeys-config/](https://mauriziosiagri.wordpress.com/tag/xbindkeys-config/)
|