Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions Lib/venv/scripts/common/Activate.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -229,10 +229,12 @@ if (-not $Env:VIRTUAL_ENV_DISABLE_PROMPT) {
# Make sure _OLD_VIRTUAL_PROMPT is global
function global:_OLD_VIRTUAL_PROMPT { "" }
Copy-Item -Path function:prompt -Destination function:_OLD_VIRTUAL_PROMPT
New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value $Prompt
$venvPrefix = if ($Env:VIRTUAL_ENV_PROMPT_PREFIX) { $Env:VIRTUAL_ENV_PROMPT_PREFIX } else { "(" }
$venvSuffix = if ($Env:VIRTUAL_ENV_PROMPT_SUFFIX) { $Env:VIRTUAL_ENV_PROMPT_SUFFIX } else { ") " }
New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value "$venvPrefix$Prompt$venvSuffix"

function global:prompt {
Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) "
Write-Host -NoNewline -ForegroundColor Green "$_PYTHON_VENV_PROMPT_PREFIX"
_OLD_VIRTUAL_PROMPT
}
}
Expand Down
2 changes: 1 addition & 1 deletion Lib/venv/scripts/common/activate
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ fi

if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
_OLD_VIRTUAL_PS1="${PS1:-}"
PS1="("__VENV_PROMPT__") ${PS1:-}"
PS1="${VIRTUAL_ENV_PROMPT_PREFIX-(}"__VENV_PROMPT__"${VIRTUAL_ENV_PROMPT_SUFFIX-) }${PS1:-}"
export PS1
fi

Expand Down
12 changes: 11 additions & 1 deletion Lib/venv/scripts/common/activate.fish
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,18 @@ if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
# Save the return status of the last command.
set -l old_status $status

set -l virtual_env_prompt_prefix "("
set -l virtual_env_prompt_suffix ")"

if set -q VIRTUAL_ENV_PROMPT_PREFIX
set virtual_env_prompt_prefix $VIRTUAL_ENV_PROMPT_PREFIX
end
if set -q VIRTUAL_ENV_PROMPT_SUFFIX
set virtual_env_prompt_suffix $VIRTUAL_ENV_PROMPT_SUFFIX
end

# Output the venv prompt; color taken from the blue of the Python logo.
printf "%s(%s)%s " (set_color 4B8BBE) __VENV_PROMPT__ (set_color normal)
printf "%s%s%s%s%s " (set_color 4B8BBE) $virtual_env_prompt_prefix __VENV_PROMPT__ $virtual_env_prompt_suffix (set_color normal)

# Restore the return status of the previous command.
echo "exit $old_status" | .
Expand Down
5 changes: 5 additions & 0 deletions Lib/venv/scripts/nt/activate.bat
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ if defined _OLD_VIRTUAL_PROMPT set PROMPT=%_OLD_VIRTUAL_PROMPT%
if defined _OLD_VIRTUAL_PYTHONHOME set PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME%

set "_OLD_VIRTUAL_PROMPT=%PROMPT%"
set "_VIRTUAL_ENV_PROMPT_PREFIX=("
set "_VIRTUAL_ENV_PROMPT_SUFFIX=) "
if defined VIRTUAL_ENV_PROMPT_PREFIX set "_VIRTUAL_ENV_PROMPT_PREFIX=%VIRTUAL_ENV_PROMPT_PREFIX%"
if defined VIRTUAL_ENV_PROMPT_SUFFIX set "_VIRTUAL_ENV_PROMPT_SUFFIX=%VIRTUAL_ENV_PROMPT_SUFFIX%"
set "PROMPT=%_VIRTUAL_ENV_PROMPT_PREFIX%__VENV_PROMPT__%_VIRTUAL_ENV_PROMPT_SUFFIX%%PROMPT%"
set "PROMPT=(__VENV_PROMPT__) %PROMPT%"

if defined PYTHONHOME set _OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME%
Expand Down
4 changes: 3 additions & 1 deletion Lib/venv/scripts/posix/activate.csh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ setenv VIRTUAL_ENV_PROMPT __VENV_PROMPT__
set _OLD_VIRTUAL_PROMPT="$prompt"

if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then
set prompt = "("__VENV_PROMPT__") $prompt:q"
if (! $?VIRTUAL_ENV_PROMPT_PREFIX) set VIRTUAL_ENV_PROMPT_PREFIX = "("
if (! $?VIRTUAL_ENV_PROMPT_SUFFIX) set VIRTUAL_ENV_PROMPT_SUFFIX = ") "
set prompt = "${VIRTUAL_ENV_PROMPT_PREFIX}"__VENV_PROMPT__"${VIRTUAL_ENV_PROMPT_SUFFIX}$prompt:q"
endif

alias pydoc python -m pydoc
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
venv prompt in your shell can be customizable for prefix and suffix of venv name using VIRTUAL_ENV_PROMPT_PREFIX and VIRTUAL_ENV_PROMPT_SUFFIX from the default "(" and ") ".
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please suggest if Tools-Demos is not correct.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use Library

If variable is not set, the default "(" and ") " still be used.
Loading