diff --git a/README.md b/README.md index d2e40da0..2d031706 100644 --- a/README.md +++ b/README.md @@ -140,13 +140,21 @@ The segments that are currently available are: ##### anaconda -This segment shows your active anaconda environment. +This segment shows your active anaconda environment. It relies on either the +`CONDA_ENV_PATH` or the `CONDA_PREFIX` (depending on the `conda` version) +environment variable to be set which happens when you properly `source +activate` an environment. -*Note: This segment relies on a perl-regex with lookbehind. -If `ack` is not available the segment will try to use `grep`. -Recent versions of grep offer a `-P` option to handle such things. -On OSX, however, you want to install gnu-grep (e.g. via `brew install grep`) -and alias the newly installed `ggrep` to `grep`. Alternatively, `brew install ack`.* +Special configuration variables: + +| Variable | Default Value | Description | +|----------|---------------|-------------| +|`POWERLEVEL9K_ANACONDA_LEFT_DELIMITER`|"("|The left delimiter just before the environment name.| +|`POWERLEVEL9K_ANACONDA_RIGHT_DELIMITER`|")"|The right delimiter just after the environment name.| + +Additionally the following segment specific parameters can be used to customize +it: `POWERLEVEL9K_PYTHON_ICON`, `POWERLEVEL9K_ANACONDA_BACKGROUND`, and +`POWERLEVEL9K_ANACONDA_FOREGROUND`. ##### aws diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme index bf09b4ce..e81aa6f2 100755 --- a/powerlevel9k.zsh-theme +++ b/powerlevel9k.zsh-theme @@ -291,13 +291,14 @@ CURRENT_BG='NONE' # Anaconda Environment prompt_anaconda() { - if $(hash ack 2>/dev/null); then - local active_conda_env=$(where conda | ack -o '(?<=envs/)[\w-]+(?=/bin)') - else - local active_conda_env=$(where conda | grep -o -P '(?<=envs/)[\w-]+(?=/bin)') - fi - if [[ -n $active_conda_env ]]; then - "$1_prompt_segment" "$0" "$2" "green" "black" "($active_conda_env)" "" + # Depending on the conda version, either might be set. This + # variant works even if both are set. + _path=$CONDA_ENV_PATH$CONDA_PREFIX + if ! [ -z "$_path" ]; then + # config - can be overwritten in users' zshrc file. + set_default POWERLEVEL9K_ANACONDA_LEFT_DELIMITER "(" + set_default POWERLEVEL9K_ANACONDA_RIGHT_DELIMITER ")" + "$1_prompt_segment" "$0" "$2" "$3" "$4" "$POWERLEVEL9K_ANACONDA_LEFT_DELIMITER$(basename $_path)$POWERLEVEL9K_ANACONDA_RIGHT_DELIMITER" 'PYTHON_ICON' fi }