Shellbye.github.io
Shellbye.github.io copied to clipboard
Oh My Zsh Python add virtualenv prompt info into pygmalion
Oh My Zsh
关于大名鼎鼎Oh My Zsh
,应该不需要过多的解释,一句话概括,就是它是一个很牛逼的shell
-zsh
的一个配置管理工具,它给我们的原本枯燥的shell
添加了很多特性,具体可以参看官网。
virtualenv
今天要说的是它之前缺失的一点点东西,熟悉Python
开发的人肯定是离不开virtualenv
的,它的一个作用是在同一台机器上,创建不同的依赖环境,让你可以在依赖完全不同的项目直接进行无缝切换。
问题
以上两个项目都是很不错的,但是他们之间有一点兼容问题,那就是使用Oh My Zsh
的时候,terminal中缺少了对当前虚拟环境的提示,如下图
其中的
[integrate_test4self]
就是对当前需要环境integrate_test4self
的一个提示,这样可以避免诸如因为不知道当前在哪个虚拟环境中而装错依赖包等的问题。
解决方案
有意思的是bash
是有这样的提示功能的,那么万能的Oh My Zsh
怎么可以没有呢,于是我提了一个Pull request
,添加了一个主题pygmalion-virtualenv.zsh-theme
来解决这个问题。
要想体验这个主题,你需要先更新Oh My Zsh
来获取最新的代码
# cd ~/.oh-my-zsh
# git pull
然后打开你的Oh My Zsh
配置
# vim ~/.zshrc
然后在其中添加或者修改以下内容即可
ZSH_THEME="pygmalion-virtualenv"