diff --git a/copier-template/app.cmd.jinja b/copier-template/app.cmd.jinja index 4f3e240..3fb1484 100644 --- a/copier-template/app.cmd.jinja +++ b/copier-template/app.cmd.jinja @@ -5,6 +5,13 @@ set "SCRIPT_DIR=%~dp0" set "ROOT_DIR=%SCRIPT_DIR%" pushd "%ROOT_DIR%" >nul +set "PROJECT_VENV=%ROOT_DIR%.venv" +if defined VIRTUAL_ENV ( + if /I not "%VIRTUAL_ENV%"=="%PROJECT_VENV%" ( + if /I not "%VIRTUAL_ENV%"=="%PROJECT_VENV%\" set "VIRTUAL_ENV=" + ) +) + set "COMMAND=%~1" if "%COMMAND%"=="" set "COMMAND=help" shift /1 diff --git a/copier-template/app.sh.jinja b/copier-template/app.sh.jinja index ea8f187..6526721 100644 --- a/copier-template/app.sh.jinja +++ b/copier-template/app.sh.jinja @@ -4,6 +4,15 @@ set -eu ROOT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) cd "$ROOT_DIR" +PROJECT_VENV="$ROOT_DIR/.venv" +case "${VIRTUAL_ENV:-}" in + ""|"$PROJECT_VENV"|"$PROJECT_VENV/") + ;; + *) + unset VIRTUAL_ENV + ;; +esac + show_help() { cat <<'EOF' {{ project_name }} 项目脚本 diff --git a/scripts/iti.cmd b/scripts/iti.cmd index 9369743..166b68a 100644 --- a/scripts/iti.cmd +++ b/scripts/iti.cmd @@ -4,6 +4,14 @@ setlocal enabledelayedexpansion set "SCRIPT_DIR=%~dp0" set "ROOT_DIR=%SCRIPT_DIR%.." pushd "%ROOT_DIR%" >nul +set "ROOT_DIR=%CD%" + +set "PROJECT_VENV=%ROOT_DIR%\.venv" +if defined VIRTUAL_ENV ( + if /I not "%VIRTUAL_ENV%"=="%PROJECT_VENV%" ( + if /I not "%VIRTUAL_ENV%"=="%PROJECT_VENV%\" set "VIRTUAL_ENV=" + ) +) set "COMMAND=%~1" if "%COMMAND%"=="" set "COMMAND=help" diff --git a/scripts/iti.sh b/scripts/iti.sh index 296094f..37be132 100644 --- a/scripts/iti.sh +++ b/scripts/iti.sh @@ -4,6 +4,15 @@ set -eu ROOT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) cd "$ROOT_DIR" +PROJECT_VENV="$ROOT_DIR/.venv" +case "${VIRTUAL_ENV:-}" in + ""|"$PROJECT_VENV"|"$PROJECT_VENV/") + ;; + *) + unset VIRTUAL_ENV + ;; +esac + show_help() { cat <<'EOF' iTi-Flask 开发脚本