You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Bruno Sutic cff343cf9e
Merge pull request #474 from georgeanderson/master
Update description of default session location
7 months ago
docs Updated description of default session location. 7 months ago
lib Update tmux-test 6 years ago
save_command_strategies fix ps arguments to work for busybox 1 year ago
scripts _get_proc_restore_command: use "," as sed delimiter 8 months ago
strategies Don't be too smart when restoring vim session 3 years ago
tests Update tests to save and restore a setup with a zoomed pane. 6 years ago
video Add issue video screenshot 9 years ago
.gitattributes Adding png attributes as binary files so git does not swap the crlf to lf. 8 years ago
.gitignore Run setup task from .travis.yml 9 years ago
.gitmodules Setup 'tmux-test' 9 years ago
.travis.yml Update '.travis.yml' from tmux-test 6 years ago Remove deprecated "restoring shell history" 1 year ago Change plugin name and all the variables 9 years ago Initial commit 9 years ago Remove deprecated "restoring shell history" 1 year ago
resurrect.tmux Add mosh-client default strategy 5 years ago
run_tests Do not gitignore 'tmux-test' files 9 years ago

Tmux Resurrect

Build Status

Restore tmux environment after system restart.

Tmux is great, except when you have to restart the computer. You lose all the running programs, working directories, pane layouts etc. There are helpful management tools out there, but they require initial configuration and continuous updates as your workflow evolves or you start new projects.

tmux-resurrect saves all the little details from your tmux environment so it can be completely restored after a system restart (or when you feel like it). No configuration is required. You should feel like you never quit tmux.

It even (optionally) restores vim and neovim sessions!

Automatic restoring and continuous saving of tmux env is also possible with tmux-continuum plugin.


screencast screenshot

Key bindings

  • prefix + Ctrl-s - save
  • prefix + Ctrl-r - restore


This plugin goes to great lengths to save and restore all the details from your tmux environment. Here's what's been taken care of:

  • all sessions, windows, panes and their order
  • current working directory for each pane
  • exact pane layouts within windows (even when zoomed)
  • active and alternative session
  • active and alternative window for each session
  • windows with focus
  • active pane for each window
  • "grouped sessions" (useful feature when using tmux with multiple monitors)
  • programs running within a pane! More details in the restoring programs doc.


Requirements / dependencies: tmux 1.9 or higher, bash.

Tested and working on Linux, OSX and Cygwin.

tmux-resurrect is idempotent! It will not try to restore panes or windows that already exist.
The single exception to this is when tmux is started with only 1 pane in order to restore previous tmux env. Only in this case will this single pane be overwritten.

Add plugin to the list of TPM plugins in .tmux.conf:

set -g @plugin 'tmux-plugins/tmux-resurrect'

Hit prefix + I to fetch the plugin and source it. You should now be able to use the plugin.

Manual Installation

Clone the repo:

$ git clone ~/clone/path

Add this line to the bottom of .tmux.conf:

run-shell ~/clone/path/resurrect.tmux

Reload TMUX environment with: $ tmux source-file ~/.tmux.conf. You should now be able to use the plugin.



Optional features

Other goodies

  • tmux-copycat - a plugin for regex searches in tmux and fast match selection
  • tmux-yank - enables copying highlighted text to system clipboard
  • tmux-open - a plugin for quickly opening highlighted file or a url
  • tmux-continuum - automatic restoring and continuous saving of tmux env

Reporting bugs and contributing

Both contributing and bug reports are welcome. Please check out contributing guidelines.


Mislav Marohnić - the idea for the plugin came from his tmux-session script.