Zsh项目环境变量

Zsh项目环境变量,zsh,Zsh,我一直在试图找到如何为ropevim自动查找的rope项目设置目录(我仍然没有成功),在这样做的过程中,我在zsh中发现了$project环境变量 一旦我将此变量设置为特定路径,例如项目的根 ~ # cd my_project_folder ~/my_project_folder # export PROJECT=`pwd` 更改提示,以便打印相对于项目根的所有路径,如下所示 PROJECT # cd sub_folder PROJECT/sub_folder # 这非常简洁,因为它缩短了路

我一直在试图找到如何为ropevim自动查找的rope项目设置目录(我仍然没有成功),在这样做的过程中,我在
zsh
中发现了
$project
环境变量

一旦我将此变量设置为特定路径,例如项目的根

~ # cd my_project_folder
~/my_project_folder # export PROJECT=`pwd`
更改提示,以便打印相对于项目根的所有路径,如下所示

PROJECT # cd sub_folder
PROJECT/sub_folder #
这非常简洁,因为它缩短了路径,但我想更改提示符以显示例如项目名称,而不是
project


我曾试图在
zsh
文档中搜索任何有关此环境变量的内容,但没有找到。以前有人遇到过这个变量吗
bash
似乎忽略了这个环境变量。

您可能会使用特定于项目的变量

例如,对于目录结构:

~/projects/foo
~/projects/foo/bar
在您的
~/.zshrc
中:

FOO=~/projects/foo
您的提示可能与此类似:

 ~/projects  #ls
foo
 ~/projects  #cd foo 
 ~FOO  #ls
 bar
 ~/FOO  #cd bar
 ~/FOO/bar  #
这用于展开提示符中的当前目录:

%d
%/
相同,但如果当前工作目录的前缀为命名目录,则该部分将替换为一个
~
,后跟目录名


(在链接的
man zshmisc
页面的“简单提示转义”下找到)

啊,这现在讲得通了。我想这是一个特殊的变量名。这真的很酷,谢谢。变量名
项目
没有什么特别之处,您看到的只是zsh“命名目录”的效果。(正如下面答案中所指出的)您也可以调用变量
PROJECT1
,或
FOOBAR
或其他任何东西,因为它包含一个重要的路径名。