Можно ли изменить python имя virtualenv, показанное в подсказке? - PullRequest
0 голосов
/ 13 января 2020

Есть ли способ изменить имя, которое отображается в приглашении, в то время как virtualenv активировано?

username@host:~$ python3 -m venv venv
username@host:~$ source venv/bin/activate
(venv) username@host:~$

Но мне нужно, чтобы оно отображалось примерно так:

username@host:~$ python3 -m venv venv
username@host:~$ source venv/bin/activate
(some_arbitrary_name) username@host:~$

UPD: Спасибо за ответы. Имя приглашения не может быть изменено после создания, однако есть способ показать произвольное имя в приглашении, отличное от имени папки:

username@host:~$ python3 -m venv .venv --prompt some_arbitrary_name
username@host:~$ source venv/bin/activate
(some_arbitrary_name) username@host:~$

Ответы [ 2 ]

0 голосов
/ 13 января 2020

Хотя это невозможно, я не могу вспомнить сценарий, в котором вы можете захотеть показать имя, отличное от имени виртуального env. Если вы хотите переименовать вашу виртуальную среду, вот что вы можете сделать. По умолчанию virtualenv не поддерживает переименование сред. Безопаснее просто удалить каталог virtualenv и создать новый с правильным именем. Вы можете сделать это:

Activate your virtualenv: source vnev/bin/activate
Create a requirements.txt of currently installed packages: pip freeze > requirements.txt
Delete the misspelled virtualenv: rm -r vnev/
Create a new virtualenv with correct name: virtualenv venv
Activate new virtualenv: source venv/bin/activate
Install packages from requirements.txt: pip install -r requirements.txt
0 голосов
/ 13 января 2020

Имя venv совпадает с именем папки, в которой вы его создали. Создайте venv с именем, которое вам нравится

$ python -m venv some_arbitrary_name
$ . ./some_arbitrary_name/bin/activate
(some_arbitrary_name)$ 

...