Are you a command line user? Do you long-running jobs via the terminal you don't want to close even if you accidentally lose your connection? If so, tmux is for you!
Enter a tmux command prompt
Start a new session
Attach to default session
List existing sessions
Rename current session
Detach current client
Detach other clients
Create a new window
Select a window interactively
Rename the current window
Kill the current window
In the status bar (bottom) are the number/name of windows.
Panes (vertical/horizontal splits)
Split current pane vertically
Split current pane horizontally
Navigate around panes
^b <arrow keys>
Resize the current pane
^b ^<arrow keys>
Swap pane location
Send the current pane to a new window
Toggle zoom current pane
Arrange panes in a tiled layout
Arrange to a next preset layout
Kill current pane
There are many other key-bindings for resizing panes that are worth learning, but out of scope for a basic cheatsheet.
Tmux command prompt
Toggle broadcast to all panes
To enter a tmux command prompt press ^b :
Config file for customization
# Shortcut to 'synchronize panes' with '^b ='
bind = set -g synchronize-panes
# Enable mouse support
set -g mouse on
# Set panel border 'red' to active window
#set -g pane-active-border-style bg=red
# Set background 'red' to active window
#set -g window-active-style bg=red
Put this config in ~/.tmux.conf file.