Skip to content

Instantly share code, notes, and snippets.

@sefgit
Created June 2, 2024 05:13
Show Gist options
  • Save sefgit/f878da84808ae381b7de8c91ca3abd3f to your computer and use it in GitHub Desktop.
Save sefgit/f878da84808ae381b7de8c91ca3abd3f to your computer and use it in GitHub Desktop.
PYTHON virtualenv
@echo off
rem mkdir workspace
rem copy _cmd.bat .
rem cd workspace
rem virtualenv .venv
Set workdir=%cd%\.venv
rem echo VIRTUALENV: %workdir%
For /F "delims=\" %%A in ("%workdir%") do (
Set Name=%%~nxA
)
echo WORKSPACE: %Name%
@set "VIRTUAL_ENV=%cd%\.venv"
@if defined _OLD_VIRTUAL_PROMPT (
@set "PROMPT=%_OLD_VIRTUAL_PROMPT%"
) else (
@if not defined PROMPT (
@set "PROMPT=$P$G"
)
@if not defined VIRTUAL_ENV_DISABLE_PROMPT (
@set "_OLD_VIRTUAL_PROMPT=%PROMPT%"
)
)
@if not defined VIRTUAL_ENV_DISABLE_PROMPT (
@if "" NEQ "" (
@set "PROMPT=() %PROMPT%"
) else (
rem @for %%d in ("%VIRTUAL_ENV%") do @set "PROMPT=(%%~nxd) %PROMPT%"
@set "PROMPT=(%Name%) %PROMPT%"
)
)
@REM Don't use () to avoid problems with them in %PATH%
@if defined _OLD_VIRTUAL_PYTHONHOME @goto ENDIFVHOME
@set "_OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME%"
:ENDIFVHOME
@set PYTHONHOME=
@REM if defined _OLD_VIRTUAL_PATH (
@if not defined _OLD_VIRTUAL_PATH @goto ENDIFVPATH1
@set "PATH=%_OLD_VIRTUAL_PATH%"
:ENDIFVPATH1
@REM ) else (
@if defined _OLD_VIRTUAL_PATH @goto ENDIFVPATH2
@set "_OLD_VIRTUAL_PATH=%PATH%"
:ENDIFVPATH2
@set "PATH=%VIRTUAL_ENV%\Scripts;%PATH%"
rem start /b python -m idlelib
cmd.exe
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment