sag*_*aga 1 prompt zsh tmux interactive
我希望根据我是否在 tmux 会话中来决定 zsh 提示符的颜色。在bash中,可以通过检查$TMUX的值来完成,但我在zsh中找不到等效的方法。在zsh中可以吗?
在 zsh 中,该prompt_subst
选项默认处于关闭状态。如果您想在提示中使用变量替换,请将其打开。
setopt prompt_subst
PS1='$foo'
Run Code Online (Sandbox Code Playgroud)
不过,对于$TMUX
,您不需要这个。该值在会话期间不会更改,因此您可以PS1
在 shell 启动时进行初始化。
setopt prompt_subst
if (($+TMUX)); then
PS1='[tmux:${TMUX_PANE//\%/%%}] %# '
else
PS1='[not tmux] %# '
fi
Run Code Online (Sandbox Code Playgroud)
请注意,变量替换后会发生提示扩展,这就是为什么需要保护变量值中的百分号。
归档时间: |
|
查看次数: |
5270 次 |
最近记录: |