OS X
我在shell中经历过这个zsh
,打开的手册页。
$ type open
open is /usr/bin/open
$ man open
OPEN(1) General Commands
Manual OPEN(1)
NAME
open – open files and directories
当我键入open
并键入 tab 时,我会看到以下输出:
$ open
file: ftp:// gopher:// http:// https://
我从未尝试打开任何file:
, ftp://
, gopher://
, http://
, https://
,因此我只想抑制它们。是否可以抑制它们并仅查看文件/文件夹名称。
答案1
根据您的输出,open
它是 OS X 系统中的可执行文件。
因此,要修改其完成语法,您需要找出完成函数所在的位置并对其进行修改(我无法弄清楚如何以与仅修改复杂性相当的方式从完成列表中删除内容)现有功能)。
用于whence -v $_comps[open]
找出 的补全函数的open
定义位置。将该文件复制到您可以找到的位置,例如 /home/alper/bin/open_completion.zsh。
在那里,查找调用该函数的行_urls
(恰好是提供的完成参数函数file: ftp:// gopher:// http:// https://
)。它可能看起来像'*:URL:_urls'
一系列可行的论点。
您可能会删除该声明。
然后,添加要在 zshrc 中加载的函数。