首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以使用jedi-vim插入import语句吗?

可以使用jedi-vim插入import语句吗?
EN

Stack Overflow用户
提问于 2016-07-16 20:03:18
回答 2查看 460关注 0票数 2

我刚刚开始看Vim jedi插件,它看起来非常令人印象深刻。我使用过的一些Java的一个特性是能够自动添加所需的导入。绝地武士能做到吗?例如,如果我输入一行,例如

代码语言:javascript
复制
arg1 = sys.argv[1]

然后调用一些Jedi命令,插件是否可能自动在源文件的顶部插入一条import sys行(如果sys还没有被导入)?

我看过绝地武士的帮助,看不到这样的东西--但我可能漏掉了什么。或者,有没有其他Vim插件可以做到这一点?(它需要对Python语法有一定程度的理解才能做到这一点,这就是为什么我希望绝地能够做到这一点)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-17 16:39:41

目前绝地不做重构。这包括导入添加。整个主题都有一个问题:https://github.com/davidhalter/jedi/issues/667

要以良好的性能实现此命令并非易事。然而,任何帮助都是非常感谢的。:)

票数 1
EN

Stack Overflow用户

发布于 2016-07-18 17:16:24

顺便说一句,我已经定义了一个可以在lh-dev中按需使用的通用导入功能。我在我的C&C++套件和snippet engine (mu-template)中使用它。

到目前为止,我还没有解析任何东西来添加缺少的import/include语句。正如Dave所说,这一部分会很复杂。相反,我的代码片段知道哪些文件需要导入/包含,如果还没有导入/包含,则导入/包含它们。

这离完美还很远,但这是一个开始。mu-template提供了一个钩子,用于在代码段展开后在文件的开头做一些事情,这就是我调用lh-dev函数的地方。如果其他代码片段引擎提供类似的钩子,您应该能够从代码片段中调用lh#dev#import#add()

下面是Python的概念验证代码片段(我很少用Python编程,也没有太多的代码片段):https://github.com/LucHermitte/mu-template/blob/master/after/template/python/path-exists.template

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38411010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档