Come configurare i pulsanti extra in Logitech Mouse


64

Qualcuno può dirmi come configurare tutti i pulsanti su un mouse Logitech MX 620 con Ubuntu 12.04?

In particolare, mi piace renderne uno solo il Ctrltasto (per controllare il clic delle pagine Web) e un altro Ctrl+ Wper chiudere le schede. Normalmente faccio anche la pagina della rotellina di scorrimento verso il basso per ogni clic (altrimenti mi fa male le braccia scorrere così tanto). Faccio spingendo la ruota a sinistra = pagina indietro e spingendo a destra = pagina in avanti.

Ho cercato altre risposte a questo e ho trovato qualcosa di correlato qui

Ma quando ho pubblicato un post di follow-up per risolvere il problema, nessuno ha risposto, forse ho fatto l'errore di pubblicare una domanda che era stata "risolta". Non sono sicuro di come dovrei riaprire una domanda pertinente alla mia domanda ma che non risolve del tutto la mia.


1
Penso che questo sia il modo più semplice per far funzionare il mouse con tutte le funzionalità: ralf-oechsner.de/opensource/page/logitech_performance_mx
Edward Kennedy,

Risposte:


70

Avrai bisogno di diverse applicazioni per questo, per installarle eseguite

sudo apt-get install xbindkeys xautomation xev

o

sudo apt-get install xbindkeys xautomation x11-utils

modifica: xev è stato unito in x11utils, a partire da Ubuntu 14.04 o versioni successive.

Passo 1

È necessario trovare i numeri dei pulsanti per i pulsanti sul mouse. Corri xev. Vedrai apparire delle piccole finestre bianche, inserirci il mouse e premere i pulsanti del mouse (è meglio eseguire questo pulsante alla volta). Dovresti ottenere un output in questo modo per ogni pulsante:

ButtonRelease event, serial 41, synthetic NO, window 0x4c00001,
root 0x2e9, subw 0x4c00002, time 25804905, (31,28), root:(821,80),
state 0x110, button 1, same_screen YES

(nota: xevanche catturare il movimento del mouse quindi potrebbe essere necessario passare al setaccio gli eventi di movimento del mouse per trovare gli eventi pulsante, ad esempio: xev -event mouse | grep Button --before-context=1 --after-context=2)

Questo è ciò che è importante da quella di uscita: button 1. Questo ci dice che quel pulsante particolare è il pulsante uno. Vorrei archiviarlo in un .txtfile per ora.

Passo 2

Crea il xbindkeysfile di configurazione usando:

xbindkeys --defaults > $HOME/.xbindkeysrc  

Successivamente è necessario aggiungere i collegamenti chiave / pulsante al file di configurazione. Puoi aprire questo file con gedit $HOME/.xbindkeysrc. È qui che inizia il divertimento. Utilizzeremo xteper impostare i collegamenti ai nostri pulsanti.

Per fare in modo che un pulsante funzioni come Ctrlaggiungeremmo:

"xte 'key Control_L'"
b:1  

Ciò si legherebbe Ctrlal pulsante del mouse uno.

Se mi dirai i numeri dei pulsanti e cosa vuoi che facciano, scriverò la sceneggiatura per te.


@seth: vorrei configurare i pulsanti 8 e 9 in modo che siano rispettivamente "indietro" e "avanti". Meglio ancora, se potessi capire dove trovare i comandi che posso configurare con xbindkeys, sarebbe fantastico. Grazie, Dan
Dbbd, il

11
Il modo più semplice per ridurre la demenza dell'uscita xev è quello di eseguire l'output attraverso grep: xev | grep -A2 ButtonPress; questo lascerà tutti gli eventi di movimento del mouse, gli eventi di messa a fuoco, ecc. e mostrerà semplicemente gli ButtonPresseventi.
Lambart,

@dbbd Apparentemente mi è mancato in qualche modo il tuo messaggio. Lo esaminerò e ti risponderò.
Seth,

2
Anche il mio mouse è un G300 e non riesco a farlo funzionare. I pulsanti sono mappati in modo errato e due pulsanti sono associati allo stesso pulsante Control_L e non ho idea di come mapparli poiché quando vengono premuti non si identificano.
Inoki,

6
"xbindkeys -p" per applicare le modifiche
Alex Fedulov,

12

Ho seguito le istruzioni di @ Seth , ma l'associazione che volevo era fare per il pulsante pollice e l'M705 CTRL + Left-click(per aprire i collegamenti in una nuova scheda nel browser Chrome). L'associazione che dovevo aggiungere era questa:

"xte 'keydown Control_L' 'mouseclick 1' 'keyup Control_L'"
    b:10 + Release

Attende il rilascio del pulsante del pollice, quindi preme il tasto di controllo, esegue il clic del mouse, quindi rilascia il tasto di controllo.


Questa soluzione, non la precedente, ha funzionato come un fascino su Ubuntu Mate 16.04 con il mouse Logitech M705. L'ho usato per assegnare copia e incolla ai pulsanti laterali in modo che le mie impostazioni fossero così: "xte 'keydown Control_L' 'key c' 'keyup Control_L'" b: 9 "xte 'keydown Control_L' 'key v' 'keyup Control_L '"b: 8
Draco

2
"xbindkeys -p" per applicare le modifiche.
user3616725

8

Per chiunque desideri associare le azioni di copia e incolla ai pulsanti del mouse:

  1. Segui la risposta Seth (quella con passaggio 1, passaggio 2 e sudo apt-get install xbindkeys xautomation xev)
  2. Inserisci le seguenti righe nel tuo .xbindkeysrcfile:

Questo è per la copia:

"xte 'keydown Control_L' 'key c' 'keyup Control_L'"
b:9

Questo è per incollare:

"xte 'keydown Control_L' 'key v' 'keyup Control_L'"
b:8

* b:9indica il pulsante 9 sul mouse (controllare i numeri dei pulsanti con xev)

  1. Non funzionerà immediatamente, è necessario ricaricare .xbindkeysrcprima o riavviare il computer.

oh wow, questo ha funzionato perfettamente per me. cercando di impostare quelle chiavi negli ultimi 4 anni e solo ora in grado di farlo. grazie! tra l'altro è molto importante sapere quali sono questi pulsanti, per me erano 16 e 17 sul mio mouse ..
Tio TROM

NOTA: b: 9, ecc. DEVONO essere su una nuova riga nel file di configurazione. Li ho messi sulla stessa linea e non riuscivo a capire perché non funzionasse.
user3616725

Questo ha funzionato per me per la GUI, ma non per il terminale Bash. Esiste un modo per far funzionare copia / incolla per ENTRAMBE la GUI e la shell con gli stessi pulsanti?
JoeMjr2,

@ JoeMjr2 Nel terminale Bash molto probabilmente incolleresti usando Ctrl + Maiusc + V e copia premendo Ctrl + Maiusc + C. Quindi avresti bisogno di un modo per usare la mappatura specifica dell'applicazione. Non sono sicuro di come. Forse potresti usare un emulatore di terminale e impostare i tasti di scelta rapida per copiare incolla in modo standard, quindi i pulsanti del mouse copia incolla dovrebbero funzionare.
zwolin,

5

È necessario installare Solaar, uno strumento Linux che consente di gestire i mouse e le tastiere di Logitech Unifying Receiver, dotato sia di una GUI che di un'interfaccia a riga di comando. Per fare ciò, aggiungi il seguente repository e installa eseguendo i seguenti comandi:

sudo add-apt-repository ppa:daniel.pavel/solaar

sudo apt-get update

sudo apt-get install solaar

Ciò ti consentirà di aumentare e massimizzare il DPI del mouse, monitorare la batteria, abilitare lo scorrimento regolare e lo scorrimento laterale. Per far funzionare la finestra multipla e il pulsante dello zoom puoi visitare questo sito che ti guida attraverso i semplici passaggi per ottenere la funzionalità che stai cercando:

http://www.ralf-oechsner.de/opensource/page/logitech_performance_mx


L'ho fatto sul mio C720 / crostino. Quando ho corso da sola, è tornato alla schermata iniziale. Ho dovuto riavviare (e capire che il comando era sudo startxfce4) e rimosso solaar.
Marty Cohen,

Solaar è stato molto pieno di bug per me il 14.04 e alla fine non sarebbe scappato affatto. Mi rendo conto che la domanda originale era di circa 12.04, ma ho pensato che valesse la pena menzionarlo. Magari potresti salvare qualcuno un po 'di tempo
muschio

12
-1. Questa risposta non risponde alla domanda. solaar non esegue alcuna mappatura dei pulsanti del mouse.
Il

non ha funzionato neanche per me.
Woeitg,

3

Dovresti già averli come dovrebbero venire con Ubuntu, ma esegui questo per ogni evenienza.

sudo apt-get install libdaemon-dev libglade2-dev libgtk2.0-dev 

Ora scarica e installa

  1. btnx-config
  2. btnx In questo ordine.

Installare:

Decomprimi e cdin ognuna di queste cartelle.

In ciascuno di essi eseguire:

./configure
make
sudo make install

Una volta installati entrambi, esegui

sudo btnx-config

Nella scheda Configurazioni, fai clic su Rileva mouse e pulsanti

inserisci qui la descrizione dell'immagine

Nella scheda Pulsanti, assegnare al pulsante del mouse un tasto o una funzionalità. Assicurarsi che ☑ segno di spunta abilitato .

inserisci qui la descrizione dell'immagine

Infine, nella scheda Configurazioni, fai clic sul pulsante Riavvia btx per rendere effettive le modifiche.

inserisci qui la descrizione dell'immagine


Ha funzionato bene sulla discoteca Ubuntu. Una correzione: dovrebbe essere giusto ./configure, no ./configure make. Inoltre non hai bisogno di sudo con make.
Panta82,

@ panta82 Ho preso quelli direttamente dal file README.md
No Sssweat

Lo so. C'è un errore nel file README :)
panta82

2

Anch'io ho il mouse da gioco g700s. La buona notizia è che era costoso (per un mouse) e la fabbricazione lo ha effettivamente costruito secondo uno standard elevato. Le funzioni per il mouse sono memorizzate nel mouse. La cattiva notizia è che per configurarlo correttamente è necessario utilizzare il software logitech che funziona solo su Windows.

Quindi ... in pratica devi collegare il mouse in una finestra di Windows e configurarlo esattamente come lo desideri . Ti consiglio di utilizzare la funzione di cambio profili in modo da poterlo configurare per un normale utilizzo, ad esempio: esecuzione del desktop Linux, funzioni di compiz (cambio di app, cambio di aree di lavoro, attivazione / disattivazione della massimizzazione, ecc.), Quindi creazione di un altro profilo per i giochi ( possibilmente con una frequenza di aggiornamento diversa) e i pulsanti di gioco. Per quanto riguarda compiz, considera di impostare i pulsanti dei 4 pollici laterali su alt, ctl, maiusc, superkey, poiché ciò renderà più semplice il passaggio con la rotella di scorrimento. alt + la rotellina di scorrimento verso l'alto diventa il pulsante del pollice 1 + la rotellina di scorrimento verso l'alto.

Il mio schema:

pulsante pollice 1 (avanti in basso) = alt

pulsante pollice 2 (avanti in alto) = maiusc

pulsante pollice 3 (retro in basso) = ctrl

pulsante pollice 4 (parte superiore posteriore) = tasto di scelta rapida (tasto Windows)

tasto centrale dito indice = ctrl + alt + tastierino numerico 5

dito indice più vicino a te = tab

indice più lontano da te = alt-f4 (compiz / linux / winX close app)

impostazioni predefinite compiz:

cambia area di lavoro = alt + ctl + trascinamento del mouse = abbassa 2 pulsanti del pollice insieme + clic e trascina del mouse; sembra complicato quando viene digitato ma è molto efficiente da usare.

cambia app = alt + tab = pulsante avanti pollice in basso + pulsante chiudi dito indice (ricorda che per funzionare bene devi tenere premuto il pulsante pollice, così puoi passare oltre 1 app)

dissolvenza di una finestra (trasparenza) = alt + rotellina di scorrimento = pollice in basso pulsante avanti + rotellina di scorrimento

Quindi torna indietro nel tuo box Linux e funziona perfettamente.

Le combinazioni di tasti sopra descritte funzionano benissimo, ma considera che il campo di battaglia 4 ha anche un momento terribile nel riconoscere il mouse come un mouse con 10 pulsanti, quindi per questo ho dovuto mappare i miei 4 pulsanti a =, \ e; Ma ovviamente in Linux questo è stupido, e ricollegare la chiave = alla "prossima app" è una lezione di inutilità, specialmente quando si codifica hahahaha.

MOLTO BISOGNO DI LINK SE UTILIZZO DI VIRTUALBOX PER ESEGUIRE WINDOWS 7:

https://stackoverflow.com/questions/20021300/usb-devices-are-not-recognized-in-virtualbox-linux-host

https://www.youtube.com/watch?v=-0OyrvbZNwo



1

Ho un Logitech MX 500 e volevo mappare i tasti laterali con le azioni Copia e Incolla (è molto utile).

Ho usato questa guida per capire come configurare il file xbindkeysrc ed essere in grado di mappare le chiavi.


2
Sai che spostando il puntatore del mouse all'inizio / fine del testo che si desidera copiare, quindi premere il pulsante sinistro e continuare a tenerlo premuto fino ad arrivare alla fine / inizio di ciò che si desidera copiare e viene copiato. Quando vuoi incollare premi il pulsante centrale (se hai solo un mouse a due pulsanti, premi contemporaneamente il pulsante sinistro e destro) e incolli il testo. Non è necessario configurare nulla, questo è pronto per l'uso su tutte le macchine Unix e Linux con un sistema XWindows. Tieni presente che non stiamo utilizzando un prodotto Microsoft privo di funzionalità ma GNU / Linux

@ user350566 Questo tipo di copia + incolla presenta alcune limitazioni. A volte vuoi gli altri appunti chiamati anche Ctrl + C / + V. Sto solo dicendo.
donquixote,

1

Ho realizzato una soluzione che funziona con Wayland.

È qui https://github.com/mathportillo/wayland-mouse-mapper

Usa evemu per inviare un avviso di evento del dispositivo al kernel, quindi non è limitato da Wayland

Di seguito è riportato uno script bash riepilogato che mostra come funziona (la maggior parte dei comandi richiede i privilegi di root)

trova il tuo dispositivo:

libinput list-devices

per trovare direttamente il nome del dispositivo puntatore utilizzare:

libinput list-devices | grep pointer -B3 | grep -o '/dev/input/event[1-9]*'

per elencare gli eventi del dispositivo in uso (modificare event5 con il nome del dispositivo puntatore):

libinput debug-events --device /dev/input/event5

per associare i comandi agli eventi del dispositivo utilizzare:

while read line; do
    echo ${line} # line represents a command
    # your code goes here
done < <(stdbuf -oL libinput debug-events --device /dev/input/event5 & )

per attivare un evento del mouse utilizzare:

evemu-event /dev/input/event5 --sync --type EV_KEY --code KEY_PAGEUP --value 1

il tipo può essere diverso dalla sequenza di tasti e il codice può essere diverso da PageUp, il valore è 1 per premuto e 0 per rilasciato sì, il mouse può attivare la sequenza di tasti, il sistema lo interpreterà come tastiere, è tutto solo eventi da dispositivi di eventi.

Uno script che unisce tutti i concetti di cui sopra su un mapper funzionante, che funziona su Wayland e può essere configurato come servizio per l'avvio all'avvio del sistema, si trova nel repository git sopra.


0

in Debian hai un xbindkeys-configpacchetto che ti aiuterà a configurare i collegamenti chiave / pulsante. Quindi fai:

sudo apt-get install xbindkeys-config

2
Quel programma si blocca ogni volta che provo a fare qualcosa con il mio G300.
Inoki,


0

Quindi ho usato il mio MX performance sul mio computer Ubuntu per circa 6 mesi. Ho lasciato la maggior parte dei pulsanti predefiniti, ma sono andato avanti e ho reso il pulsante pollice il tasto Super che è più pratico che andare nell'angolo in alto a sinistra dello schermo in Gnome. E ho reso il pulsante dello zoom un pulsante di controllo. Ma è impostato per attivare CTRL e disattivare CTRL con clic separati. Questo aiuta davvero poiché ho un display 4K e uno 1080, quindi posso fare clic una volta sul pulsante dello zoom, scorrere la rotellina per ingrandire e rimpicciolire le pagine Web e quando ho la pagina Web ridimensionata come voglio, faccio clic sullo zoom ancora. Ecco le mie impostazioni di xbindkeysrc:

"/usr/bin/xte 'keydown Control_L' &"
b:13
"/usr/bin/xte 'keyup Control_L' &"
Control + b:13
"/usr/bin/xte 'key Super_L'"
b:10 + release

Questo non sembra rispondere alla domanda posta.
TheWanderer,

0

btnxpotrebbe essere una soluzione semplice per la rimappatura dei pulsanti con mouse Logitech in quanto dovrebbe funzionare con tutti i marchi. Ha un'interfaccia grafica semplice e può conoscere i pulsanti disponibili. btnx faceva parte dei repository standard anni fa, ma è stato rimosso. È attualmente disponibile qui: https://launchpad.net/~oliverstar/+archive/ubuntu/ppa


0

Scorri su e giù con i pulsanti avanti e indietro del mouse

Innanzitutto, installa i pacchetti richiesti:

$ sudo apt install x11-utils xbindkeys xautomation

Quindi, utilizzare xevfornito da x11-utilsper rilevare i numeri esatti dei pulsanti avanti e indietro del mouse.

$ xev |grep -A2 ButtonPress

Per il mio mouse Anker verticale cablato , avanti e indietro sono rispettivamente i pulsanti 8 e 9.

ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1708382, (68,54), root:(939,498),
    state 0x10, button 8, same_screen YES
--
ButtonPress event, serial 37, synthetic NO, window 0x3600001,
    root 0x1da, subw 0x0, time 1711030, (69,48), root:(940,492),
    state 0x10, button 9, same_screen YES

mouse Anker verticale cablato

Continua creando un file nascosto chiamato .xbindkeysrcnella tua home directory con i seguenti contenuti:

"xte 'keydown Down'"
b:8

"xte 'keyup Down'"
b:8 + Release

"xte 'keydown Up'"
b:9

"xte 'keyup Up'"
b:9 + Release

Il xtecomando è fornito dal xautomationpacchetto.

Infine, disconnettersi e riconnettersi dal desktop per rendere effettive queste modifiche. Ora puoi scorrere su e giù nei browser e in altri programmi tenendo premuti i pulsanti avanti e indietro del mouse.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.