Differenza pulsante super sinistra / destra


10

Quando premo il Supertasto sinistro appare la shell gnome e quando premo il Supertasto destro non lo fa. Inoltre premendo a destra Super+ Tsi apre subito un terminale, ma quando si usa il super sinistro devo premere Tdue volte, quando premo il Tsolo una volta è simile a premere semplicemente Tsenza tenere premuto il tasto Supersinistro. Quest'ultimo punto si verifica anche con altre scorciatoie che ho definito (come Super+ L, Super+ E), ma non con Super+ Up/Down/Left/Right.

Quello che voglio è premere uno Superdei due tasti per ottenere la shell gnome e usare entrambi i Supertasti in combinazione con Tper aprire immediatamente un terminale (e simile con altre scorciatoie). Uso Ubuntu 12.04 LTS e la shell gnome 3.


In Settings Manager -> Keyboard, c'è un'opzione come exo-open --launch TerminalEmulator? In tal caso, cosa dice nella seconda colonna, collegamento?
DaimyoKirby,

1) Intendi la sezione Tastiera nelle impostazioni di sistema? Se è così non riesco a trovarlo lì. 2) Se intendi il gestore delle impostazioni di Compiz, non riesco a trovarlo neanche lì. Indipendentemente da ciò, ho provato il tuo comando nel terminale e dice che exo-open non è installato, quindi dubito fortemente che l'opzione sarà lì. Esiste tuttavia il terminale di avvio del collegamento personalizzato con il comando x-terminal-emulator. Questo è quello che uso, poiché il terminale di avvio predefinito non sembra funzionare.
Erik,

Risposte:


4

soluzione xmodmap

Penso che puoi farlo usando xmodmap , uno strumento per modificare le keymap. Poiché la mia tastiera non ha il Supertasto giusto, non posso confermare questa soluzione, quindi per favore lascia un commento se non funziona.
Tutti i passaggi vengono eseguiti in un terminale

Stampa la mappa del modificatore corrente
Esegui

xmodmap

Questo dovrebbe stampare l'attuale mappa dei modificatori che dovrebbe piacere a qualcosa del genere

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock      
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

La linea importante è la mod4linea, questa linea mostra quali codici chiave sono associati ai simboli chiave Super_L e Super_R.

Backup della mappa delle chiavi
Prima di modificare qualsiasi cosa, è consigliabile eseguire il backup della mappa delle chiavi corrente

xmodmap -pke > ~/.xmodmap.orig

Ora se qualcosa va storto puoi semplicemente digitare

xmodmap ~/.xmodmap.orig

per ripristinare la mappa delle chiavi originale. (Se hai commesso degli errori gravi e non riesci più a digitare correttamente, funziona anche un riavvio)

Controlla la mappa delle Super chiavi corrente per le chiavi
Supponendo che le Superchiavi abbiano codici chiave consecutivi (0x85 e 0x86 in questo caso), possiamo verificare la mappatura corrente eseguendo

xmodmap -pke | grep -wA1 $((0x85))

dove ovviamente dovresti cambiare 0x85 con il codice chiave che hai dalla tua mappa modificatore. Questo dovrebbe darti

keycode 133 = Super_L NoSymbol Super_L
keycode 134 = Super_R NoSymbol Super_R

(il $((0x85))converte il numero esadecimale in decimale)

Copia il comportamento da sinistra Super a destra Super
Come puoi vedere dal passaggio precedente, il Supertasto destro ha il codice chiave 134 ma vogliamo che abbia il comportamento del Supertasto sinistro che ha il codice chiave 133. Possiamo farlo rimappando la chiave usando

xmodmap -e "keycode 134 = Super_L NoSymbol Super_L"

Verifica se funziona
Se lo fai ora

xmodmap -pke | grep -wA1 $((0x85))

tu dovresti vedere

keycode 133 = Super_L NoSymbol Super_L
keycode 134 = Super_L NoSymbol Super_L

nel senso che entrambe le chiavi ora hanno lo stesso comportamento. Anche la mappa del modificatore dovrebbe essere cambiata sulla linea con mod4, possiamo verificarla eseguendo

xmodmap | grep 'mod4'

che dovrebbe dare

mod4        Super_L (0x85),  Super_L (0x86),  Super_L (0xce),  Hyper_L (0xcf)

E ovviamente anche le scorciatoie che hai citato dovrebbero funzionare!

Rendi la mappatura persistente
Se funziona, puoi assicurarti che queste impostazioni vengano applicate automaticamente all'avvio. Correre

echo 'keycode 134 = Super_L NoSymbol Super_L' >> ~/.xmodmaprc

per memorizzare la mappatura delle chiavi personalizzata nel file ~/.xmodmaprc. Correre

echo 'xmodmap ~/.xmodmaprc' >> ~/.xsessionrc

per assicurarsi che la mappa delle chiavi personalizzata venga eseguita al caricamento del gestore finestre.


1
Prima di tutto grazie per la tua risposta, ho fatto di tutto per rendere persistente la mappatura. L'output nel terminale era esattamente come menzionato, tuttavia i miei problemi rimangono gli stessi: il super a sinistra mostra la shell gnome e quella destra no. E simile con le scorciatoie, con il super sinistro, dovrai premere t due volte per aprire il terminale e con il super destro una volta è sufficiente.
Erik,

1
hmm, allora sono anche all'oscuro: immagino che queste scorciatoie siano gestite ad un livello più profondo.
Gerhard Burger

1
Ah, ho trovato una segnalazione di bug, apparentemente più persone hanno lo stesso problema :) bugzilla.gnome.org/show_bug.cgi?id=659899
Gerhard Burger
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.