在zsh中,我可以得到当前的git根:

% echo $(git rev-parse --show-toplevel)

我想用触发器动态地扩展到这个字符串。也就是说,我想将一些键字符串毫无保留地扩展到“当前git repo根”,然后继续从中选择文件/目录。
例如,如果触发器是“grt”,并且我键入:
% copy grt

tab,“grt”替换为当前git repo根目录(如果当前目录中不存在“grt”file/dir)。
感觉好像我必须以某种方式融入完成系统。有什么线索吗?

最佳答案

一种方法是在.zshrc中设置一个函数,例如:

function grt()
{
    git rev-parse --show-toplevel
}

然后使用(两个例子):
cd $(grt)
cp file1 $(grt)

08-27 11:26