使用emacs-jedi自动导入模块
使用ropemacs,你可以做到类似这样的事情:
M-x rope-auto-import
这个功能会分析代码(我想是这样),并自动导入缺失的模块。例如,如果我写:
datetime.now()
它应该会为我添加这一行:
from datetime import datetime
(它总是使用 from ... import ...
这种形式)
在emacs-jedi中有没有类似的功能呢?
2 个回答
1
如果我们不考虑“绝地”那部分,而是关注“emacs”这部分,你可以在安装了 autoimport 之后使用下面的命令。
(defun my-python-autoimports ()
(interactive)
(save-buffer)
(shell-command (s-concat "autoimport " (shell-quote-argument (buffer-file-name))))
(revert-buffer t t))
3
Jedi 目前还不支持自动导入功能。(所以 emacs-jedi 也不支持这个功能)
现在有一些讨论在进行中,目的是要实现一些重构功能(这其中就包括自动导入)。不过,这个可能还需要大约一年左右的时间才能完成。