Wie ändere ich die Standard-virtualenv Aufforderung?
Wie ändern Sie die Standard-Virtualenvwrapper Aufforderung? Standardmäßig arbeiten auf einem bestimmten virtuellen Umgebung mit einem Befehl wie "workon <_name_of_env_>" bestimmt den Namen des virtualenv den prompt. Dies kann schlecht arbeiten, wenn Sie nicht mit einem Standard-Eingabeaufforderung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie auf eine benutzerdefinierte PS1 (wie ich, wenn Sie fanden heraus, dass dieses Problem), empfehle ich Ihnen, deaktivieren Sie die Eingabeaufforderung zu ändern, verwenden Sie
export VIRTUAL_ENV_DISABLE_PROMPT=1
(siehe virtualenv docs), und stellen Sie Ihre eigene virtualenv Eingabeaufforderung, um hinzufügen, um Ihre PS1.Sehen, diese Schnipsel, die ich verwendet habe:
local
müssen innerhalb einer Funktion, aber Sie können ersetzen Sie einfach mitVENV=...
$
wie inexport PS1="... \$(virtualenv_info) ..."
Standardmäßig beim wechseln in ein virtualenv mit dem Befehl "workon < name_of_env >", virtualenvwrapper fügt eine Zeichenfolge entlang der Linien von "(< name_of_env >) ", um die Eingabeaufforderung. Das problem ist, dass ich meine Bash-Eingabeaufforderung mit den Zeilen:
Ergibt eine Eingabeaufforderung entlang der Linien von:
Wechsel in eine neue virtuelle Umgebung mit "workon < name_of_env >" drehte der Eingabeaufforderung ein, um so etwas wie:
War mehr unübersichtlich als ich wollte und die falsche Farbe zu Booten. Ich hatte gehofft, für etwas wie:
Ian Bicking hat zuvor darauf hingewiesen, dass virtualenvwrapper die Haken waren die Lösung aber ich dachte, ich poste meinen aktuellen code um vielleicht noch zu retten jemand anderes eine minute auf der ganzen Linie.
Habe ich einfach die Datei bearbeitet $WORKON_HOME/postactivate, um diese Zeilen:
und voila! Die Farbe und Lage sind korrekt und es funktioniert sogar, wenn Sie den direkten Wechsel von einer virtuellen Umgebung in eine andere (die ich nicht erwartet hätte).
Ich denke, die folgende ist die einfachste Lösung:
Hinzufügen
~/.virtualenvs/postactivate
die folgenden:Entnommen aus: http://wiki.hackzine.org/development/python/virtualenv.html
Nahm ich @ivanalejandro0 Lösung durch abnehmen ist die Funktion ein bisschen:
Oder wenn Sie das Gefühl wirklich hacky: