diff --git a/pure.zsh b/pure.zsh index 78e778f..061eb89 100644 --- a/pure.zsh +++ b/pure.zsh @@ -232,7 +232,8 @@ prompt_pure_precmd() { psvar[20]= if zstyle -T ":prompt:pure:environment:virtualenv" show; then # Check if a Conda environment is active and display its name. - if [[ -n $CONDA_DEFAULT_ENV ]]; then + # The 'base' environment is always active and not informative. + if [[ -n $CONDA_DEFAULT_ENV ]] && [[ ${CONDA_DEFAULT_ENV:t} != base ]]; then psvar[20]="${${CONDA_DEFAULT_ENV:t}//[$'\t\r\n']}" fi # When VIRTUAL_ENV_DISABLE_PROMPT is empty, it was unset by the user and diff --git a/tests/virtualenv.zsh b/tests/virtualenv.zsh index e4b7578..7bbf2f3 100644 --- a/tests/virtualenv.zsh +++ b/tests/virtualenv.zsh @@ -38,6 +38,16 @@ main() { prompt_pure_precmd assert_equal "myenv" "$psvar[20]" "conda env should show basename when set to full path" + # Conda 'base' environment should be hidden. + CONDA_DEFAULT_ENV=base + prompt_pure_precmd + assert_empty "$psvar[20]" "conda base environment should be hidden" + + # Conda 'base' environment with full path should also be hidden. + CONDA_DEFAULT_ENV=/path/to/envs/base + prompt_pure_precmd + assert_empty "$psvar[20]" "conda base environment with full path should be hidden" + # Conda env should be hidden when virtualenv style is off. zstyle ':prompt:pure:environment:virtualenv' show no prompt_pure_precmd