mirror of
https://github.com/dcarrillo/prezto.git
synced 2024-09-07 11:22:38 +00:00
Zsh and Prezto files don't always reside in `~/`. Instead, they have a more spec compliant location (`${ZDOTDIR:-$HOME}/`). Make them unambiguous in the documentation. Likewise, for `$GNUPGHOME`. Further, add instruction for optionally setting up Prezto in `$XDG_CONFIG_HOME`. While at this, also add clarification on relative ordering of some of the modules, apply more formatting tweaks and doc improvements.
89 lines
2.5 KiB
Markdown
89 lines
2.5 KiB
Markdown
# Tmux
|
|
|
|
Defines [_tmux_][1] aliases and provides for auto launching it at start-up.
|
|
|
|
## Settings
|
|
|
|
### Auto-Start
|
|
|
|
Starts a tmux session automatically when Zsh is launched.
|
|
|
|
To enable this feature when launching Zsh in a local terminal, add the following
|
|
line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_:
|
|
|
|
```sh
|
|
zstyle ':prezto:module:tmux:auto-start' local 'yes'
|
|
```
|
|
|
|
To enable this feature when launching Zsh in a SSH connection, add the following
|
|
line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_:
|
|
|
|
```sh
|
|
zstyle ':prezto:module:tmux:auto-start' remote 'yes'
|
|
```
|
|
|
|
In both cases, it will create a background session named _prezto_ if the tmux
|
|
server is not started.
|
|
|
|
You can change the default session name with:
|
|
|
|
```sh
|
|
zstyle ':prezto:module:tmux:session' name '<YOUR DEFAULT SESSION NAME>'
|
|
```
|
|
|
|
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_:
|
|
|
|
```conf
|
|
set-option -g destroy-unattached [on | off]
|
|
```
|
|
|
|
#### iTerm2 Integration
|
|
|
|
[iTerm2][6] offers significant integration with tmux. This can be enabled by
|
|
adding the following line to _`${ZDOTDIR:-$HOME}/.zpreztorc`_:
|
|
|
|
```sh
|
|
zstyle ':prezto:module:tmux:iterm' integrate 'yes'
|
|
```
|
|
|
|
Read [iTerm2 and tmux Integration][7] for more information.
|
|
|
|
## Aliases
|
|
|
|
- `tmuxa` attaches or switches to a tmux session.
|
|
- `tmuxl` lists sessions managed by the tmux server.
|
|
|
|
## Caveats
|
|
|
|
On macOS, launching tmux can cause the error **launch_msg(...): Socket is not
|
|
connected** to be displayed, which can be fixed by installing
|
|
[reattach-to-user-namespace][3], available in [Homebrew][4], and adding the
|
|
following to _tmux.conf_:
|
|
|
|
```conf
|
|
set-option -g default-command "reattach-to-user-namespace -l $SHELL -l"
|
|
```
|
|
|
|
Furthermore, tmux is known to cause **kernel panics** on macOS. A discussion
|
|
about this and Prezto has already been [opened][2].
|
|
|
|
## Authors
|
|
|
|
_The authors of this module should be contacted via the [issue tracker][5]._
|
|
|
|
- [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]: https://tmux.github.io/
|
|
[2]: https://github.com/sorin-ionescu/prezto/issues/62
|
|
[3]: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
|
|
[4]: https://github.com/mxcl/homebrew
|
|
[5]: https://github.com/sorin-ionescu/prezto/issues
|
|
[6]: https://iterm2.com
|
|
[7]: https://gitlab.com/gnachman/iterm2/wikis/TmuxIntegration
|