Installation

brew install tmux

Tmux Plugin Manager Installation

git clone https://github.com/tmux-plugins/tpm

Tmux conf file

# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
 
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'github_username/plugin_name#branch'
# set -g @plugin 'git@github.com:user/plugin'
# set -g @plugin 'git@bitbucket.com:user/plugin'
 
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'

Tmux Overview

Tmux has three main objects

  1. Sessions
  2. Windows
  3. Panes

Sessions: The top most layer, you can have multiple sessions and each session is a collection of one or more windows

Windows: Windows can have multiple panes, you can think of tabs

Panes: These are splits in a single window

Windows

Create a window

To create a new window press

<prefix-key> c

Change between windows

To go into the previous window

<prefix-key> p

To go to the next window

<prefix-key> n

To go to the n^th window

The number is displayed at the bottom

<prefix-key> <number>

To kill/delete the window

<prefix-key> &

Panes

Split Panes

To split the Pane vertically

<prefix-key> %

To split the Pane Horizontally

<prefix-key> "

Switch between panes

Press the prefix key and then the arrow key in whichever direction you want to move

<prefix-key> <arrow-key>

You can also swap panes around by using { (left) or } (right) to move left or right

<prefix-key> {

Panes also have numbers which can be used to jump quickly

<prefix-key> q

Will reveal the numbers for each pane, then press the desired number to switch

Make the pane take full space

To make the pane use full space

<prefix-key> z

To make the pane move out to a separate window

<prefix-key> !

Close the Pane

<prefix-key> x

Sessions

A new session can be created using the tmux command whilst not attached to a tmux session. This will create the new session and attach to it

To create a new session with a name

tmux new -s my-session

While you are in the tmux active session, a new session can be created using:new command

List sessions

To list active sessions in tmux you can use

tmux ls

While you are in the tmux active session, you can use, and you can attach to it by pressing enter

<prefix-key> s

You can also use it to preview all the windows for each session, and you can attach to it by pressing enter

<prefix-key> w

Attach to a session

When you run tmux it will attach to the recent session

If you want to specify which session it has to attach, you can specify

tmux -t my-session

Install Plugin

To install plugin

<prefix-key> I