Skip to main content

TPM and Popular Plugins

The Tmux Plugin Manager (TPM) makes it easy to install community plugins for session restoration, enhanced copy-paste, fuzzy search, and theming.

Core Idea

TPM is to tmux what npm is to Node.js — it manages plugin installation, updates, and removal from your ~/.tmux.conf.

Installing TPM

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

Add the following to the bottom of your ~/.tmux.conf:

~/.tmux.conf
# Initialize TPM (keep this line at the very bottom)
run '~/.tmux/plugins/tpm/tpm'

Reload config: tmux source-file ~/.tmux.conf

TPM Key Bindings

ShortcutAction
Ctrl+b IInstall plugins listed in config
Ctrl+b UUpdate all installed plugins
Ctrl+b Alt+uRemove plugins not in config

Essential Plugins

1. tmux-sensible — Sane Defaults

Applies a set of universally agreed-upon tmux settings:

~/.tmux.conf
set -g @plugin 'tmux-plugins/tmux-sensible'

Includes: better prefix timeout, enable UTF-8, increase scrollback, etc.

2. tmux-resurrect — Session Persistence

Saves and restores sessions across reboots:

~/.tmux.conf
set -g @plugin 'tmux-plugins/tmux-resurrect'
ActionShortcut
Save sessionCtrl+b Ctrl+s
Restore sessionCtrl+b Ctrl+r
tip

Run a save before rebooting. After reboot, open any tmux session and press Ctrl+b Ctrl+r to restore everything.

3. tmux-continuum — Auto Save

Automatically saves sessions every 15 minutes and optionally restores at startup:

~/.tmux.conf
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on' # auto-restore on tmux start
set -g @continuum-save-interval '15' # save every 15 minutes
note

Requires tmux-resurrect to function.

4. tmux-yank — Enhanced Copy

Copies to system clipboard from copy mode:

~/.tmux.conf
set -g @plugin 'tmux-plugins/tmux-yank'

After installing, y in copy mode copies to system clipboard automatically.

5. tmux-open — Open Files/URLs in Pane

Allows opening files and URLs from copy mode with o:

~/.tmux.conf
set -g @plugin 'tmux-plugins/tmux-open'

In copy mode, highlight a URL or filename and press o to open it.

Interactive fuzzy finder for sessions, windows, and panes:

~/.tmux.conf
set -g @plugin 'sainnhe/tmux-fzf'

Press Ctrl+b F (uppercase) to open the fuzzy finder.

7. Catppuccin Theme

A modern, beautiful theme with multiple flavors:

~/.tmux.conf
set -g @plugin 'catppuccin/tmux'
set -g @catppuccin_flavor 'mocha' # or: latte, frappe, macchiato

Complete Plugin Starter Config

~/.tmux.conf
# === Plugins (via TPM) ===
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'catppuccin/tmux'

# Plugin Settings
set -g @continuum-restore 'on'
set -g @continuum-save-interval '15'
set -g @catppuccin_flavor 'mocha'

# Initialize TPM (MUST be last line)
run '~/.tmux/plugins/tpm/tpm'

After editing, in tmux: press Ctrl+b I to install all plugins.

Common Pitfalls

PitfallSymptomFix
TPM line not at end of filePlugins not loadedrun line MUST be the last line in config
Not pressing Ctrl+b I after adding pluginPlugin not installedPress I (uppercase) to install
Plugin conflicts with manual configKeys stop workingCheck for duplicate bindings

What's Next