virtualenv name not show in zsh prompt

Do this in ~/.zshrc:

plugins=(virtualenv)

POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status virtualenv)

Caveats:

1 -- add that plugin in addition to other plugins you have.

2 -- I'm using the POWERLEVEL9K theme. Maybe you theme


The best solution is to add the following to the end of your ~/.zshrc file:

export VIRTUAL_ENV_DISABLE_PROMPT=

This will override the value in virtualenv.plugin.zsh - no need to change that file.


My setting to display Python virtualenv name for the default (a.k.a. robbyrussell) theme is the following.

In the .zshrc file

  1. virtualenv added in plugins

  2. Add custom function:

    function virtualenv_info { 
        [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') '
    }
    

Navigate to your theme

  1. My theme is the default theme for zsh:
    $ vim ~/.oh-my-zsh/themes/robbyrussell.zsh-theme
    
  2. Add this command right after existing PROMPT commands:
    PROMPT+='%{$fg[green]%}$(virtualenv_info)%{$reset_color%}%'
    

Finally

$ source ~/.zshrc

PS: You can add your name or a few space before or after the PROMPT+.

Hope that helps!