
tmux notes
(25 October 2014)
tmux is a terminal multiplexer, much like screen. I use it at work to keep my terminals organized. Typically I have one session running for each project, e.g. one for Chromium and one for LLVM. Within each session I often have one window for editing, one for compiling and running, and one for source control.
Key concepts: there can be multiple sessions running at the same time. Each session has a number of separate windows (usually numbered 0, 1, 2, ...), which can be split into panes.
Commands are prefixed with CTRL-b by default (as opposed to screen which uses CTRL-a).
d | Detach |
$ | Rename current session |
s | List sessions |
L | Go to last session |
, | Rename the window |
n | Next window |
w | Previous window |
l | Last selected window |
w | List windows |
? | Show commands |
" | Split pane horizontally |
% | Split pane vertically |
o | Move to other pane |
; | Move to previous pane |
CTRL-o | Rotate panes |
! | Close the other panes |
:new | Create new session |
In ~/.tmux.conf:
# Save more scrollback (default is 2000 lines). set-option -g history-limit 100000
To attach to a specific session when starting: tmux attach -t session_name.