tmux, Terminal MUltipleXer
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.
Kapitalna aplikacja. Screen już dawno poszedł w odstawkę. Fantastyczne możliwości.
Dobre, dobre :) Tylko teraz trochę trzeba by się przyzwyczaić do czegoś nowego :D
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.
Ano widzę, już sobie też podmieniłem binding C-b na C-a. Ino zamiast | i - wolę jakoś h i v :D
„Tmux ma nad screenem sporo przewagi. [...] wydany został na wolnej licencji (BSD).”
Ta... bo przecież screen jest na zamkniętej licencji.
Zgadza się. Dlatego napisałem że tmux jest na wolnej licencji.
Czyżbym musiał wyraźniej oznaczać sarkazm w moich wypowiedziach?
A czy ja muszę dobitnie napisać co sądzę o "wolności" licencji gnu? "Wolności" obwarowanej paroma stronami prawniczego bełkotu?
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 ;]
Z mojej strony w takim razie EOT, bo czas tracic wolę chociażby oglądając filmy.
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
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
@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?