我将 tmux 插件添加到我的 .zshrc 文件中。当我尝试让它在启动时运行时TMUX_AUTOSTART=true
,它只显示终端窗口并在一秒钟内消失。然后我再次打开它就可以工作了。一段时间后,如果我关闭终端并尝试再次运行它,它可能会发生,或者它可能会正确运行并让我工作。这真的很烦人。当我尝试其他代码在启动时运行 tmux 时,如下所示:
if command -v tmux &> /dev/null && [ -n "$PS1" ] &&
[[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] &&
[ -z "$TMUX" ]; then
exec tmux
fi
或者
[[ $- != *i* ]] && return
[[ -z "$TMUX" ]] && exec tmux
或者
[ -z "$TMUX" ] && { tmux attach || exec tmux new-session && exit;}
或任何其他代码,终端会在一秒钟内打开并永远关闭。之后,每次都会关闭。
答案1
您必须将 ZSH_TMUX_AUTOSTART 放在插件和 oh-my-zsh 源之间。
像这样:
插件=(tmux)
ZSH_TMUX_AUTOSTART=true
来源 $ZSH/oh-my-zsh.sh
答案2
我遇到了同样的问题,我通过添加以下内容解决了它:
[ -z "$TMUX" ] && { tmux attach || exec tmux new-session && exit; }
到我的 .zshrc 的最顶部,而不是在任何东西下面。
答案3
ZSH_TMUX_AUTOCONNECT=false
为我工作