Estoy usando virtualenv
, virtualenvwrapper
, zsh
, oh-my-zsh
, terminador, en Crunchbang.
Estoy tratando de mostrar el nombre de la corriente virtualenv
así
workon example
(example)...
He probado muchas soluciones, ninguna parece funcionar, aquí está mi archivo .zshrc , sé que no es gran cosa solucionarlo, pero no puedo encontrar la solución correcta. Ha pasado mucho tiempo desde la última vez que usé Linux para el desarrollo de Django, olvidé lo que solía hacer.
En este momento, veo username@crunchbang
, no puedo decir qué virtud estoy usando.
zsh
python
oh-my-zsh
virtualenv
Lynob
fuente
fuente
Respuestas:
Aviso de Shell
Dentro de su
virtualenv
entorno es un archivo,bin/activate
. Puede editar este archivo para cambiar su solicitud a lo que quiera que se vea. Específicamente esta sección del archivo:La variable
PS1
es una variable especial que controla cómo se verá el indicador de un shell. Cambiar su valor cambiará suvirtualenv
solicitud:Ejemplo
Crea un entorno de muestra.
Cuando lo usa
virtualenv
, normalmente obtiene este archivo.Después de hacer el cambio anterior a la variable
PS1
en elbin/activate
archivo, mi mensaje ahora es esto:Aquí están las instrucciones oficiales sobre cómo hacer esto .
fuente
activate
archivo? Tu archivo funcionó bien para mí.virtualenv
está funcionando aparte de eso, no veo nada, ¿tal vez es un.zshrc
problema ovirtualenvwrapper
? ¿Se puede depurar este problema? tenga en cuenta que tengo 2 archivos ejecutables virualenv, el normalvirtualenv
y ¿virtualenv-2.7
es esto normal ovirtualenv
se descargó dos veces? y así es como instalé virtualenv y virualenvwrapper en caso de que sea importantesudo pip install virtualenv
zsh
y también funciona con eso, por lo que es muy probable que sea un env. problema. Ignoremos las 2 configuraciones de virtualenv por el momento. Para depurar puede habilitarloset -x
, en su shell y luego volver a ejecutar elsource activate
comando nuevamente. Debería verPS1=
líneas donde se establece el indicador.Si está utilizando
virtualenvwrapper
yzsh
hay una serie de ganchos zsh en su~/.virtualenvs/
directorio que puede utilizar para personalizar sus entornos. Aquí hay un poco de información sobre estos. Puede forzar una actualizaciónPS1
que antepondrá el trabajo actualvirtualenv
a su indicador de shell agregando:a
~/.virtualenvs/postactivate
. Para eliminar la etiqueta cuando usteddeactivate
, agregue:a
~/.virtualenvs/postdeactivate
Lo único (plausible) que debería romper esto es la asignación de recursos
~/.zshrc
mientras se trabaja en unvirtualenv
fuente
No tienes que editar tu
~/.zshrc
.Dado que está trabajando con
virtualenvwrapper
él, es posible agregar opciones o enlaces a los$WORKON_HOME/post(de)activate
archivos.Si quieres ver más detalles consulta aquí .
El enlace de arriba me permite hacer lo siguiente:
En mi caso
$WORKON_HOME=~/Envs
porque modifiqué esta ruta cuando instalé virtualenvwrapper; si no lo hicieras, deberías tener la carpeta~/.virtualenvs
.Abra el archivo
postactivate
ubicado en$WORKON_HOME
Agregue estas líneas:
¡Ahorra y disfruta!
Obtendrás algo como esto:
(OPCIONAL) Si lo desea, puede editar el
postdeactivate
archivo para agregar esta línea:fuente
Acabo de probarlo en Ubuntu 14.04 y tuve el mismo problema. Para solucionarlo, agregue esto a su .zshrc
o ejecutar esto en la terminal
En Mac OS X tuve que hacer
fuente
Si conoce el tema que se está utilizando, puede agregar una función para recuperar el nombre base VIRTUAL_ENV activado y usarlo en la variable PROMPT en el archivo * .zsh-theme ubicado en ~ / .oh-my-zsh / themes / y eso debería hacer el truco!
Para mí era el tema predeterminado 'oh-my-zsh', es decir, 'robbyrussels' que estaba configurado.
Agregar el código anterior generó el siguiente resultado:
(kunkka.com) es el virtualenv que acabo de desactivar.
Después de editar el archivo de tema, no olvides buscar el archivo .zshrc.
fuente