Emacs Jedi 自动完成功能在 init 上不起作用

ore*_*ago 5 python emacs autocomplete jedi

前几天我通过 el-get 安装了 jedi 以及其他一些软件包,最初一切都很好(自动完成、弹出菜单等)。

然而,在过去的几天里,jedi 已经停止工作(即自动完成、弹出窗口和函数参数建议不再工作)。

我发现此功能不起作用的部分原因是,由于某种原因,启动时未启用自动完成功能。我尝试在 el-get 加载 jedi 之前和之后将 (setq auto-complete-mode t) 添加到我的 .emacs 文件中,但尽管启用了自动完成,但由于某种原因它仍然无法工作。相反,一旦 emacs 加载,我必须使用 Mx auto-complete-mode 启用自动完成(我也尝试了这里的建议Emacs auto-complete-mode atstartup,但这只会在 emacs 加载时引发大量错误)。

除此之外,当我输入 Mx jedi RET 时,jedi 故障排除页面上列出的一些命令(例如 jed:setup-keys)似乎丢失了。

我似乎也遇到了与此人相同的问题:emacs-jedi does not find numpy finishs,但我不确定这两个问题是否有关联。

cai*_*sah 3

我也遇到了同样的问题auto-complete-mode。我必须手动启动它。

作为一个完全的新手,我挣扎了一段时间,但得出了一个解决方案。也许它不是很优雅,但它有效...将其作为钩子添加到python-mode启用jedi ac之前。

;;enable jedi autocompletion in python
(add-hook 'python-mode-hook 'auto-complete-mode)
(add-hook 'python-mode-hook 'jedi:ac-setup)
Run Code Online (Sandbox Code Playgroud)