Python модуль venv не может добавить имя виртуальной среды для PS1, когда используется PROMPT_COMMAND? - PullRequest
0 голосов
/ 27 февраля 2020

Я использую официальную поддержку приглашения Git Bash для отображения текущей ветви как части приглашения.

Моя проблема заключается в том, что активация виртуальной среды Python (python -m venv <dir>) с использованием source bin/activate не отображает имя виртуальной среды - (atlassian-watchdog) - как часть приглашения Bash:

nlykkei:~/projects/atlassian-watchdog (master *)$

У меня сильное чувство, что оно не работает, потому что Я использую PROMPT_COMMAND в ~/.bashrc вместо PS1, но GIT_PS1_SHOWCOLORHINTS работает только с PROMPT_COMMAND.

Можно ли использовать PROMPT_COMMAND с Python виртуальными средами, чтобы имя среды добавляется к приглашению, когда оно активно?

~ /.git -prompt. sh:

# If you would like a colored hint about the current dirty state, set
# GIT_PS1_SHOWCOLORHINTS to a nonempty value. The colors are based on
# the colored output of "git status -sb" and are available only when
# using __git_ps1 for PROMPT_COMMAND or precmd.

Бен / активировать :

if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
    _OLD_VIRTUAL_PS1="${PS1:-}"
    if [ "x(atlassian-watchdog) " != x ] ; then
       PS1="(atlassian-watchdog) ${PS1:-}"
    else
    if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then
        # special case for Aspen magic directories
        # see http://www.zetadev.com/software/aspen/
        PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1"
    else
        PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1"
    fi
    fi
    export PS1
fi

~ / .bashr c:

# git prompt
source ~/.git-prompt.sh
GIT_PS1_SHOWCOLORHINTS=1
PROMPT_COMMAND='__git_ps1 "\u:\w" "\\\$ "'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...