6

我在这里这里之前看到过类似的问题,但是它们已经 4 岁了,并且没有产生符合我要求的答案。

如果我在 Vim 中输入 Python 代码,例如:

os.path.join('my', 'path')
resp = requests.get('http://example.com')
HttpResponse('success')

假设我的站点包文件夹中有第三方模块“requests”和“django”,是否有任何不使用绳索库的 Vim 插件可以自动将相关的导入语句添加到 Python文件(对于内置模块和第三方模块,都可以使用importfrom根据需要使用),如下所示:

import os
import requests
from django.http import HttpResponse

虽然我传统上会使用古老的 Rope 包,但我一直在用现代替代品替换 Rope 函数,以避免 .ropeproject 文件夹的开销。但是,我还没有找到用于自动导入的 Vim 替代方案。

4

2 回答 2

2

我正在使用 python-imports.vim ( https://github.com/mgedmin/python-imports.vim )。将它与 Gutentags 插件结合起来,它几乎是完美的。完美的解决方案将创建所有导入并在名称冲突的情况下神奇地猜测正确的模块,但我怀疑这是可能的。

于 2018-10-16T19:19:06.423 回答
1

看看vimpy。根据它的描述,它可以满足您的需求。

请注意,它需要pyflakes

于 2015-04-11T18:12:17.860 回答