Prezto's tmux module doesn't override tmux's destroy-unattached option

This commit is contained in:
Xavier Cambar 2014-01-31 13:28:50 +01:00
parent 7722dd4400
commit eb10329461
3 changed files with 20 additions and 20 deletions

View file

@ -23,9 +23,14 @@ following line to *zpreztorc*:
In both cases, it will create a background session named _#Prezto_ and attach
every new shell to it.
To avoid keeping open sessions, this module sets `destroy-unattached off` on
the background session and `destroy-unattached on` on every other session
(global setting).
To control if the unattached sessions must be kept alive, set the
`destroy-unattached` option in your `.tmux.conf`:
```shell
set-option -g destroy-unattached 'on'
# or
set-option -g destroy-unattached 'off'
```
Aliases
-------
@ -54,6 +59,7 @@ Authors
- [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Colin Hebert](https://github.com/ColinHebert)
- [Georges Discry](https://github.com/gdiscry)
- [Xavier Cambar](https://github.com/xcambar)
[1]: http://tmux.sourceforge.net
[2]: https://github.com/sorin-ionescu/prezto/issues/62

View file

@ -5,6 +5,7 @@
# Sorin Ionescu <sorin.ionescu@gmail.com>
# Colin Hebert <hebert.colin@gmail.com>
# Georges Discry <georges@discry.be>
# Xavier Cambar <xcambar@gmail.com>
#
# Return if requirements are not found.
@ -22,25 +23,19 @@ if [[ -z "$TMUX" && ( -z "$INSIDE_EMACS" || -z "$EMACS" || -z "$VIM" ) ]] && ( \
); then
tmux_session='prezto'
# Create the default '#Prezto' session if not available.
if ! tmux has-session -t "$tmux_session" 2> /dev/null; then
# Ensure that tmux server is started.
tmux start-server
# Disable the destruction of unattached sessions globally.
tmux set-option -g destroy-unattached off &> /dev/null
# Create a new session.
tmux new-session -d -s "$tmux_session"
# Disable the destruction of the new, unattached session.
tmux set-option -t "$tmux_session" destroy-unattached off &> /dev/null
# Enable the destruction of unattached sessions globally to prevent
# an abundance of open, detached sessions.
tmux set-option -g destroy-unattached on &> /dev/null
tmux start-server \; new-session -d -s "$tmux_session" \; set-option -t "$tmux_session" destroy-unattached off &> /dev/null
fi
exec tmux new-session -t "$tmux_session"
#By default, prezto sets destroy-unattached to on
tmux_destroy_unattached=`tmux show-options -v -g destroy-unattached`
if [[ -z "$tmux_destroy_unattached" ]]; then
tmux set-option -g destroy-unattached on
fi
#Opens the session '#Prezto' or the latest session used
exec tmux attach-session
fi
#

View file

@ -152,4 +152,3 @@ zstyle ':prezto:module:prompt' theme 'sorin'
# Auto start a session when Zsh is launched in a SSH connection.
# zstyle ':prezto:module:tmux:auto-start' remote 'yes'