1

我使用 Pathogen 安装了这两个插件,但它们不能正常工作。也就是说,如果我使用 TAB,我会得到 SuperTab 的完成(自动完成我之前编写的内容),而如果我使用 CTRL + SPACE,我会得到 Jedi 的完成(来自库的所有内容:类、模块等)。

理论上,如果两个插件都安装了 SuperTab 应该可以无缝处理 Jedi,但我的情况不是这样。我发现这份报告显示一些人经历了相同的行为,而另一些人则说这对他们有用。虽然没有提供解决方案。

我正在使用的插件不会相互覆盖:

ls ~/.vim/bundle/
auto-pairs  nerdtree  syntastic    vim-trailing-whitespace
jedi-vim    supertab  vim-airline

那么还有什么可能导致这种行为呢?

vimrc:

set nu
set ts=4
set sw=4
set mouse=a
set showmatch
set expandtab
set background=dark
syntax on
filetype plugin indent on

execute pathogen#infect()

set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
4

1 回答 1

1

找到了问题的根源。SuperTab 在 OmniCompletion 模式下不工作。

let g:SuperTabContextDefaultCompletionType = "<c-x><c-o>"

于 2015-11-11T16:57:56.270 回答