在上篇文章里,谈到了gvim8.1里由于环境变量的设置问题,很多认为不是问题的操作反而成了问题。配置完vim-plug之后已经勉强能用了,所以下面继续配置Ultisnipet和vim-snippets,这两个插件是配合着用来自动提示和补全语句的,会极大提升工作效率。
首先用vim-plug下载安装这两个插件:在_vimrc下:
call
能够顺利完成,然后建立一个文件比如a.html测试一下,在vim中输入a然后输入空格,会自动补齐<a>....</a>,说明发挥作用了。
我们自己的snippet放哪里呢,很多文章说放在~/.vim/Ultisnipet下,无论是windows和linux,都建议这么操作。但实际情况是,编写的snippet根本用不了,比如编写了tex.snippet,建立一个tex文件测试,根本没任何提示,问题出在哪?
这种层出不穷的问题让像我这样的初学者大伤脑筋,根源就在于网上大部分纯粹是操作上的成功,换个环境可能根本行不通。尝试几种方法,仍然无法使自己的snippet发挥作用,我放弃 vim-plug了,换用vundle。
vundle首先文档上清晰太多了。按照教程一步一步很快就可以成功了,通过他的安装教程,我最大收获是知道了一个新的词,运行时路径。一句话理解他的重要性:
加载插件文件时根据runtimepath内部变量的值加载。所有runtimepath中的所有目录下名为plugin的子目录们下面所有以.vim结尾的文件都会被加载执行。那我们怎么知道运行时目录是哪个,方法如下:在cmd窗口中输入vim --version,会得到类似的结果:
搜索一下defualts.vim,就可以推测出来。实际是可以指定运行时路径的,比如vundle用了如下语句设运行时路径:set rtp+=~/.vim/bundle/Vundle.vim ,其中Vundle.vim是一个包含这个各种插件的文件夹。这样就可以把插件的.vim文件加载上了。但问题即使我vundle装好了ultisnipet和vim-snippets,还是出现了跟vim-plug同样的问题,即自己snippet不能运行,而html文件是可以的。
这就涉及到.vim,.vimrc和windows下的对应关系。
实际上.vimrc是很容易对应的,它对应于_vimrc,.vim的对应是vimfiles。所以当把~/.vim/Ultisnipet,拷贝到~/vimfiles/Ultisnipet下,自己的snippets就可以发挥作用了。
在实际操作过程中,vim --version是一个非常重要的参考,它基本给定了程序的运行框架,安装插件的时候要根据他的信息调整自己安装目录和环境变量。