prezto/modules/tmux/README.md

2.5 KiB

Tmux

Defines tmux 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:

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:

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:

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:

set-option -g destroy-unattached [on | off]

iTerm2 Integration

iTerm2 offers significant integration with tmux. This can be enabled by adding the following line to ${ZDOTDIR:-$HOME}/.zpreztorc:

zstyle ':prezto:module:tmux:iterm' integrate 'yes'

Read iTerm2 and tmux Integration 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, available in Homebrew, and adding the following to tmux.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.

Authors

The authors of this module should be contacted via the issue tracker.