Przejdź


tmux, Terminal MUltipleXer

10 Lut 2010 @ 18:09:59 groszek 14 komentarzy

Każdy pewnie zna program screen. Niestety większość się ogranicza do 'screen -r' i ctrl+a, d. Ot, żeby na swoim shellu odpalić w tle jakieś głupoty. Takim ludziom screen jest pewnie wszystkim co potrzebują i w sumie mogą nie czytać dalej :)

Nie każdy jednak wie, że screena można użyć do podzielenia okna terminala na kilka części - np. na dole klient irc, u góry dwie konsole. Przy starym komputerze (jak np. laptop którego ostatnio odziedziczyłem - 233mhz, 96mb ram) screen może być użyty jako tilling window manager, przy ograniczeniu do programów konsolowych. Jak dla mnie wystarczające jak na tego laptopa. Tu jednak pojawia się zgrzyt - jeśli chcemy zrobić detach i attach (np na innym komputerze via ssh) to nas niemile zaskoczy widok jaki zastaniemy - wszystkie okienka będące wcześniej ramkami jednego ekranu staną się pełnoprawnymi pełnoekranowymi okienkami. Można co prawda ten efekt wyeliminować brzydkim hackiem (screen wewnątrz screena, każdy z inną konfiguracją) ale po co? Jest... tmux!

Tmux ma nad screenem sporo przewagi. Przede wszystkim nie niszczy naszego dopracowanego układu okienek. Secundo, wydany został na wolnej licencji (BSD). Po trzecie, jego konfiguracja jest zwyczajnie wygodniejsza, bo ma predefiniowane takie klawisze jak Left, Right, które można łatwo mapować. Dalej, przełączanie między sesjami jest znacznie wygodniejsze, "list-sessions" wywołuje graficzną (w pewien sposób) listę z której wybieramy interesującą nas pozycję.

Mój laptop stał się pelnoprawnym członkiem mojej domowej sieci - ma ładny window manager, klienta torrent, irc, przeglądarkę www (links2), mc i aircrack (który jest głównym powodem wskrzeszenia umarlaka :)). Siedzi grzecznie na TTY który po wielu walkach zgodził się na używanie utf-8. Prawidłowego utf-8…

Nie przeciągając sprawy dłużej, polecam wszystkimi nogami i rękami. Programik jest mały, bardzo używalny i wygodny. Moja konfiguracja jest na wkleju, screeny są na stronie domowej.


Komentarze:

10 Lut 2010 @ 20:02:29 karton

Kapitalna aplikacja. Screen już dawno poszedł w odstawkę. Fantastyczne możliwości.

10 Lut 2010 @ 21:07:03 Caladan

Dobre, dobre :) Tylko teraz trochę trzeba by się przyzwyczaić do czegoś nowego :D

10 Lut 2010 @ 21:08:41 groszek

Mój konfig ustawia skrót ctrl+a jak w screenie, 'd' robi detach. Jedynie do 'tmux attach' zamiast 'screen -r' trzeba się przyzwyczaić ;). A, klawiszologia w moim cudeńku - c-a strzałki - zmieniają rozmiar ramki. c-a - -> ramka w poziomie, analogicznie z |. Tak najpotrzebniejsze.

10 Lut 2010 @ 21:09:32 Caladan

Ano widzę, już sobie też podmieniłem binding C-b na C-a. Ino zamiast | i - wolę jakoś h i v :D

10 Lut 2010 @ 21:16:29 mina86

„Tmux ma nad screenem sporo przewagi. [...] wydany został na wolnej licencji (BSD).”
Ta... bo przecież screen jest na zamkniętej licencji.

10 Lut 2010 @ 21:19:31 groszek

Zgadza się. Dlatego napisałem że tmux jest na wolnej licencji.

10 Lut 2010 @ 21:20:43 mina86

Czyżbym musiał wyraźniej oznaczać sarkazm w moich wypowiedziach?

10 Lut 2010 @ 21:21:45 groszek

A czy ja muszę dobitnie napisać co sądzę o "wolności" licencji gnu? "Wolności" obwarowanej paroma stronami prawniczego bełkotu?

10 Lut 2010 @ 21:27:20 Caladan

No proszę, jaka bitwa się zaczyna. Dajcie spokój, idźcie lepiej kogoś pokonwertować z systemów totalnie zamkniętych :] Tamtym mówcie o licencjach ;]

10 Lut 2010 @ 21:29:59 mina86

Z mojej strony w takim razie EOT, bo czas tracic wolę chociażby oglądając filmy.

11 Lut 2010 @ 01:10:01 vermaden

Tmux jest dostepny nie od wczotaj, ale jakos nie kreci mnie zeby sie na niego przesiasc, moze dlatego ze nie dziele terminala na kawalki.

Co do "graficznej" listy okienek, to w screen(1) wywoluje sie ja za pomoca [CTRL]+[A] [SHIFT]+['] (czyli w praktyce CTRL+A ").

Co do przelaczania okienek Next/Prev, to polecam skroty ALT+Q/ALT+W odpowiednio dla poprzednie/nastepne.

Tmux niestety tez nie jest idealny, nie mozemy sobie dokladnie ustawic paska statusu oraz wstawic tam wynikow skryptow/polecen, jak na przyklad stanu baterii czy aktualnego load, jak tutaj: http://jakilinux.org/reviews/terminal-do-pracy/xterm_example.png
http://superuser.com/questions/51988/what-is-the-best-gnu-screen-taskbar-youve-used-seen

11 Lut 2010 @ 04:09:52 karton

Może przejrzyj dokładniej man-a?
set -g status-right "#(uptime|awk '{print $11}') #(date)"

Przełączanie okienek
bind -n C-Left previous-window
bind -n C-Right next-window

11 Lut 2010 @ 07:19:34 vermaden

@karton

Nigdy mi sie nie chcialo az tak dokladnie sprawdzac, bo poprostu jestem zadowolny ze screen(1) ale dzieki, dobrze wiedziec. Kolorki tez mozna dowolnie zmieniac?

08 Sie 2011 @ 19:18:32 www.crazystuff.bb3host.com

You have a website?Submit your site to this website in Categories->web presentation....is DoFollow and Index...it will help you grow fast!

Pierdol licencje, kopiuj na zdrowie!