答案1
TMUX 显示/更新 conda 环境的分辨率
最后我想出了在Tmux状态栏中显示或更新conda环境的解决方案。我尝试过使用
set -g status-right "conda: #(echo $CONDA_DEFAULT_ENV)
但它不起作用。看来 Tmux 不知道$CONDA_DEFAULT_ENV
.我已经尝试过类似的方法$PATH
并且效果很好。最后,我询问 GPT4 如何正确显示 conda env 名称,它建议在中添加以下代码~/.zshrc
# Update TMUX environment variable
# Add conda.sh to PATH
source /opt/homebrew/Caskroom/miniforge/base/etc/profile.d/conda.sh
# Update TMUX_CONDA_ENV every time a new prompt is generated
precmd() {
if [[ -n $TMUX && -n $CONDA_DEFAULT_ENV ]]; then
tmux setenv -g TMUX_CONDA_ENV "$CONDA_DEFAULT_ENV"
else
tmux setenv -gu TMUX_CONDA_ENV
fi
}
以下是GPT4对代码片段的解释
We might need to take a different approach. Let's try using the
PROMPT_COMMAND environment variable, which holds a command to be executed
before each command prompt. We'll update the TMUX_CONDA_ENV variable
inside the PROMPT_COMMAND so that it changes every time a new prompt is
generated.
现在tmux.conf
我们需要将原来的行修改为
set -g status-right "Conda: #{?TMUX_CONDA_ENV,#{TMUX_CONDA_ENV},base}"
现在效果很好。它不仅显示正确的 conda env 名称,而且在我们切换到其他环境时更新 conda env 名称。