加载给定的语言/文件类型?
例如:
snipmate附带javascript.snippets
我也加载了mootools片段,并将其添加到我的vimrc中:
autocmd FileType javascript set ft = javascript.mootools
现在我可以用
>股票js片段
> mootools片段
我想添加第三组代码片段javascript.myCustomSnippets,这也将为文件类型javascript加载.
当我尝试添加使用这样的自定义片段
autocmd FileType javascript set ft = javascript.myCustomSnippets
它覆盖/禁用mootools片段,但默认的JavaScript片段继续工作.
我该如何做到这一点,还是有可能吗?
ps:我知道我可以将我的片段添加到默认的javascript片段文件中,但是由于我的.vim / bundle /文件夹中已经同步了snipmate github repo,所以我想保留个人的东西与活的repo分开.
我的解决方案
最终使我的文件并行工作的具体解决方案是将这样的文件结构化(顺便说一下,我使用pathogen自动加载bundle dir)
~/.vim/bundles/ snipmate.vim/snippets/javascript.snippet vim-snippets.mootools/snippets/mootools.snippet vim-snippets.myCustomSnippets/snippets/javascript.snippets
关于组合几个片段,您可以使用ExtractSnipsFile函数.这应该做你想要的,而不会弄乱点缀的文件类型语法.
假设您有以下三个片段文件,全部在您的片段目录中:
> javascript.snippets
> mootools.snippets
> myCustomSnippets.snippets
在/ 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')
这将使所有这些片段与javascript文件类型相关联,不需要显式的自动命令.有关更多信息,可以尝试:help ExtractSnipsFile.