我正在尝试为我的snipMate插件创建一个新代码段.
我使用一些名为(即)myfile.endfile的文件
所有.endfile文件都应该具有与.html文件相同的"代码段".所以我做了
cp html.snippet endfile.snippet
Run Code Online (Sandbox Code Playgroud)
在我的〜/ .vim/snippets目录中.
SnipMate正在处理所有现有的片段,但不适用于我新创建的片段.对此问题的任何建议?
(顺便说一句:创建新的.snippet文件后,我:helptags ~/.vim/doc在vim实例中运行了命令.)
Xav*_* T. 10
这是因为Snipmate可以使用filetype,这是打开特定类型文件时设置的Vim选项.
例如,如果您打开,"index.html" filetype会自动设置为html.
要了解它的工作原理,请执行:
:e $VIMRUNTIME/filetype.vim  
作为初步测试,您可以:
1.打开test.endfile 
2.键入:set ft=endfile或:set filetype=endfile
3.检查您定义的片段现在是否有效  
为此,请在.vimrc中自动添加以下内容:
au BufNewFile,BufRead *.endfile set filetype=endfile
这意味着每次读取或创建以endfilefiletype选项结尾的新文件时都会设置为endfile.
(文件类型是一个任意字符串,它不必与文件扩展名相同)