Vim snipMate不';t expand insted删除触发器

Vim snipMate不';t expand insted删除触发器,vim,code-snippets,snipmate,Vim,Code Snippets,Snipmate,我使用snimpmate和vim snippets插件,一切正常。直到我尝试删除vim代码段并使用我的自定义代码段“ruby.snippets”on.vim/snippets”。我认为代码片段是在fire TAB或任何触发器删除文本时加载的。。。并留下空白 def hello if |TAB| end 导致 def hello end 是否存在相同的问题您提供的信息很少,无法帮助您进行故障排除。这里有一个函数(来自my),可用于访问当前定义的代码段: 为了能够访问其代码片段,必须对s

我使用snimpmate和vim snippets插件,一切正常。直到我尝试删除vim代码段并使用我的自定义代码段“ruby.snippets”on.vim/snippets”。我认为代码片段是在fire TAB或任何触发器删除文本时加载的。。。并留下空白

def hello

 if |TAB|

end
导致

def hello

end

是否存在相同的问题

您提供的信息很少,无法帮助您进行故障排除。这里有一个函数(来自my),可用于访问当前定义的代码段:

为了能够访问其代码片段,必须对snipMate进行修补。打开
~/.vim/plugin/snipMate.vim
,并在底部插入以下功能:

fun! GetSnipsInCurrentScope()
    let snips = {}
    for scope in [bufnr('%')] + split(&ft, '\.') + ['_']
        call extend(snips, get(s:snippets, scope, {}), 'keep')
        call extend(snips, get(s:multi_snips, scope, {}), 'keep')
    endfor
    return snips
endf
现在,您可以通过检查为当前缓冲区定义了哪些代码段

:echo keys(GetSnipsInCurrentScope())