curl
和命令的默认完成方式open
会尝试填写 URL。例如,输入curl <TAB>
给出
file: ftp:// gopher:// http:// https://
与当前目录中的任何文件一起。
我从来不想自动完成 URL,因此这些建议只是与我真正感兴趣的文件名等混合在一起的视觉噪音。如何防止 zsh 为特定命令提供 URL 完成?我怎样才能阻止它提供这个任何命令?
答案1
我在中找到了答案Mikael Magnusson 2011 年发表的文章到 zsh 用户邮件列表。
要防止 zsh 尝试自动完成open
命令的 URL,请运行
zstyle ':completion:*:open:argument*' tag-order - '! urls'
我相信你可以对所有命令执行此操作,而不仅仅是open
,通过说
zstyle ':completion:*:*:argument*' tag-order - '! urls'
如果您想在大多数情况下禁用 URL 自动完成,但在当前目录为空时允许它,请运行
zstyle ':completion:*:open:argument*' tag-order '! urls'