Tmux Plugin Manager
Go to file
laggardkernel f9d3c542cd Remove hardcoding default branch as "master"
Default branch of repo could be "master", "main" or any names.
Stop hardcoding "master" as the default to clone and let "git"
decide it automatically.
2021-08-14 15:41:26 +08:00
bin Enable removing plugins via CLI executable 2015-08-03 00:33:38 +02:00
bindings Move all helpers to 'helpers/' dir 2015-08-03 17:56:45 +02:00
docs Explain XDG-compatible plugin path in docs 2020-08-31 11:32:07 +02:00
lib New tmux-test version 2015-08-04 17:03:12 +02:00
scripts Remove hardcoding default branch as "master" 2021-08-14 15:41:26 +08:00
tests Test for 'set-option' plugin definition 2015-10-08 01:24:08 +02:00
.gitattributes Force `LF` eol with .gitattributes 2015-09-20 01:55:42 +02:00
.gitignore Switch to using `tmux-test` framework 2015-08-01 22:19:06 +02:00
.gitmodules Switch to using `tmux-test` framework 2015-08-01 22:19:06 +02:00
.travis.yml Upgrade to tmux-test version that installs tmux 2.0 2015-08-04 14:46:11 +02:00 correct spelling mistake 2017-09-02 08:03:23 +01:00 Move to a directory 2015-07-10 17:05:09 +02:00 Add README and license 2014-05-19 11:43:00 +02:00 Merge branch 'master' into add-branch-to-plugin 2021-06-29 09:03:20 +02:00
tpm Use XDG-compatible plugin path when available 2020-08-31 11:32:07 +02:00

Tmux Plugin Manager

Build Status

Installs and loads tmux plugins.

Tested and working on Linux, OSX, and Cygwin.

See list of plugins here.


Requirements: tmux version 1.9 (or higher), git, bash.

Clone TPM:

$ git clone ~/.tmux/plugins/tpm

Put this at the bottom of ~/.tmux.conf ($XDG_CONFIG_HOME/tmux/tmux.conf works too):

# 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 ''
# set -g @plugin ''

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

Reload TMUX environment so TPM is sourced:

# type this in terminal if tmux is already running
$ tmux source ~/.tmux.conf

That's it!

Installing plugins

  1. Add new plugin to ~/.tmux.conf with set -g @plugin '...'
  2. Press prefix + I (capital i, as in Install) to fetch the plugin.

You're good to go! The plugin was cloned to ~/.tmux/plugins/ dir and sourced.

Uninstalling plugins

  1. Remove (or comment out) plugin from the list.
  2. Press prefix + alt + u (lowercase u as in uninstall) to remove the plugin.

All the plugins are installed to ~/.tmux/plugins/ so alternatively you can find plugin directory there and remove it.

Key bindings

prefix + I

  • Installs new plugins from GitHub or any other git repository
  • Refreshes TMUX environment

prefix + U

  • updates plugin(s)

prefix + alt + u

  • remove/uninstall plugins not on the plugin list


More advanced features and instructions, regular users probably do not need this:


Tests for this project run on Travis CI.

When run locally, vagrant is required. Run tests with:

# within project directory
$ ./run_tests