A lesser known trick of iTerm 2 is that it has some pretty swish tmux integration. For most of us, we know that terminal multiplexers like tmux and screen solve a lot of problems like:
- Restoring terminal sessions that have died due to:
- Network issues
- Putting your laptop to sleep in the middle of a long running command
- iTerm crashing, although rare, it happened to me once
- Sharing a terminal with another remote user
- Splitting the screen to see 2 things at once
One of the annoying things about terminal multiplexers is that scrolling to previous history isn’t as simple as a quick trackpad flick.
Behold, the magic:
# Start a new tmux session
$ tmux -CC
# Resume a previous tmux sessions
$ tmux -CC attach
The magic, is the -CC. iTerm will start a new tmux session and your terminal will now look like this:
** tmux mode started **
Command Menu
----------------------------
esc Detach cleanly.
X Force-quit tmux mode.
L Toggle logging.
C Run tmux command.
If this was a new session you’d have a new window pop up that is a tmux session. The window acts like you’d expect. Opening a new tab in fact opens a new tmux window. You can also split panes, resize windows and panes and many other things.
If you tmux -CC attach
, it opens up your previous window exactly as it was before.
It’s lovely, yummy and brilliant. Enjoy!