Good by GNU Screen, welcome tmux
Geschrieben am 20-12-2010 - ⧖ 2 minNachdem ich gut 14 Jahre lang den terminal multiplexor GNU Screen verwendet habe (mit einem kurzem Abstecher Richtung tscreen), habe ich mich jetzt für tmux entschieden. Zum einen weil er schon im Base von OpenBSD enthalten ist und zum anderen weil er etliche Features besitzt, die ich bei GNU Screen erst vermisst habe, seit ich tmux kenne. Auf die - für mich - wichtigsten Features gehe ich mal kurz ein
- Unterschiedliche Key-Layouts (vi/emacs)
- Konfigurationsoptionen kann man nicht nur
in der ~/.tmux.conf vorgeben, sondern auch direkt beim Start angeben:
tmux rename-window -t 1 foobar
würde z. B. den Titel von Window 1 auf foobar setzen. - Man hat mehrere Buffer für z. B. copy&paste zur Verfügung die man interaktiv auswählen kann
- Die Syntax
ist übersichtlicher. Also kein
caption always "%{gk}host: (%{yk}%H%{gk}) | %{= kc}%?%-Lw%?%{= kY}%n*%f %t%?(%u)%?%{= kc}%?%+Lw%?"
mehr, sondern einset -g status-left "#[fg=green]host: (#[default]#[fg=yellow]#H#[default]#[fg=green]) | "
- Die Statusbar ist per Default aktiviert, damit man nicht erst eine Konfigurationsdatei erstellen muss; ich habe schon öfters vergessen das GNU Screen schon läuft und ihn nochmal gestartet
- Horizontales und vertikales Splitten der Fenster ist problemlos machbar und man kann ge'split'tete Fenster auch herauslösen
- Man kann in den Fenstern suchen und muss nicht immer erst alle
durchklicken weil man in einem der 23 Zsh-Fenster nach z. B. "foobar" suchen muss (
C-b f foobar
reicht und man kommt entweder direkt zu dem Fenster oder - wenn mehrere Fenster mit dem String "foobar" gefunden werden - zu einer interaktiver Auswahl - Man kann auch F1, F2, Fn
- Keys an Programme binden a la:
bind -n F7 run-shell 'cmus-remote --pause >/dev/null 2>&1'
- Es gibt die Option monitor-activity, welche über Aktivitäten in einem Fenster benachrichtigt; selbstverständlich kann man die entweder komplett deaktivieren oder nur für bestimmte Fenster de-/aktivieren
- Das Zuweisen von Keybindings ist generell
sehr umfangreich:
bind / command-prompt "split-window 'exec man %%'"
,bind-key u capture-pane ; save-buffer /tmp/tmux-buffer ; run-shell "$TERMINAL -e 'cat /tmp/tmux-buffer | urlview'"
(von ArchWiki)
Es gibt sicher noch weit mehr Features die in dieser Auflistung fehlen, aber wenn ich hier auf alle eingehe, dann bin ich morgen noch mit Schreiben beschäftigt. GNU Screen - User sollten keine Probleme mit tmux haben, da beide nach dem gleichen Prinzip bedient werden. Tastenkombinationen! Bei Interesse werde ich mal ein Tutorial dazu schreiben.