Come disabilitare il tasto centrale del mouse per incollare?

97

C'è un modo per disabilitare il comportamento del tasto centrale del mouse che è qui presente in modo predefinito su gnome?

Ho una rotellina del mouse sensibile e ogni volta che faccio scorrere dei testi, a volte incolla il materiale a caso nel testo. Perdo un sacco di credibilità quando invio un file a qualcun altro che ha frammenti di testo casuali incollati su di esso.

Ho visto un soluzione che passa mappando il pulsante centrale del mouse a un pulsante del mouse inesistente, ma ciò significa eliminare completamente il pulsante centrale del mouse (ovvero non chiudere la scheda, aprire automaticamente i collegamenti in una nuova scheda, ecc. ). Mi piacerebbe mantenere attivo il tasto centrale del mouse, basta disabilitare il comportamento di incollaggio.

Questo accade anche quando faccio scorrere il testo con il mio touchpad (colpire accidentalmente due dita senza muoverlo, bam).

Quindi il problema non verrà corretto cambiando per un nuovo mouse (infatti credo che accada più spesso con il mio touchpad che con il mio mouse).

    
posta levesque 21.09.2010 - 17:26

21 risposta

15

Per una soluzione al problema, consulta questa guida che ho scritto: link

Oppure, più direttamente, ecco la patch per disabilitare la funzionalità di "tasto centrale del mouse" in GTK: link

    
risposta data Jelle Geerts 17.09.2011 - 23:27
33

Jared Robinson ha fornito una soluzione semplice che funziona sulla mia macchina:

Esegui il seguente comando:

xmodmap -e "pointer = 1 25 3 4 5 6 7 8 9"

Per mantenere questo comportamento, modifica ~ / .Xmodmap e aggiungi

pointer = 1 25 3 4 5 6 7 8 9
    
risposta data Jay Goldfarb 06.08.2011 - 02:32
23

Mi rendo conto che questa non è esattamente la risposta che desideri, ma puoi disattivarla in Firefox (ad esempio se non ti interessa la funzione altrove, ma vuoi comunque un clic intermedio in Firefox per aprire i collegamenti in nuove schede)

In about: config, set

middlemouse.contentLoadURL false
middlemouse.paste false

Non è quello che hai chiesto, ma dato che questa domanda è collegata da alcuni punti spero che qualcuno trovi utile questa risposta.

    
risposta data Ben 21.01.2012 - 10:11
18

Questo al momento non è possibile - anche se, come hai detto, ci sono modi per disabilitare il pulsante MOUSE 3 - o rimapparlo - nessuno di quelli arriva alla fonte del problema. La selezione primaria X11.

Sebbene questa non sia una soluzione, si spera che questa spiegazione chiarisca PERCHE '. In Ubuntu ci sono due appunti al lavoro. Uno, che tutti hanno familiarità con, gli appunti di freedesktop.org (cattura il comando Ctrl + C ) Il secondo è un gestore di appunti che è in gioco da prima che esistesse anche Ubuntu - X11. X Server (X11) gestisce altri tre blocchi appunti: Selezione primaria , Selezione secondaria e Appunti . Quando selezioni il testo con il puntatore, questo viene copiato in un buffer nell'XServer, la Selezione primaria, e attende l'incollamento tramite il pulsante Mouse 3. Gli altri due sono stati progettati per essere utilizzati da altre applicazioni in un modo per condividere un blocco appunti comune tra le applicazioni. In questo caso, il gestore degli appunti di freedesktop.org in Ubuntu fa già questo per noi.

Attraverso la portata della mia ricerca non riesco a trovare un modo per disabilitare il gestore di selezione X11. Non ci sono flag di compilazione, applicazioni o valori di configurazione che possono disabilitarlo. Ci sono vari modi per aggirare questo per applicazione (la maggior parte di queste applicazioni sono quelle a linea di comando) - ma nulla su scala globale.

Mi rendo conto che questa non è una soluzione ideale - ma sembra essere la verità sulla questione. L'unica soluzione rilevante che ho potuto raccogliere è in realtà un hack, creare uno script che esegua un ciclo while infinito che sostituisca semplicemente la selezione primaria con un valore nullo.

Installa prima xsel (Strumento per la manipolazione della selezione X) sudo apt-get install xsel

Il codice è il seguente:

while(true)
do
    echo -n | xsel -n -i
    sleep 0.5
done

Se lo inserisci in uno script e lo aggiungi agli script di avvio, questo non dovrebbe essere un problema.

    
risposta data Marco Ceppi 23.09.2010 - 20:56
15

Io uso gnome-tweak-tool per disabilitare il tasto centrale incolla in Ubuntu 16.04.

sudo apt install gnome-tweak-tool

Cerca "tweak tool" nelle app installate. Eseguilo.

Oppure digita gnome-tweak-tool in un terminale.

Vai a "Tastiera e mouse" - & gt; "Incolla clic centrale" Spegni.

Ecco fatto. Testato su Ubuntu 16.04

    
risposta data Sunny127 15.01.2017 - 13:03
14

In qualche modo, sono finito senza file xmodmap sulla mia installazione di Ubuntu, quindi ho dovuto trovare un approccio diverso a questo problema.

Dai un'occhiata al comando xinput .

xinput list | grep -i mouse

che elenca le informazioni sul tuo mouse. Mostra che il mio mouse è "Dell Optical USB Optical Mouse" e che ho anche "Emulazione del pulsante del mouse Macintosh". Armato di tali informazioni, posso

xinput get-button-map "Dell Premium USB Optical Mouse"

che mi dà un elenco che assomiglia a

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Ecco la conoscenza utile e richiesta. Il mio mouse ha, teoricamente, 18 pulsanti. L'azione predefinita di ogni pulsante ha lo stesso nome del numero del pulsante. In altre parole, il pulsante 1 esegue l'azione 1, il pulsante 4 esegue l'azione 4, ecc. L'azione 0 significa "off".

La posizione nell'elenco mostra la funzione assegnata a quel pulsante. Quindi, se la mia mappa dei pulsanti leggesse

1 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

ciò significherebbe che il pulsante 1 (posizione 1) esegue l'azione 1 (pulsante sinistro normale), il pulsante 2 (posizione 2) fa l'azione 3 (pulsante centrale) e il pulsante 3 (posizione 3) esegue l'azione 2 (pulsante destro).

Per fare un mouse mancino tutto ciò che sarebbe necessario sarebbe una mappa di pulsanti che inizi

3 2 1 4 5 .....

Oppure, nel tuo caso, sembra che tu voglia che il pulsante centrale faccia la stessa cosa del pulsante 1 (pulsante sinistro), quindi la tua mappa deve iniziare

1 1 3 ....

Mi piacerebbe ripristinare i miei mappature dei pulsanti del mouse in questo modo:

xinput set-button-map "Dell Premium USB Optical Mouse" 1 1 3 5 6 6 7 8 9 10 11 12 13 14 15 16 17 18

Nel tuo caso, potresti avere un numero diverso di pulsanti mappati e avere una mappa dei pulsanti speciale già definita. Anche il tuo mouse ha un nome diverso. Innanzitutto, prendi il "nome" del tuo mouse. Quindi, utilizza l'operazione get-button-map per trovare la mappa dei pulsanti di base. infine, utilizza l'opzione set-button-map , modificando il pulsante 2 per eseguire l'azione 1.

Questo non è un cambiamento permanente. Ho aggiunto il codice necessario al mio .bashrc in modo che venga eseguito ogni volta che accedo o apro un terminale.

Spero che questo aiuti.

    
risposta data Wes Miller 12.01.2012 - 13:58
4

Suggerisco di utilizzare uno di questi, che funziona in gran parte bene per me:

usando xbindkeys: quando si preme il tasto centrale, cancellare gli appunti principali. Almeno sul mio sistema viene cancellato, prima che si verifichi l'incollatura. Dettagli: crea xbindkeys-config:

xbindkeys --defaults > $HOME/.xbindkeysrc

Incolla il seguente nuovo tasto di scelta rapida:

"xclip -i /dev/null"    
    b:2''

Ricarica xbindkeys (ad esempio killall xbindkeys; xbindkeys). Fatto.

usando xdotool: Cancellare gli appunti sulla modifica del focus della finestra (dovrebbe funzionare con la maggior parte dei window manager). Dettagli: Esegui il seguente comando:

xdotool search --onlyvisible . behave %@ focus exec xclip -i /dev/null

Nota che con questo comando puoi ancora usare gli appunti principali all'interno della stessa finestra, o premendo middlemouse su un'altra finestra PRIMA di metterlo a fuoco (se non hai "focus segue mouse", o qualcosa, attivato).

    
risposta data spawn 22.02.2016 - 12:10
3

Il modo migliore che ho trovato finora è utilizzare EasyStroke, che può intercettare globalmente il clic sul pulsante centrale e consentire di comportarsi come pulsante centrale solo in alcune app.

È possibile aggiungere un "gruppo" in EasyStroke per applicare questa intercettazione in più applicazioni contemporaneamente. Ho impostato per disabilitare il clic centrale in alcuni dei miei editor di testo, solo IDE e MATLAB e funziona come previsto.

Riferimento: link

Completare EasyStroke How-To: link

    
risposta data dbdq 03.02.2013 - 13:13
2

Questo comportamento del pulsante centrale del mouse è una funzionalità del server X (e di gpm sulla console di testo) e, per quanto ne so, X.org non può essere configurato per disabilitarlo. Tutto ciò che puoi fare è cambia la mappatura dei pulsanti del mouse fisico come altri già suggeriti.

È probabile che tu possa configurare il touchpad per evitare clic intermedi indesiderati, vedere le impostazioni di gpointing-device (non installate di default) o la manpage synaptics se preferisci usare l'editor per la configurazione.

    
risposta data Florian Diesch 23.09.2010 - 20:52
2

il link in basso ha risolto il problema per me.

link

la pagina a cui fa riferimento il link precedente ha una sezione su come disabilitare l'incolla del mouse centrale su scrollwheel, eseguendo alcuni comandi l'utente può recuperare la mappatura dei pulsanti del mouse e può anche cambiare la mappatura. come spiegato nella pagina ho disattivato il pulsante centrale eseguendo il comando:

$ xinput set-button-map 4 1 0 3
    
risposta data Ahmad Bawaneh 05.01.2014 - 15:38
1

Ho avuto lo stesso problema qualche mese fa e l'ho risolto cambiando il mouse! Ma, come te, ero frustrato dal fatto che un semplice problema di mappatura dei pulsanti non potesse essere risolto elegantemente da una correzione software. Fortunatamente, ho avuto il problema sul mio computer di lavoro, e il mio datore di lavoro possiede una varietà di controller mouse di riserva. Era una soluzione senza costi!

Penso che un'implementazione corretta dell'hardware del mouse non debba inviare clic intermedi casuali durante lo scorrimento. Recentemente ho trovato questo comportamento fastidioso anche durante l'utilizzo di Windows!

Ora che ho risolto il bug dell'hardware con la soluzione hardware corretta (cambia il mouse) ho persino iniziato una dipendenza da "incollare sul middle-click" comportamento !!

Buon linuxing!

Sincerly,

    
risposta data Jonathan 16.08.2012 - 20:44
1

SW: Ubuntu 14.04, con Gnome ripiegato. HW: ho un laptop e quindi il pulsante centrale è in realtà il mouse su / nel laptop. Soluzione: Vai al centro di Ubuntu SW e scarica Unity Tweak Tool. Avvia Tweak Tool. Sotto le impostazioni del mouse ha l'interruttore per attivare / disattivare l'inserto clic centrale. Buona giornata.

    
risposta data user2712329 12.09.2014 - 01:32
1

Ho provato il trucco di reindirizzamento xinput, cambiando il "pulsante" centrale del mouse (in realtà una ruota) in modo che agisca esattamente come il tasto sinistro del mouse. Funziona ancora come una ruota, e (apparentemente) ha smesso di incollare le cose in posti casuali nel mezzo del mio codice sorgente mentre scorrevo.

Nel mio caso il comando era

xinput set-button-map "PixArt USB Optical Mouse" 1 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16

ma YMMV con il modello del mouse.

    
risposta data Stephen Bloch 03.12.2014 - 21:13
1

Potrei avere una risposta parziale per te, se stai usando una X lenovo ... con touchpoint / touchpad. Esiste un bug "noto" con i pulsanti del mouse synaptics. Se provi un mouse USB e non hanno alcun problema, ma con il mouse touchpad / touchpoint (incorporato nella tastiera) si hanno risposte casuali che possono eliminare strisce di testo durante la digitazione, quindi questo potrebbe essere il bug di cui sto parlando.

link

Se questo si adatta alla tua situazione, quindi aggiungi il tuo nome alla lista di persone che hanno identificato questo bug, in quel bug report. Forse se ci sono molti più di noi che lo segnalano, verrebbe risolto.

    
risposta data Jont Allen 15.07.2016 - 01:19
0

È più di una funzionalità di gnome, penso che funzioni quasi ovunque, funziona anche nella console e penso che funzioni anche nel mio "Linux from Scratch".

Quindi è davvero una caratteristica di base forse anche da qualche parte nel kernel.

BTW: È davvero utile, e non è la pasta normale come Ctrl + V, tutto ciò che è segnato con il cursore va in una seconda memoria e con Middleclick può incollare, ciò che hai segnato per ultimo.

    
risposta data phiphi 23.09.2010 - 20:08
0

Usando ciò che ho imparato nei post precedenti, questo bash one-liner funziona perfettamente per me ...

mouse_id=$(xinput list | grep 'Mouse' | awk '{print }' | sed 's/[^0-9]//g') && xinput set-button-map "$mouse_id" 1 0 3
    
risposta data Scott 04.12.2013 - 17:42
0

Potresti voler provare a emulare un mouse a due pulsanti. Con un mouse a due pulsanti si incolla facendo clic su entrambi i pulsanti del mouse contemporaneamente (piuttosto sulla rotella di scorrimento).

Installa gpointing-settings-device:

sudo aptitude install gpointing-device-settings

link

In alternativa, se non desideri installare gpointing-device-settings e non sei infastidito dalle opzioni della riga di comando, vedi link In questa pagina wiki ci sono diverse opzioni da riga di comando / configurazione, scegli quella che preferisci.

    
risposta data Panther 12.01.2012 - 19:47
-1

Questa è una buona domanda, per la quale non ho una risposta (ancora). Una soluzione rapida e sporca consiste nel rimapparlo NON su 0, ma su 1. In questo modo, gira a metà - "clic" per fare clic con il tasto sinistro del mouse e non influenza il tuo scroller ... È il massimo che riesco a pensare.

Nota: questa informazione proviene da Forum di Ubuntu , non dalla mia mente! :)

    
risposta data Tiede 23.09.2010 - 19:49
-1

Se utilizzi Chrome / Chromium, puoi installare un'estensione che ti consentirà di scorrere nella maggior parte delle pagine web.

Collegamento estensione AutoScroll:

link

    
risposta data Robert Coleman 28.11.2011 - 07:43
-1

Potresti risolvere questo problema in modo semplice e veloce, come ho fatto svitando il mouse, prendendo un paio di pinze ad ago e tirando fuori fisicamente il pulsante del mouse centrale. Garantito per risolvere il problema - supponendo che non lo usi mai comunque - come me.

    
risposta data Kevin McCracken 17.03.2016 - 15:44
-3

hai controllato gpm? Maggiori informazioni sul link . Disponibile tramite sudo aptitude install gpm su lucido. Tuttavia, non vedo il programma disable-paste nel pacchetto ubuntu, l'opzione -A potrebbe valerne la pena.

    
risposta data koushik 21.09.2010 - 18:27

Leggi altre domande sui tag