# # Exposes information about the Python environment via the $python_info # associative array. # # Authors: # Sorin Ionescu # Patrick Bos # # function python-info { local virtualenv_format local virtualenv_formatted local version_format local version_formatted local version # Clean up previous $python_info. unset python_info typeset -gA python_info # Grab the styling we might have to do zstyle -s ':prezto:module:python:info:virtualenv' format 'virtualenv_format' zstyle -s ':prezto:module:python:info:version' format 'version_format' # Format virtualenv. if [[ -n "$virtualenv_format" ]]; then if [[ -n "$VIRTUAL_ENV" ]]; then zformat -f virtualenv_formatted "$virtualenv_format" "v:${VIRTUAL_ENV:t}" python_info[virtualenv]="$virtualenv_formatted" fi # Do the same for Conda virtual environments if [[ -n "$CONDA_DEFAULT_ENV" ]]; then zformat -f virtualenv_formatted "$virtualenv_format" "v:${CONDA_DEFAULT_ENV:t}" python_info[virtualenv]="$virtualenv_formatted" fi fi if [[ -n "$version_format" ]]; then if (( $+commands[pyenv] )); then version="${"$(pyenv version)"%% *}" elif (( $+commands[python] )); then version="${$(python3 --version)#Python }" fi if [[ -n "$version" && "$version" != "system" ]]; then zformat -f version_formatted "$version_format" "v:$version" python_info[version]="$version_formatted" fi fi # }