Tmux ile terminal kaydırma çubuğunu kullanın


41

Klavyeyi kullanarak tmux içinde nasıl kaydırılacağını biliyorum, ancak terminal kaydırma çubuğunu GNU Ekranı ile kullanmanın bir yolu olduğunu gördüm . Bu tmux ile yapılabilir mi?


6
GNU Ekranı ile terminal kaydırma çubuğunu gerçekten kullanamazsınız. Kaydırma çubuğu aslında Screen'in geri kaydırma arabelleğine erişmeyecek, ancak terminalin anlamı, farklı Ekran oturumlarından gelen satırların karışması anlamına geliyor.
ak2

@ ak2 Üzüntü ... ama bilgi için teşekkürler!
Jeff

2
iTerm2'nin [ tmux ile entegrasyon]için bazı gelecek planları var( code.google.com/p/iterm2/wiki/TmuxIntegration ). Bu tür bir entegrasyonun, tmux geçmiş arabelleğinigörüntülemek için yerel bir kaydırma çubuğu kullanmayı içerdiği görülüyor.
Chris Johnsen

Yanıtlar:


42

Bu hem GNU ekranında hem de tmux'da mümkündür ve geçici çözüm benzerdir: çoğullayıcıları, terminalin "alternatif ekran" modu (pico, mutt, vb. Tarafından kullanılanlar gibi) olmadığını düşünerek kandırmak. Bu, oturum için termcap komutlarını ayarlayarak gerçekleştirilir.

GNU ekranı için bunu içine yazın .screenrc:

termcapinfo xterm*|xs|rxvt|terminal ti@:te@

ve tmux için şunu ekle .tmux.conf:

set -ga terminal-overrides ',xterm*:smcup@:rmcup@'

xterm*Komutun ' ' kısmı, terminal emülatörünüzün ne şekilde bildirildiği ile ayarlanmalıdır. Bazı xterm formları iyi bir tahmindir, ancak çoğu aklı başında * nix sistemlerde kendinize bakabilirsiniz:

echo $TERM

ve bu genellikle terminal programınızın tercihlerinde belirlenebilir (yani: Apple’lar için Terminal.app, Ayarlar-> Profil-> Gelişmiş (veya Ayarlar-> Gelişmiş-> Emosyon öncesi emülasyon) 'da "Terminali farklı olarak bildir".

Sonuç, taşma işleminin terminalin kaydırma geri tepme tamponunda kaybolmak yerine sona ermesidir. Tabii ki, bu statik bir tampon olduğundan, ekran veya tmux pencereleri arasında geçiş yaptığınızda işler karışır, ancak bu lskomutun veya benzerinin çıktısını görmek için hızlıca yukarı kaydırmak için kullanışlıdır .


2
ayrıca, başka bir alternatif olarak tanımlanan şekilde çalışan superuser.com/questions/253414/… 'i gördüm .
Doug J


1
@Nick - Farklı bir problem çözdüğünüze dikkat edin: tmux'a fare desteği ekleyin. Sizin için daha iyi bir çözüm olabilir, ancak yerel geri kaydırma tamponunu kullanmaktan farklıdır. Terminal emülatörünüz doğru bir şekilde tanımlandığı sürece, yukarıdaki OSX
Doug J

1
Bu bir tcsh yerleşikti gibi görünüyor. Bash üzerinde kullanabilirsinizecho $TERM
Doug J

1
bu "taşma" işe yarıyor ama tmux'dan çıktıktan sonra bazı unicode karakterler gösteriyor: stackoverflow.com/q/31790939/2668831
Louis Maddox 15: 15

5

Kaydırmayı etkinleştirmek için, etkinleştirebilirsiniz yerleşik fare modu sizin de ~/.tmux.confolduğu gibi takip:

set -g mode-mouse on
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.