Increase control over multiplexer auto-start
Setting the auto-start 'remote' and 'local' zstyles for the screen and tmux modules to 'true' automatically starts a session in SSH connections and in local terminals respectively. Signed-off-by: Sorin Ionescu <sorin.ionescu@gmail.com>
This commit is contained in:
parent
61f3adcdd1
commit
07686fad38
|
@ -10,9 +10,15 @@ Settings
|
||||||
|
|
||||||
Starts a GNU Screen session automatically when Zsh is launched.
|
Starts a GNU Screen session automatically when Zsh is launched.
|
||||||
|
|
||||||
To enable this feature, add the following line to *zpreztorc*:
|
To enable this feature when launching Zsh in a local terminal, add the
|
||||||
|
following line to *zpreztorc*:
|
||||||
|
|
||||||
zstyle ':prezto:module:screen' auto-start 'yes'
|
zstyle ':prezto:module:screen:auto-start' local 'yes'
|
||||||
|
|
||||||
|
To enable this feature when launching Zsh in a SSH connection, add the
|
||||||
|
following line to *zpreztorc*:
|
||||||
|
|
||||||
|
zstyle ':prezto:module:screen:auto-start' remote 'yes'
|
||||||
|
|
||||||
Aliases
|
Aliases
|
||||||
-------
|
-------
|
||||||
|
@ -28,6 +34,7 @@ Authors
|
||||||
*The authors of this module should be contacted via the [issue tracker][2].*
|
*The authors of this module should be contacted via the [issue tracker][2].*
|
||||||
|
|
||||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||||
|
- [Georges Discry](https://github.com/gdiscry)
|
||||||
|
|
||||||
[1]: http://www.gnu.org/software/screen/
|
[1]: http://www.gnu.org/software/screen/
|
||||||
[2]: https://github.com/sorin-ionescu/prezto/issues
|
[2]: https://github.com/sorin-ionescu/prezto/issues
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#
|
#
|
||||||
# Authors:
|
# Authors:
|
||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
# Georges Discry <georges@discry.be>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
|
@ -14,7 +15,10 @@ fi
|
||||||
# Auto Start
|
# Auto Start
|
||||||
#
|
#
|
||||||
|
|
||||||
if [[ -z "$STY" ]] && zstyle -t ':prezto:module:screen' auto-start; then
|
if [[ -z "$STY" ]] && ( \
|
||||||
|
( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' remote ) ||
|
||||||
|
( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:screen:auto-start' local ) \
|
||||||
|
); then
|
||||||
session="$(
|
session="$(
|
||||||
screen -list 2> /dev/null \
|
screen -list 2> /dev/null \
|
||||||
| sed '1d;$d' \
|
| sed '1d;$d' \
|
||||||
|
|
|
@ -10,12 +10,18 @@ Settings
|
||||||
|
|
||||||
Starts a tmux session automatically when Zsh is launched.
|
Starts a tmux session automatically when Zsh is launched.
|
||||||
|
|
||||||
To enable this feature, add the following line to *zpreztorc*:
|
To enable this feature when launching Zsh in a local terminal, add the
|
||||||
|
following line to *zpreztorc*:
|
||||||
|
|
||||||
zstyle ':prezto:module:tmux' auto-start 'yes'
|
zstyle ':prezto:module:tmux:auto-start' local 'yes'
|
||||||
|
|
||||||
It will create a background session named _#Prezto_ and attach every new shell
|
To enable this feature when launching Zsh in a SSH connection, add the
|
||||||
to it.
|
following line to *zpreztorc*:
|
||||||
|
|
||||||
|
zstyle ':prezto:module:tmux:auto-start' remote 'yes'
|
||||||
|
|
||||||
|
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
|
To avoid keeping open sessions, this module sets `destroy-unattached off` on
|
||||||
the background session and `destroy-unattached on` on every other session
|
the background session and `destroy-unattached on` on every other session
|
||||||
|
@ -47,6 +53,7 @@ Authors
|
||||||
|
|
||||||
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
- [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||||
- [Colin Hebert](https://github.com/ColinHebert)
|
- [Colin Hebert](https://github.com/ColinHebert)
|
||||||
|
- [Georges Discry](https://github.com/gdiscry)
|
||||||
|
|
||||||
[1]: http://tmux.sourceforge.net
|
[1]: http://tmux.sourceforge.net
|
||||||
[2]: https://github.com/sorin-ionescu/prezto/issues/62
|
[2]: https://github.com/sorin-ionescu/prezto/issues/62
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
# Authors:
|
# Authors:
|
||||||
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
# Colin Hebert <hebert.colin@gmail.com>
|
# Colin Hebert <hebert.colin@gmail.com>
|
||||||
|
# Georges Discry <georges@discry.be>
|
||||||
#
|
#
|
||||||
|
|
||||||
# Return if requirements are not found.
|
# Return if requirements are not found.
|
||||||
|
@ -15,7 +16,10 @@ fi
|
||||||
# Auto Start
|
# Auto Start
|
||||||
#
|
#
|
||||||
|
|
||||||
if [[ -z "$TMUX" ]] && zstyle -t ':prezto:module:tmux' auto-start; then
|
if [[ -z "$TMUX" ]] && ( \
|
||||||
|
( [[ -n "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' remote ) ||
|
||||||
|
( [[ -z "$SSH_TTY" ]] && zstyle -t ':prezto:module:tmux:auto-start' local ) \
|
||||||
|
); then
|
||||||
tmux_session='#Prezto'
|
tmux_session='#Prezto'
|
||||||
|
|
||||||
if ! tmux has-session -t "$tmux_session" 2> /dev/null; then
|
if ! tmux has-session -t "$tmux_session" 2> /dev/null; then
|
||||||
|
|
|
@ -91,8 +91,11 @@ zstyle ':prezto:module:prompt' theme 'sorin'
|
||||||
# Screen
|
# Screen
|
||||||
#
|
#
|
||||||
|
|
||||||
# Auto start a session when Zsh is launched.
|
# Auto start a session when Zsh is launched in a local terminal.
|
||||||
# zstyle ':prezto:module:screen' auto-start 'yes'
|
# zstyle ':prezto:module:screen:auto-start' local 'yes'
|
||||||
|
|
||||||
|
# Auto start a session when Zsh is launched in a SSH connection.
|
||||||
|
# zstyle ':prezto:module:screen:auto-start' remote 'yes'
|
||||||
|
|
||||||
#
|
#
|
||||||
# SSH
|
# SSH
|
||||||
|
@ -132,6 +135,9 @@ zstyle ':prezto:module:terminal' auto-title 'yes'
|
||||||
# Tmux
|
# Tmux
|
||||||
#
|
#
|
||||||
|
|
||||||
# Auto start a session when Zsh is launched.
|
# Auto start a session when Zsh is launched in a local terminal.
|
||||||
# zstyle ':prezto:module:tmux' auto-start 'yes'
|
# zstyle ':prezto:module:tmux:auto-start' local 'yes'
|
||||||
|
|
||||||
|
# Auto start a session when Zsh is launched in a SSH connection.
|
||||||
|
# zstyle ':prezto:module:tmux:auto-start' remote 'yes'
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue