2012-09-05 38 views
5

我一直在玩我的主目录中的.profile文件,为了在提示符上显示git分支,并且还显示rvm gemset和python virtual env Im目前在......主要所有工作正常,我遇到的问题是,为了根据分支的状态显示不同颜色的分支,我必须每次都执行source〜/ .profile,我也必须在为了展示CYAN中的python virtualenv。Mac OSX提示git分支知道

Theres得到一种方式或者我缺少的东西,这样我不必每次进入不同的文件夹时都运行source〜/ .profile,以便分支颜色基于状态。

继承人我的.profile

https://gist.github.com/3628788

感谢您的帮助搞清楚了这一点!

回答

6

使用PROMPT_COMMAND变量来定义一个函数,该函数在每个命令后设置您的PS1。在地方分配你应该在你的.profile文件的底部PS1

prompt_cmd() { 
    PS1="${PYTHON_VIRTUALENV}$PURPLE\$(set_rvm_prompt)$NO_COLOUR\[email protected]\h:[\W]${B_STATE}\$(parse_git_branch)$NO_COLOUR\$ " 
} 

PROMPT_COMMAND=prompt_cmd 

现在,显示你的提示之前,bash将执行功能prompt_cmd,根据PYTHON_VIRTUALENV的最新信息更新PS1set_rvm_prompt()parse_git_branch()

+0

我不得不将set_rvm_prompt和parse_git_branch添加到prompt_cmd,现在就像一个魅力!...继承人的更新文件https://gist.github.com/3354613 – maumercado