有没有Vim插件可以自动导入Python库?

17 投票
3 回答
4490 浏览
提问于 2025-04-16 04:46

在Eclipse这个编程工具里,你可以按下Ctrl+Shift+o这个组合键,自动导入你在代码中用到的所有库。请问在Vim这个编辑器里,有没有类似的插件可以实现Python的自动导入功能呢?

3 个回答

0

我正在使用这个链接里的工具,配合gutentags一起使用。对我来说,这样的组合已经足够好了(比什么都没有要好)。

1

有一个命令行工具叫做 mr.igor,你可以安装它。关于如何把它和 vim 连接起来的说明,可以在 pypi 页面找到:

http://pypi.python.org/pypi/mr.igor

8

有一个叫ropevim的工具。你可以在pypi上找到它。

这个工具的自动导入功能(可以添加缺失的导入)和整理导入功能(可以重新排列导入)都很好用,但有时候会有点“侵入性”,比如它会在你的项目里创建一个.ropeproject文件夹。Rope的代码补全功能也相当不错,所以我通常用Tab键来进行标准的代码补全,如果不够用,我会按Ctrl+空格来使用ropevim的自动补全。

以下是我在使用ropevim时的一些设置:

" Rope AutoImport and OrganizeImport
nnoremap <C-S-o> :RopeOrganizeImports<CR>0<CR><CR>
nnoremap <C-S-i> :RopeAutoImport<CR>

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

" Rope Menu
menu Python.Create\ Package :RopeCreatePackage<CR>
menu Python.Create\ Module :RopeCreateModule<CR>

撰写回答