Come posso far funzionare le scorciatoie personalizzate sul rilascio delle chiavi piuttosto che sulla pressione dei tasti? [duplicare]

4

Sto usando Ubuntu 14.04. con Unity DE.

Come posso far funzionare le scorciatoie da tastiera sul tasto rilascio , non sul tasto premere ?

Ad esempio, se voglio usare il tasto Windows per scorciatoie multiple, funziona solo per quello attivato dalla sola chiave di vincita, perché il collegamento funziona prima che venga registrato il tasto successivo.

    
posta Ravan 06.01.2016 - 16:09

1 risposta

1

Non esattamente una risposta, ma forse una soluzione.

AFAIK, le chiavi che hai menzionato sono tasti modificatori che hanno lo scopo di modificare l'effetto di un altro tasto (non modificatore) premuto simultaneamente.

Non sono molto esperto nell'hardware, ma credo che alcuni dei processori di modifica possano effettivamente verificarsi nell'hardware della tastiera o nei driver, quindi non sono facilmente accessibili dall'applicazione livello. So che alcune tastiere che ho usato molti anni fa hanno messo caratteri ASCII a 8 bit e in realtà hanno modificato alcuni di quei bit quando hai premuto Ctrl o shift.

Detto questo, l'esecuzione di xev mostra che il software di "livello superiore" può accedere ai codici di scansione effettivi che escono dal "dispositivo" della tastiera, quindi mi aspetto che sia possibile scrivere il proprio driver di tastiera sostitutivo che farà tutto ciò che sei abbastanza esperto per codificare, ma farlo potrebbe richiedere molta conoscenza del kernel e degli altri interni di Linux.

Invece di crescere i peli sugli occhi, imparando tutte queste cose, per prima cosa prendi in considerazione alcune alternative che potrebbero soddisfare alcune o tutte le tue esigenze:

Il comando xmodmap ti consente di modificare il layout della tastiera modificando le singole chiavi. Ciò avviene prima che qualsiasi applicazione visualizzi le sequenze di tasti, quindi dovrebbe funzionare in modo trasparente.

AutoKey è un processore macro per tastiera che consente di definire frasi di testo e tasti di scelta rapida che attivano le sostituzioni di frasi o eseguono macro intere scritte in Python.

È progettato per l'uso in ambienti GUI supportati da GTK o QT, ma funzionerà anche in una finestra di terminale.

Ogni macro o frase può anche avere un filtro di finestra associato in modo che funzioni solo in finestre che passano il filtro (e non fa cose inappropriate se invocato in una finestra in cui non è stato progettato per funzionare.)

Una volta richiamata una macro, esegui essenzialmente un programma Python che può fare praticamente qualsiasi cosa di cui Python è capace - limitato principalmente dalle tue capacità di programmazione - perché ci sono moduli Python per quasi tutto ciò che potresti voler realizzare.

Poiché AutoKey è progettato per emettere sequenze di tasti che sembrano esattamente come se le hai digitate, dovrebbe funzionare con quasi tutti i programmi. Il programma penserà semplicemente che hai digitato qualsiasi sequenza di tasti che AutoKey emetta e non saprai nemmeno che non li hai digitati. (Ci sono alcuni punti fini a questo, ma per lo più funziona.)

    
risposta data Joe 14.01.2016 - 05:45

Leggi altre domande sui tag