栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何更改默认的virtualenv提示?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何更改默认的virtualenv提示?

默认情况下,当使用命令“ workon
”切换到virtualenv时,virtualenvwrapper将在字符串(())前面添加一个字符串。问题是我在行中设置了Bash提示符:

prompt_COLOR1='0;36m'prompt_COLOR2='1;34m'PS1='n[33[$prompt_COLOR1](t)[33[$prompt_COLOR2] u @ w n[33[$prompt_COLOR1]$ [33[0;39m]'

这将产生以下命令提示符:

< old_line >(19:11:05) kevin @ ~/research $

使用“ workon ”切换到新的虚拟环境会将命令提示符更改为:

< old_line >(< name_of_env >)(19:11:05) kevin @ ~/research $

这比我想要的更混乱,而且启动的颜色错误。我希望有这样的东西:

< old_line >(< name_of_env >) (19:11:05) kevin @ ~/research $

IanBicking之前曾指出过virtualenvwrapper的钩子是解决方案,但我认为我会发布我的实际代码以节省一分钟的时间。

我只是编辑$ WORKON_HOME / postactivate文件以包括以下行:

# color virtualenv name properly and put it after the n if there is one at the start of the promptif [ ${_OLD_VIRTUAL_PS1:0:2} == 'n' ]; then    PS1="n[33[$prompt_COLOR1](`basename "$VIRTUAL_ENV"`) ${_OLD_VIRTUAL_PS1:2:${#_OLD_VIRTUAL_PS1}}"else    PS1="[33[$prompt_COLOR1](`basename "$VIRTUAL_ENV"`) $_OLD_VIRTUAL_PS1 "fi

和瞧!颜色和位置是正确的,甚至当您直接从一个虚拟环境切换到另一个虚拟环境(我没想到)时,它甚至也可以使用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/639868.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号