mirror of
https://github.com/python/cpython.git
synced 2026-02-19 13:51:09 +00:00
This improves the implementation in gh-106643. Previously, venv passed "(<prompt>) " to the activation scripts, but we want to provide the original value so that users can inspect it in the $VIRTUAL_ENV_PROMPT env var. Note: Lib/venv/scripts/common/Activate.ps1 surrounded the prompt value with parens a second time, so no change was necessary in that file.
34 lines
976 B
Batchfile
34 lines
976 B
Batchfile
@echo off
|
|
|
|
rem This file is UTF-8 encoded, so we need to update the current code page while executing it
|
|
for /f "tokens=2 delims=:." %%a in ('"%SystemRoot%\System32\chcp.com"') do (
|
|
set _OLD_CODEPAGE=%%a
|
|
)
|
|
if defined _OLD_CODEPAGE (
|
|
"%SystemRoot%\System32\chcp.com" 65001 > nul
|
|
)
|
|
|
|
set VIRTUAL_ENV=__VENV_DIR__
|
|
|
|
if not defined PROMPT set PROMPT=$P$G
|
|
|
|
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 PROMPT=(__VENV_PROMPT__) %PROMPT%
|
|
|
|
if defined PYTHONHOME set _OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME%
|
|
set PYTHONHOME=
|
|
|
|
if defined _OLD_VIRTUAL_PATH set PATH=%_OLD_VIRTUAL_PATH%
|
|
if not defined _OLD_VIRTUAL_PATH set _OLD_VIRTUAL_PATH=%PATH%
|
|
|
|
set PATH=%VIRTUAL_ENV%\__VENV_BIN_NAME__;%PATH%
|
|
set VIRTUAL_ENV_PROMPT=__VENV_PROMPT__
|
|
|
|
:END
|
|
if defined _OLD_CODEPAGE (
|
|
"%SystemRoot%\System32\chcp.com" %_OLD_CODEPAGE% > nul
|
|
set _OLD_CODEPAGE=
|
|
)
|