C'è un modo per farlo in ~/.tmux.conf?Come faccio a legare il tasto HOME come prefisso tmux?
risposta
Se tutto il resto è configurato correttamente, dovrebbe essere semplice come mettere questo nel vostro .tmux.conf
:
set-option -g prefix Home
Nota: A meno che manualmente “fonte” il tuo .tmux.conf
, modifiche al file vorranno solo interesserà quando il server tmux viene riavviato. Chiudere in modo pulito tutti i riquadri, le finestre (chiudendo tutte le sessioni e lasciando uscire il server) oppure utilizzare tmux kill-server
, quindi avviare una nuova sessione.
questo funziona solo se il vostro emulatore di terminale è l'invio di una sequenza di escape che corrisponde al campo della voce del database terminfo per il valore TERM
in effetti khome
quando ci si connette alla sessione tmux (cioè il TERM
“al di fuori del” tmux).
generato sequenza di escape per la casa
È possibile verificare la sequenza di escape inviato dal proprio emulatore di terminale, digitando il tasto Home (e un ritorno a capo) in cat -v
(è possibile interrompere gatto con controllo - C una volta che ti mostra la sequenza). Le risposte comuni potrebbero essere ^[[1~
o ^[OH
.
atteso sequenza di escape per la casa
La variabile di ambiente TERM
racconta programmi terminfo basati (come tmux) quello delle sequenze di escape tuo emulatore di terminale (presumibilmente) capisce e genera. La sequenza di escape generata dal tasto Home è memorizzata nel campo khome
. È possibile utilizzare tput o infocmp per estrarre il valore del campo (entrambi utilizzano l'attuale TERM
a meno che non venga fornita una dichiarazione terminale di priorità).
tput khome | cat -v ; echo
infocmp -1 | grep -F khome
La fissazione di un generato/Mancata corrispondenza atteso
Se la sequenza di escape generato dal tuo emulatore di terminale non corrisponde alla voce di khome
per il vostro TERM
valore dichiarato, poi ci sono diverse cose che si può fare per provare per risolvere il problema:
- Riconfigurare l'emulatore di terminale.
Ciò può implicare l'utilizzo di un programma diverso, il prelievo di un'emulazione diversa o semplicemente la (ri) definizione della sequenza che invia quando si preme il tasto Home. - Scegli un nuovo valore
TERM
che corrisponde meglio a quello che l'emulatore di terminale invia e capisce. - Regola una voce del database terminfo in modo che corrisponda all'emulazione del terminale.
È possibile utilizzare infocmp per estrarre e voce terminfo esistente e tic per compilare la voce modificata. - indicare tmux per regolare le copie runtime delle voci del database terminfo.
tmux fornisce l'opzioneterminal-overrides
che può essere utilizzata per sovrascrivere singoli campi di terminfo per vari valoriTERM
.
Ad esempio, se il vostro emulatore di terminale non invia una sequenza per la casa, ma è possibile configurare uno, e la voce terminfo per il vostro TERM
non avere un campo khome
, allora si potrebbe dire al vostro emulatore di terminale a invia ESC [
1
~
e usa termname:khome=\033[1~
per il tuo valore terminal-overrides
(dove termname
è un modello che corrisponde in modo adeguato al tuo valore TERM).
E.g. in .tmux.conf:
set-option -g terminal-overrides "xterm-color:khome=\033[1~"
È possibile utilizzare tmux server-info
per ispezionare tmux s’copie di esecuzione delle voci terminfo.
Nota: Come sopra (con il cambio prefix
), il modo più semplice per far questo cambiamento diventerà effettivo è quello di riavviare il server di tmux.
- 1. tasto Esc Bind in tmux
- 2. Home/Fine tasti non funzionano in tmux
- 3. NotSerializableException quando si preme il tasto home
- 4. come emulare premendo il tasto home nell'emulatore Android
- 5. Disabilitare il tasto home su iPhone/iPad
- 6. Come andare all'inizio della riga in tmux dopo aver rimappato il prefisso in CTRL + A?
- 7. Android - Come faccio a impostare un prefisso nel codice
- 8. Disabilita il tasto home senza riavviare il dispositivo
- 9. Come faccio a scegliere come target IE9 e versioni successive con il prefisso autoprefixer grunt?
- 10. IOS 6, webapp safari a schermo intero, tasto home
- 11. Come legare il tipo di Iteratore :: Articolo?
- 12. Come faccio a riordinare tmux windows quando ne viene cancellato uno?
- 13. Come posso riattaccare al processo tmux
- 14. Come posso rilevare l'utente premendo il tasto HOME nella mia attività?
- 15. Disabilita il pulsante Home nell'app Home?
- 16. Come faccio a ottenere il terminale integrato IDE Jetbrains per riconoscere ALT/Opzione come il tasto Meta?
- 17. Con $ TERM = 'screen-256color' sotto tmux, i tasti HOME e END non funzionano. Perché?
- 18. Vuoi app aggiornata a 4.0 per uscire completamente quando si preme il tasto home
- 19. Come riordinare le sessioni TMUX?
- 20. Come faccio a chiamare il costruttore giusto?
- 21. Come faccio a rebase il primo commit?
- 22. C# Come faccio a scorrere il registro?
- 23. Come faccio a legare i dati del risultato di un metodo modello di visualizzazione a una proprietà TextBox?
- 24. Come gestire il tasto "Su"?
- 25. matplotlib aggancio agli eventi del tasto home/back/forward
- 26. Come passate boost :: legare oggetti a una funzione?
- 27. Portable.Licensing come legare una licenza a un PC
- 28. "prefisso" e "come" gettare
- 29. Tasto Home vai all'inizio della linea in Visual Studio?
- 30. Ubuntu Eclipse: il tasto Backspace ha iniziato a funzionare come il tasto Cancella
Grazie, ci sono un sacco di informazioni utili lì! – secondplanet
Puoi spiegarlo meglio? cat -v mostra che il mio tasto Fine è^[[F, e tput kend mi dà^[OF –
@RosePerrone: per i terminali stile xterm, '^ [[F' è la sequenza" modalità normale "per Fine, e'^[OF' è la sequenza "modalità applicazione" per End; il passaggio da una modalità all'altra avviene tramite sequenze di controllo (in genere i programmi interattivi oa schermo intero passano alla modalità applicazione mentre sono attivi). Tradizionalmente, la voce 'kend' documenta la sequenza" modalità applicazione ", che è ciò che vedi. Se una voce TERM ha 'smkx', puoi usare' tput smkx' per passare alla modalità "keyboard transmit" di ncurses, che di solito è un superset di "application mode". –