Scopo:
Vorrei assegnare Alt al tasto CapsLock e Meta al tasto Alt. In tal modo, Alt-key non verrebbe più riconosciuto come Alt e CapsLock-key non verrebbe più riconosciuto come CapsLock.
openSUSE 11.4
In precedenza:
openSUSE 11.1 - dato che sono l'unico utente del mio computer, ho semplicemente "modificato" il file / usr / share / X11 / xkb / keycodes / xfree86 e ha funzionato senza problemi. Le chiavi erano collegate ai loro simboli al livello più basso.
I problemi:
xkb
Ho creato una variante del layout polacco (pl_ext) che (per il test) è costituito da tali voci:
key <CAPS> { [ Alt_L ] }; modifier_map Mod1 { Alt_L, Alt_R };
Comunque questo semplicemente non fa nulla, il tasto CapsLock in xev viene riconosciuto (simbolo) come Alt_L, ma quando premo il tasto CapsLock si comporta come CapsLock (ad esempio, supponendo che tu abbia File nel menu, Alt + F dovrebbe aprire questo menu, non lo fa ).
Domanda: Come definire un file di layout per impostare CapsLock-key come Alt e Alt-key come Meta?
Modifica: metà del successo qui! Ora ho tali voci:
key <CAPS> { [ Alt_L ] }; modifier_map Mod1 { <CAPS> }; // this is a difference
e questo funziona come desiderato. Questo non:
key <LALT> { [ Meta_L ] } ; key <RALT> { [ Meta_R ] } ; modifier_map Mod5 { <LALT>,<RALT> };
I tasti Alt sono riconosciuti come Meta da xev, ma posso ancora aprire i menu con Alt + F, cambiare finestra e non dovrei. E d'altra parte non posso inserire alcun carattere nazionale, e dovrei.
xfree86
Ma ora questo non funziona, immagino che venga letta altra tabella di file invece di xfree86.
Domanda: Come scoprire quale file della tabella dei codici chiave viene utilizzato dal sistema (X / Gnome)?
Modifica: l'opzione migliore per me - modificare le tabelle dei codici chiave - è stata risolta dalla risposta di macias !
xmodmap
La metà del successo qui. Questa parte funziona come desiderato:
rimuovere Lock = Caps_Lock keysym Caps_Lock = Alt_L
Ora, ho veramente CapsLock-key che è mappato su Alt. Ma questo:
keysym Alt_L = Meta_L
... fa una cosa strana. xev mostra che il tasto Alt è mappato su Meta, ma quando premo Alt + F (questo dovrebbe essere mappato su Meta + F -> non fare nulla) si apre il menu File. Inoltre, quando premo Alt + Tab, ottengo il cambio di finestra (non dovrei - Alt è Meta ora).
Domanda: Come "eliminare" il vecchio comportamento per il tasto Alt?
Modifica: questa parte è risolta dalla risposta di Gilles .
Sommario:
Rispondere a qualsiasi domanda (si spera) risolverebbe il mio problema, tuttavia preferisco usare xkb interamente perché potrei quindi comprimere tutti i file per xkb e modificare il layout in un unico posto. Grazie in anticipo per qualsiasi aiuto!