vim怎么做完整的自动补全

vim怎么做完整的自动补全,第1张

vim怎么做完整的自动补全的解答如下

首先下载一个插件:ctags

输入:sudo apt-get install ctags

进入你需要的关键词所在目录。

举个例子,我需要wordpress的相关函数。则进入wordpress的目录。

输入:ctags -R

这样就可以扫描整个目录的文件中的关键字。

同时会输出个tags文件。

将tags文件移动到你便使用vim编辑文件的位置。如我需要为wordpress制作个主题,则将tags移动到新建的主题目录下。

现在在这个目录下使用vim就可以自动补全tags中的关键字了。

使用快捷键ctrl+n就可以自动补全了。

总的来说是要设置 omnifuc 这两个参数到你指定的函数上。这样按 c-x c-o 时就会调用相应的函数了。当然设置 completfuc 这个参数也行,这个是用 c-x c-u 来调用。

当然你打开一个文件之后,比如 .c 文件。然后可以看看 :set ofu? 是不是已经设好了。如果没有,可以自动手动设置一下,看看补全函数的效果满不满意。

如果好用,当然每次都手动设置是不现实的了。一般要在 filetype plugin 里设置。设置在 vimrc 不合适,主要是因为这些补全一般不是通用的,不可能在所有的文件里都用一样的。你要以到安装目录下的 fyplugin 里找找你想要文件类型的插件(如果没有,也不可能有相关的补全函数,你就只能网上找一个或者自己写一个了),然后打开,搜搜 omnifuc 或者 ofu,如果有,说明已经设置好了,应该可以直接用。如果没有,你就自己再最底行加上:

if exists('&ofu')

setlocal ofu=<你要的函数>

endif

然后搜 undo_ftplugin。多半这个变量已经有了。假如原来是这样的:

let b:undo_ftplugin = "setl xxx<"

就改成

let b:undo_ftplugin = "setl xxx<ofu<"

如果没有加上这行:

let b:undo_ftplugin = "setl ofu<"

手打不易,请采纳。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6214560.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-18
下一篇 2023-03-18

发表评论

登录后才能评论

评论列表(0条)

保存