How to dev

How to dev

How to run nested tmux session

tmux is a program that provides a convenient way for getting multiple terminal sessions into one window. If you are using it a lot, quickly you can find yourself asking for more - multilevel tmux. Example of nested tmux session:

asciicast

There are 2 settings necessary for this setup to work as expected. Inside ~/.tmux.conf you need:

bind-key -n c-g send-prefix
bind-key -n c-t send-keys c-g

for prefix key access to nested windows. The default prefix is ctrl+b, so here I'm setting ctrl+g to work as prefix on the second level of tmux, and ctrl+t to work on the third level.

Thanks to configuration like this, if you use ctrl+b & c to create a new window on the first level of tmux, you will use:

  • ctrl+g & c - to create window on the second level
  • ctrl+g & c - to create window on the first

The other setting is inside your .zshrc or .profile:

unset TMUX

If we skip this, we will end up seeing:

$ tmux new -s test
sessions should be nested with care, unset $TMUX to force

Summary

In this short guide, we have seen how to set up our tmux to support nesting with minimal configuration & nice mapping for prefix key. Let me know in the comments if you are interested.

Interested in reading more such articles from Marcin Wosinek?

Support the author by donating an amount of your choice.

 
Share this
Proudly part of