zsh 或 bash 是否有任何插件可以进行启发式文件名补全?

zsh 或 bash 是否有任何插件可以进行启发式文件名补全?

比如如果

$ ls
program_v1.21.rb
program_v2.01.rb
program_v2.01_final.rb

所以当我

$ echo progv2fin[TAB]

它完成到

$ echo program_v2.01_final.rb

肯定有什么东西,只是我没见过。

答案1

有了zsh,如果您使用的是补全系统,您可以执行以下操作:

zstyle ':completion:*' matcher-list '' 'r:|?=**'

这似乎有效。我不会假装我完全理解它是如何工作的,你可以阅读:

info -f zsh --index-search=matcher-list

还可以点击那里的链接:

info zsh 'Completion Matching Control'

了解详情。

相关内容