使用snipmate + vim时,是否可以为给定的语言/文件类型加载许多片段文件?
例如:snipmate自带javascript.snippets
我还加载了mootools片段并将其添加到我的vimrc中:
autocmd FileType javascript set ft=javascript.mootools
现在我可以用了
我想补充一个第三组片段的,javascript.myCustomSnippets即会也加载文件类型javascript.
当我尝试使用类似的东西添加我的自定义
autocmd FileType javascript set ft=javascript.myCustomSnippets
代码段时,它会覆盖/禁用mootools代码段,但默认的javascript代码段仍然有效.
我如何实现这一目标,还是可能的?
ps:我知道我可以将我的片段添加到默认的javascript片段文件中,但由于我在我的.vim/bundle/文件夹中同步了snipmate github repo ,我想将个人内容与实时回购分开.
我的解决方案
最终让我的文件并排工作的具体解决方案是像这样构建我的文件(顺便说一句,我使用病原体来自动加载bundle目录)
~/.vim/bundles/
snipmate.vim/snippets/javascript.snippet
vim-snippets.mootools/snippets/mootools.snippet
vim-snippets.myCustomSnippets/snippets/javascript.snippets
Run Code Online (Sandbox Code Playgroud)
通过命名我的文件"javascript.snippets",它会自动加载默认值.
And*_*dev 17
Ruy Diaz对于个人的东西是正确的,你可以将所有自己的片段保存在"〜/ .vim/snippets"中,你就不会遇到github repo的任何问题.如果这对您不起作用,则该g:snippets_dir变量可能具有错误的值 - 只需在您的vimfiles中明确设置它.
至于组合几个片段,您可以使用该ExtractSnipsFile功能.这应该做你想要的,而不用乱码文件类型语法.
假设您有以下三个片段文件,都在您的代码段目录中:
创建一个文件"after/plugin/snippets.vim"并将以下内容放入其中:
call ExtractSnipsFile(g:snippets_dir.'javascript.snippets', 'javascript')
call ExtractSnipsFile(g:snippets_dir.'mootools.snippets', 'javascript')
call ExtractSnipsFile(g:snippets_dir.'myCustomSnippets.snippets', 'javascript')
Run Code Online (Sandbox Code Playgroud)
这会将所有这些片段与javascript文件类型相关联,不需要显式的自动命令.有关更多信息,您可以尝试:help ExtractSnipsFile.