如何在vim'scriptnames'命令中搜索

gec*_*kos 3 vim

vim'scriptnames'命令输出所有加载的脚本.问题是我找不到任何实用的方法来过滤/搜索/查找它.我想寻找一些脚本,而不必通过"蛮力"来做到这一点.

Sat*_*ura 5

没有script命令这样的东西,只有scriptencodingscriptnames(可以缩写为scr,根据:h :scr).我认为你在寻找scriptnames.

使用Vim 8,您可以使用以下方法过滤大多数命令的结果:filter:

:filter /pattern/ scriptnames
Run Code Online (Sandbox Code Playgroud)

(参见:h :filter).

使用旧版本的Vim,您可以在运行之前将所有消息重定向到文件:scriptnames,然后取消重定向:

:redir >file
:scriptnames
:redir END
Run Code Online (Sandbox Code Playgroud)

(参见:h :redir).或者,您可以将消息重定向到寄存器,然后将寄存器的内容粘贴到缓冲区:

:redir @a
:scriptnames
:redir END
:new
"aP
Run Code Online (Sandbox Code Playgroud)

最后,Tim Pope的插件脚本编辑器添加了一个:Scriptnames运行命令:scriptnames并将结果加载到quickfix列表中.