ZSH:按名称在子目录中标记完整文件
ZSH: tab complete file in subdirectory by name
我希望能够在 zsh 中键入一个文件名,点击选项卡,然后在我当前目录的任何子目录中查看与该名称匹配的文件列表。然后我可以通过这些结果按 tab 键并按回车键进入 select 某个文件,就像内置的 zsh tab 完成功能一样。
所需功能示例:
$ emacs app.css [tab]
*www/css/app.css* tmp/static/app.css
[enter]
$ emacs www/css/app.css
如果这不是目前的功能,我想我可以编写自定义完成脚本来实现它。
您可以通过使用 **
模式(匹配多个目录)并将控制函数 _expand
添加到 completer
样式(如果还没有的话)来实现类似的效果).
您至少需要进行以下设置:
autoload -U compinit
zstyle ':completion:*' completer _expand
compinit
然后你可以通过
得到想要的列表
% emacs **/app.css[TAB]
它甚至允许选择一次打开所有匹配的文件。
我希望能够在 zsh 中键入一个文件名,点击选项卡,然后在我当前目录的任何子目录中查看与该名称匹配的文件列表。然后我可以通过这些结果按 tab 键并按回车键进入 select 某个文件,就像内置的 zsh tab 完成功能一样。
所需功能示例:
$ emacs app.css [tab]
*www/css/app.css* tmp/static/app.css
[enter]
$ emacs www/css/app.css
如果这不是目前的功能,我想我可以编写自定义完成脚本来实现它。
您可以通过使用 **
模式(匹配多个目录)并将控制函数 _expand
添加到 completer
样式(如果还没有的话)来实现类似的效果).
您至少需要进行以下设置:
autoload -U compinit
zstyle ':completion:*' completer _expand
compinit
然后你可以通过
得到想要的列表% emacs **/app.css[TAB]
它甚至允许选择一次打开所有匹配的文件。