rom*_*ovs 3 zsh alias tab-completion
我定义了一个别名:
alias school="cd ~/School/3BaFys/"
Run Code Online (Sandbox Code Playgroud)
快速转到3BaFys包含我今年需要的所有目录的文件夹。
zsh当我这样做时,有没有办法告诉我:
$school Num<TAB>
Run Code Online (Sandbox Code Playgroud)
这扩展到
$school Numerieke\ Methoden
Run Code Online (Sandbox Code Playgroud)
Numerieke \Methoden的子目录在哪里~/School/3BaFys/
例如,告诉 shellschool实际做了什么并让它变得聪明?
小智 5
是的。
我刚刚发现这篇文章描述了如何做到这一点。
基本上,您将别名重写为一个函数,然后在其上使用一些 compctl 魔法。
这应该可以解决您的问题:
school() { cd ~/School/3BaFys/$@; }
compctl -/ -W ~/School/3BaFys school
Run Code Online (Sandbox Code Playgroud)