bir tmux oturumu ile birden çok terminal x-penceresi kullanma


19

Genellikle dikey olarak hizalanmamış 2 monitörle çalışırım (sol monitörünüzün altında bir tezgah üstü güç kaynağım var), ancak ekranlarımda kolayca geçiş yapabileceğim 4 terminal penceresi yan yana istiyorum:

resim açıklamasını buraya girin

Bu düzenleme beni çok üzüyor çünkü sadece klavyemi kullanarak tüm 4'ü aklı başında bir şekilde kolayca değiştiremiyorum (alt-tab benim için kesmiyor çünkü 4 pencerenin "siparişini" tutmuyor - eğer Tekrar alt-sekmeye basıyorum, en son kullanılan pencerelerim arasında sekiyor)

Her biri içinde 2 tmux bölmesi olan 2 x-pencereye sahip olabilmem için ikinci bir x-window oluşturmak için tmux almanın bir yolu var mı?


Yani probleminiz, pencerelerinizin iki monitör arasında döşenmesi ve en son iki pencere arasında dört + yerine alt + tab döngüleri olması mı? Bu bir iş gibi görünüyor tiling window manager. Hiç denedin mi? Bunlardan bol miktarda vardır. awesome, i3, wmii, xmonad, Ve dwmiyi arasındadır. Amaçlarınız için olsa da, önermek isterim i3(1), çünkü basittir (yapılandırma dosyasını okumak size hem kontrolleri hem de yapılandırma temellerini öğretir) ve çoklu monitör (xinerama / xrandr) kurulumlarına uyarlanmıştır.
Braden Best

İ3'ü denedim ve kesinlikle sevdim, ancak ubuntu kurulumumda saatte bir kez çökmelere neden oldu :( Ayrıca bazı nedenlerden dolayı monitörlerimle de güzel oynamadı.
johnny_boy

Gerçekten mi? Peki ya diğerleri? wmii ve xmonad benim öneriler sırasında bir sonraki olurdu, çünkü onlar da "fantezi" fayans wms, ardından dwm (benim kişisel favori). İ3 kadar geniş özellikli olmasa da, IMO'nun oldukça zarif çoklu monitörlerini kullanıyorlar.
Braden Best

Yanıtlar:


15

tmux "oturum grupları" oluşturmanıza olanak tanır - hepsi aynı pencere kümesine eklenebilecek birden çok oturum.

( Https://gist.github.com/chakrit/5004006 sayesinde) :)

Sol terminalde yeni bir oturum + pencere grubu oluşturun.

tmux new-session -s left

Her zamanki gibi bölmelere ayırın.

:split-window -v

Diğer (sağ) terminalde, mevcut pencere grubuna bağlanın. Bağlanmak için eski adı ve ayırt etmek için kendi oturum adını vermeniz gerekir.

tmux new-session -t left -s right

Bu oturumda başka bir pencere oluşturun ve bölün

:new-window
:split-window -h

Artık tmuxher (terminal) penceresindeki tüm ( ) pencereleri görebilirsiniz , ancak her birindeki görünüm diğerinden bağımsızdır.

Birinden diğerine geçmek için (pencere yöneticinizin kendi kısayollarını kullanmadan), örn. xdotool .

xdotool search --name 'left:0:' windowactivate
xdotool search --name 'right:1:' windowactivate

Bunlar , terminale aranabilir bir isim vermek için tmux's set-titlesseçeneğini etkinleştirdiğinizi varsayar ; ve her birinde yalnızca bir tmuxpencere (bölmeler kümesi) kullandığınızı.


Bunu tamamlamak için, geçerli bölmeyi güvenilir bir şekilde sorgulayan ve uygun olduğunda "pencereyi etkinleştir" komutunu kullanarak "sonraki" olanına ilerleyen bir komut dosyasına ihtiyacım var. Ama bunu nasıl yapacağımı henüz anlamadım tmux.
JigglyNaga

Agresif yeniden boyutlandırmayı açmanız gerekebileceğini unutmayın (setw -g aggressive-resize açık), aksi takdirde pencereler tam ekrana
sığmaz

0

Orta bölücü iki monitörün sınırında olacak şekilde bir terminali yeniden boyutlandırmak için (kenarları sürükleyerek) düşük teknolojili yöntemi yapamaz mısınız?


1
Her iki monitör de farklı yükseklikteyse veya OS X kullanıyorsanız bu işe yaramaz.
James

0

tmuxHer terminalde ayrı bir oturum başlatmak ve ardından her oturumun tek tmuxpenceresini dikey olarak iki bölmeye bölmek isteyeceksiniz .

Yani, her terminalde:

$ tmux new-session \; split-window -h

Veya daha kısa, her terminalde:

$ tmux new \; splitw -h

İki oturuma ihtiyacınız vardır, çünkü bir oturumda iki terminal her zaman senkronize edilir ve aynı tmuxpencereyi gösterir.

Ardından, iki terminal arasında geçiş yapmak için masaüstünüzün kısayollarını kullanın.

Şahsen, tek bir monitörle, bir tmuxseansla ve birbiri ile tmux"arkada" iki (ya da birçok) bölünmüş pencereyle giderdim ve aralarında takas olurdum Ctrlb- nama bu bir zevk meselesi.

$ tmux new \; splitw -h \; neww \; splitw -h
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.