Как удалить префикс среды в консоли Powershell
4 ответа
Я нашел лучшее решение (по крайней мере, для моего случая).
Просто добавьте:$env:VIRTUAL_ENV_DISABLE_PROMPT = 1
в $ПРОФИЛЬ
Это похоже на среду python, установленную conda, которая изменяет вашу функцию приглашения при инициализации.
Найдите все возможные профили PowerShell на своем хосте:
$PROFILE | Format-List -Force
Затем найдите ту часть, где написано
#region conda initialize
и измените его.
В качестве альтернативы вы можете поискать
ps1
файл, который делает это, для меня это
C:\Users\Username\Miniconda3\shell\condabin\conda-hook.ps1
но ymmv.
Я также использую oh-my-posh и показываю окружение справа:
{
"foreground": "lightRed",
"properties": {
"display_mode": "always",
"display_version": false,
"display_virtual_env": true,
"prefix":"",
"postfix": "\uE235 "
},
"type": "python",
"style": "plain"
}
Существует
prompt
функция в вашем
$profile
(не по умолчанию, но если у вас есть индивидуальная подсказка, вы это сделаете). Вам нужно будет изменить его, чтобы удалить код, который пишет
(venv)
в вашем приглашении.
Перейдите в «C:\Program Files\Python310\Lib\venv\scripts\common» (ваша папка установки Python может отличаться)
- Найдите файл «Activate.ps1».
- Откройте файл любым редактором по вашему выбору.
- Найдите строку со следующим кодом (примерно строка 232)
function global:prompt {
Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) "
_OLD_VIRTUAL_PROMPT
}
Уберите эту переменную со скобками **($_PYTHON_VENV_PROMPT_PREFIX) ** можно оставить только двойные кавычки.
После этого ваша функция должна выглядеть так.
function global:prompt {
Write-Host -NoNewline -ForegroundColor Green ""
_OLD_VIRTUAL_PROMPT
}
- Наконец, воссоздайте окружающую среду.