【发布时间】:2021-11-13 12:03:31
【问题描述】:
- 我想编写一个 zsh-completion 脚本,该脚本完成与当前工作目录不同的目录中的文件。 (我可以存档,见下文。)
- 此外,用户应能够对已完成的命令使用通配符。 如何归档?
例子:
假设我们要完成一个名为rumple 的命令。 rumple 将来自~/rumple 的文件列表作为参数(可能是嵌套的目录/文件)。有效的调用可能是:
rumple pumple romple/pample
这意味着rumple 将有效地处理~/rumple/pumple 和~/rumple/romple/pample。
现在用于 rumple 的 zsh-completion 脚本 _rumple 可能如下所示:
#compdef rumple
_path_files -W ~/rumple
这完成了任务的第一部分:rumple p<TAB> 将完成到rumple pumple(假设 ~/rumple 中没有其他以 'p' 开头的文件)。但是第二部分不起作用。 rumple **/p* 应该完成到rumple pumple romple/pample,即使当前工作目录不是~/rumple。
【问题讨论】:
标签: shell zsh zsh-completion