vim-snipmate和supertab在一起

时间:2009-06-03 13:05:34

标签: vim

我刚刚尝试安装snipmate。 supertab已经在工作了。

它不起作用。即使在片段关键字后按Tab键也会触发完成。 我试图重新映射密钥(到c-m),但即使那时完成也会触发snipmate的安装。 (在重映射c-m之前没做任何事情)。

我在vimrc中做了这个映射。 doc告诉我在after / plugin / snipmate.vim中执行此操作,但此脚本未加载(根据:scriptnames)。

任何想法?

6 个答案:

答案 0 :(得分:21)

snipmate插件已经很久没有更新了。这就是为什么我开始友好的分支,我正在合并和协调这个(至少对我来说)必要的插件的进一步发展。

更多信息:https://github.com/garbas/vim-snipmate/blob/master/README.md

答案 1 :(得分:4)

我从vim.org运行旧版的snipmate时出现了类似的问题

编写它的人并不总是更新vim.org页面,但他确实在github上定期工作。

从下载链接here抓取最新副本,看看是否对您有帮助。

答案 2 :(得分:2)

你重新映射到<C-m>的是什么? <Tab>或你的插件函数调用?您是否在没有SuperTab的情况下尝试使用SnipMate?

两个插件的主要功能都硬连线到<Tab>,这使得它们的使用有点不可预测。我试过了,但我不喜欢它。

相反,也许你可以保留SnipMate(如果它自己工作)并将omnicompletion快捷方式重新映射到更容易的东西。我在.vimrc中有这些:

" change the mapleader from \ to ,
let mapleader=","

" omnicompletion : words
inoremap <leader>, <C-x><C-o>

" omnicompletion : filenames
inoremap <leader>: <C-x><C-f>

" omnicompletion : lines
inoremap <leader>= <C-x><C-l>

同样autocomplpop.vim效果很好。

答案 3 :(得分:1)

使用SuperTab 2.0版本。

请勿使用最新版本2.1,它不能互相帮助。

答案 4 :(得分:0)

我设法将SnippMate的TAB键重新映射到另一个键,在我的情况下是c-j,它运行正常:

ino <silent> <c-j><c-r>=TriggerSnippet()<cr>
snor <silent> <c-j> <esc>i<right><c-r>=TriggerSnippet()<cr>

我在after/plugin/snipmate.vim进行了更改。就我而言,:scriptnames 将文件列为已加载。

答案 5 :(得分:0)

在使用Tab时将其添加到.vimrc中,然后显示摘要列表。

au BufRead,BufNewFile *.py set expandtab au BufRead,BufNewFile *.sh set expandtab au BufRead,BufNewFile *.go set expandtab