1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2025-07-01 09:19:25 +00:00

Compare commits

..

1 Commits

Author SHA1 Message Date
9dd65d3982 Adding the ability to specify tmux session name.
Change-Id: Iee7f34de4448e9ab5d383e6e2eb871639271fdb5
2014-05-08 21:07:06 -06:00
2 changed files with 14 additions and 27 deletions

View File

@ -20,25 +20,19 @@ following line to *zpreztorc*:
zstyle ':prezto:module:tmux:auto-start' remote 'yes'
In both cases the tmux server will be started and a background session
named _prezto_ will be created if a session doesn't already exist.
In both cases, it will create a background session named _prezto_ if the tmux
server is not started.
By default every shell shares a set of windows but has an independent
view. Detaching from one of these sessions removes the view but the
open windows persist. This is accomplished by setting the
`destroy-unattached` option to `on` for each session.
You can change the default session name with:
Some users prefer that all new shells share the same session so that
the view for each shell is in sync. This useful for advanced users
that create multiple sessions and want to manually navigate between
them. To accomplish this behavior set the `mode` option to `shared` in
*zpreztorc*,
zstyle ':prezto:module:tmux' session 'YOUR DEFAULT SESSION NAME'
zstyle ':prezto:module:tmux:auto-start' mode shared
You can customize the background session by creating a new session in
your `.tmux.conf` file.
With `auto-start` enabled, you may want to control how multiple sessions are
managed. The `destroy-unattached` option of tmux controls if the unattached
sessions must be kept alive, making sessions available for later use, configured
in *tmux.conf*:
set-option -g destroy-unattached [on | off]
Aliases
-------

View File

@ -25,21 +25,14 @@ if [[ -z "$TMUX" && -z "$EMACS" && -z "$VIM" ]] && ( \
# Create a 'prezto' session if no session has been defined in tmux.conf.
if ! tmux has-session 2> /dev/null; then
zstyle -s ':prezto:module:tmux' session 'session' || session='prezto'
tmux \
new-session -d -s prezto \; \
set-option -t prezto destroy-unattached off &> /dev/null
else
tmux_session
new-session -d -s "$session" \; \
set-option -t "$session" destroy-unattached off &> /dev/null
fi
if zstyle -t ':prezto:module:tmux:auto-start' mode shared; then
# Attach to the 'prezto' session or to the last session used.
exec tmux attach
else
# Find a session to share windows with.
tmux_session=`tmux list-sessions -F '#S' | head -n 1`
exec tmux new-session -t "$tmux_session"\; set-option destroy-unattached on
fi
# Attach to the 'prezto' session or to the last session used.
exec tmux attach-session
fi
#