VIM中对象实例的Python自动完成

Ber*_*nnF 17 python vim autocomplete

当我尝试在对象上使用自动完成时,我在VIM中发现了一个奇怪的行为:

如果我在模块级别实例化对象,VIM自动完成将对我创建的实例起作用:

工作完成

如果我在函数或类中尝试相同时它不再工作:

非工作完成

有谁知道如何解决这个问题,还是没有办法让omnicompletion处理非模块范围内的实例?

Ber*_*nnF 14

即使它不使用Vim的omnicompletion插件,通过使用rope,ropemode和ropevim,也可以在方法中获得自动完成:

在此输入图像描述

虽然不是我想要的确实如此,但效果还不错.

我得到了这样的工作:我从这里安装了ropevim发行版并将以下行添加到我的.vimrc文件中:

" Rope AutoComplete
let ropevim_vim_completion = 1
let ropevim_extended_complete = 1
let g:ropevim_autoimport_modules = ["os.*","traceback","django.*", "xml.etree"]
imap <c-space> <C-R>=RopeCodeAssistInsertMode()<CR>
Run Code Online (Sandbox Code Playgroud)

现在按Ctrl + Space将显示绳索完成菜单.