说我正在解析非常大的数据文件(每个文件大约有几兆字节)。我想通过查看这些数据文件来编写解析代码,所以我在Vim中有几个窗口,一些是代码文件,一些是数据文件。
在这种情况下,插入模式下的Vim字完成速度极慢,因为它试图扫描数据文件。为了避免这种情况,我想忽略这些具有非程序扩展名的数据文件(例如dat,txt而不是c,rb,py),但是要继续观看程序文件。所以最好的情况是我可以在单词完成时注册一些忽略忽略。
我怎样才能做到这一点?我看了h: 'complete',但我找不到我想做的事。例如,.vimrc中的set complete-=w
不满足我,因为它不仅忽略了数据文件,还忽略了程序文件,这完全破坏了单词的完成。
感谢您的帮助。
答案 0 :(得分:3)
您有两种选择:在Ticket cache: FILE:/tmp/krb5cc_0
Default principal: user1@ACMEAD.COM
Valid starting Expires Service principal
07/11/2017 12:25:02 07/11/2017 22:25:02 krbtgt/ACMEAD.COM@ACMEAD.COM
renew until 07/18/2017 12:24:59
选项中使用/重新配置完成源,或自己编写自定义完成。
对于后者,我的CompleteHelper library提供了帮助函数,使其非常简单。例如,SameFiletypeComplete plugin(基于该库)仅考虑具有相同文件类型的缓冲区。当然,任何自定义完成都不如内置完成,我的库目前仅限于缓冲区搜索(没有标签,字典等)
我个人会通过'complete'
制作未列出的大数据文件,并在单独的标签页中打开它们; :setlocal nobuflisted
的默认值会忽略这些(因为它不包含'complete'
值。)