Come posso assegnare un tasto centrale premere a un tasto specifico nel mio laptop?


8

Come posso collegare un pulsante centrale premere a un tasto specifico nel mio laptop? Posso fare il pulsante centrale se tocco nell'angolo in alto a destra del touchpad, ma vorrei associarlo a un tasto, come il tasto "Windows" o il tasto "Menu".

C'è un modo per farlo?

La risposta attuale non funziona per Ubuntu 11.10 con un classico desktop gnome-fail-safe. Avrei bisogno di qualcuno per capire come è possibile farlo per la versione aggiornata di Ubuntu.

Risposte:


10

Per rimappare il tasto menu è necessario eseguire le seguenti operazioni.

installare i prerequisiti

Installa pacchetto xkbset:

sudo apt-get install xkbset

definire il layout della tastiera

Successivamente è necessario definire quale layout di tastiera si sta utilizzando. Nel mio caso gb per un layout di tastiera britannico / unito o noi per gli Stati Uniti

setxkbmap -layout gb

Nota: se corri

setxkbmap -query

ti darà l'output come segue: se il modello e il layout sono la tua tastiera, stai usando il layout corretto

rules:      evdev
model:      pc105
layout:     gb

Successivamente, definiremo i prossimi tasti di mappatura del mouse:

xkbset m
xkbset exp =m

trova il Menucodice chiave

Mappa la Menuchiave. Per fare questo abbiamo bisogno del Menucodice-chiave. In una corsa terminale xev, sposta il mouse all'interno del quadrato e premi il Menutasto.

inserisci qui la descrizione dell'immagine

Risultato finale

Nel mio caso il mio Menucodice chiave è il valore 135 e questo sarà mappato al Pulsante del mouse 2

xmodmap -e "keycode 135 = Pointer_Button2"

Testato come segue:

  1. Copia del testo in un terminale: incolla l'azione avviata
  2. Passa il mouse sopra la barra del titolo - La finestra si sposta sullo sfondo

Mettendo tutto insieme:

Ok, una volta elaborati i codici chiave corretti, possiamo metterli insieme per iniziare dal login.

Per prima cosa crea un file nella cartella home chiamato remapkeys

gedit ~/remapkeys

ora copia e incolla quanto segue

#!/bin/sh
setxkbmap -layout gb
xkbset m
xkbset exp =m
xmodmap -e "keycode 135 = Pointer_Button2"

Salva. Assegna i diritti di esecuzione al file

chmod +x ~/remapkeys

Quindi da Dash cerca applicazioni di avvio o se usi Gnome Classic - Applicazioni - Altro - Applicazioni di avvio

Aggiungi una nuova voce Applicazioni di avvio

inserisci qui la descrizione dell'immagine

Il comando dovrebbe essere:

bash -c "sleep 5 && ~/remapkeys"

Il comando viene sospeso per 5 secondi per consentire al desktop di apparire prima di eseguire il nuovo script - se il desktop non viene visualizzato entro 5 secondi (forse stai usando un netbook lento?), Aumenta questo timeout a 10 o 15 secondi. Esci e accedi per testare.


Posso chiedere, dopo aver seguito questi passaggi, dovrebbe essere vincolante essere permanente o devo metterlo da qualche parte in modo che sia caricato ogni volta che riavvio?
719016,

certamente non permanente - aggiungerei le dichiarazioni a uno script ed eseguirò come parte delle applicazioni di avvio in modo che funzioni all'accesso. La risposta funziona per te - lo ha fatto nei miei test ...
Fossfreedom

funziona ma come dici tu non in modo permanente
719016,

... nel caso non lo avessi chiarito, ho aggiunto come avviarlo dall'accesso alla risposta.
Fossfreedom

È consentito il trascinamento della selezione?
Vitor Abella

5

Innanzitutto, installa xautomation:

sudo apt-get install xautomation

Puoi inviare un evento con il clic centrale usando xte:

xte 'mouseclick 2'

Puoi creare una scorciatoia personalizzata per quello sotto Preferenze -> Scorciatoie da tastiera (o 'Scorciatoie da tastiera' dalla ricerca Unity). Fai clic su "Aggiungi", inserisci un nome e il comando sopra e fai clic su "Applica". Scorri verso il basso e imposta una scorciatoia come faresti per qualsiasi altra azione.

Quando ho provato questo, non sono stato in grado di associare l'azione al solo tasto di Windows. Puoi provarlo nel modo seguente, ma sembra che ci sia un bug che impedisce che funzioni:

Apri un terminale ed esegui

gconf-editor

Premi Ctrl + f, seleziona la casella "Cerca anche nei valori chiave" e inserisci quanto segue nella casella di ricerca:

xte 'mouseclick 2'

Dovrebbe esserci un solo risultato nel riquadro inferiore. Se c'è di più, seleziona quello che contiene '/ desktop / gnome / keybindings / custom * / action' nel suo nome. Nel riquadro in alto a destra, inserisci "" (senza virgolette) accanto al campo "obbligatorio". Se ottieni lo stesso risultato che ho fatto, tutti gli aspetti della tua finestra cambieranno e il nuovo keybinding non farà nulla. Riportalo a quello che era (o rendilo vuoto) e apri Aspetto (Preferenze -> Aspetto o "Aspetto" nella ricerca di unità). Ciò dovrebbe risolvere il problema.


Grande! Non ho avuto bisogno di fare il bit gconf-editor, finora funziona, ricontrollerò dopo il riavvio. Grazie!
719016,

Questo non funziona più in Ubuntu 11.10 con un classico desktop gnome-fail-safe. Sono sicuro che ci deve essere un modo di fare lo stesso però.
719016,

1

Noterei, per altri (poiché l'ho trovato più volte mentre cercavo il mio mouse) che alcuni mouse Logitech hanno alcuni pulsanti (sul mio MX1100, erano di default i pulsanti "DPI +/-") che non inviano un segnale al ricevitore USB.

È possibile sovrascriverlo e fare in modo che il mouse riporti la pressione del pulsante sul driver del mouse, ma il processo non è nemmeno vicino all'utente (o addirittura facilmente replicabile, poiché sembra essere diverso per ogni mouse). Il pacchetto "lomoco" apparentemente funzionerà per alcuni utenti, ma non è stato aggiornato per i mouse più recenti da un po 'di tempo.

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.