1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
prezto/modules/tmux/README.md

105 lines
2.9 KiB

13 years ago
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 *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 *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>'
```
A session name may also be specified in an environment variable before ZSH runs.
```sh
env tmux_session='<SESSION NAME>' zsh
```
This can be useful for example to connect to a specific remote session
connecting via SSH (note that OpenSSH needs to be configured to pass on that
environment variable). It can also be used with window managers to set keybindings
that launch terminals with specific sessions.
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 *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
-------
13 years ago
*The authors of this module should be contacted via the [issue tracker][5].*
13 years ago
- [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
[3]: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
[4]: https://github.com/mxcl/homebrew
[5]: https://github.com/sorin-ionescu/prezto/issues
[6]: http://iterm2.com
[7]: https://gitlab.com/gnachman/iterm2/wikis/TmuxIntegration