So scorrere in tmux usando la tastiera, ma ho notato che sembra che ci sia un modo per usare la barra di scorrimento del terminale con GNU Screen . Questo può essere fatto con tmux?
So scorrere in tmux usando la tastiera, ma ho notato che sembra che ci sia un modo per usare la barra di scorrimento del terminale con GNU Screen . Questo può essere fatto con tmux?
Risposte:
Questo è possibile sia nello schermo GNU che in tmux e la soluzione alternativa è simile: ingannare i multiplexer nel pensare che il terminale non abbia una modalità "schermo alternativo" (come quella usata da pico, mutt, ecc.). Ciò si ottiene impostando i comandi termcap per la sessione.
Per lo schermo GNU, inseriscilo nel tuo .screenrc
:
termcapinfo xterm*|xs|rxvt|terminal ti@:te@
e per tmux, aggiungi questo al tuo .tmux.conf
:
set -ga terminal-overrides ',xterm*:smcup@:rmcup@'
La parte ' xterm*
' del comando dovrebbe essere impostata su qualunque sia il tuo emulatore di terminale dichiarato. Qualche forma di xterm è una buona ipotesi, ma puoi controllare la tua sulla maggior parte dei sistemi sani * nix con:
echo $TERM
e questo di solito può essere impostato nelle preferenze del tuo programma terminale (es .: per Apple Terminal.app
, è in Impostazioni-> Profilo-> Avanzate (o Impostazioni-> Avanzate-> Emulazione pre-yosemite) "Dichiara terminale come".
Il risultato finale è che l'overflow finisce nel buffer di scrollback del terminale invece di scomparire. Naturalmente, poiché si tratta di un buffer statico, le cose diventeranno confuse quando si passa da schermo a tmux windows, ma è utile per scorrere rapidamente verso l'alto per vedere l'output di un ls
comando o simili.
echo $TERM
Per abilitare lo scorrimento, puoi abilitare la modalità mouse integrata nel tuo ~/.tmux.conf
come segue:
set -g mode-mouse on