我在这里和这里之前见过类似的问题,但是他们4岁,没有给出符合我要求的答案。
例如,如果我在Vim中输入Python代码:
os.path.join('my', 'path')
resp = requests.get('http://example.com')
HttpResponse('success')假设我的站点“packages”文件夹中有第三方模块“requests”和“django”,那么是否有任何Vim插件--它不使用Rope库--可以自动将相关的导入语句添加到Python文件中(包括内置和第三方模块,根据需要使用import或from ),如下所示:
import os
import requests
from django.http import HttpResponse虽然我传统上会使用古老的Rope包,但为了避免.ropeproject文件夹的开销,我一直在用现代的替代方法替换Rope函数。然而,我还没有找到汽车进口的Vim替代方案。
发布于 2018-10-16 19:19:06
我正在使用python s.vim (https://github.com/mgedmin/python-imports.vim)。将其与gutentags相结合,它几乎是完美的。完美的解决方案将创建所有导入,并在名称冲突的情况下神奇地猜测正确的模块,但我怀疑这是可能的。
更新2022-05-14:另一种方法是在pyright (https://github.com/dense-analysis/ale)和:ALEImport命令中使用Ale (https://github.com/microsoft/pyright)。
发布于 2022-03-15 17:25:49
晚会很晚了,但既然有这个问题,我还是给你一个新的答案吧。
对于这种性质的一切,我都使用coc-python。
就像魔法一样:

唯一的警告是,您必须按Ctrl-y来接受自动导入建议。
确保您没有在插入模式下将Ctrl-y映射到其他任何东西(例如,一个名为Emmet映射的通用插件)。
https://stackoverflow.com/questions/29580323
复制相似问题