【发布时间】:2017-04-29 01:57:57
【问题描述】:
我在 emacs 中安装了 jedi-mode 用于 python 编辑,因为我发现 C-. 和 C-, 对于跳转到定义和返回非常有用。然而,自动自动完成并不是我想要的。当我尝试使用安装了 jedi 的 emacs 时,它会不断尝试提出建议并弹出弹出窗口。如何配置 jedi 使其仅响应特定调用而不响应键入或光标移动?
我尝试设置(setq jedi:complete-on-dot nil) 和(setq jedi:tooltip-method nil),但这些只会禁用绝地的一些反应功能。如何禁用所有这些?
或者,如果我主要只是希望能够跳转到定义,是否有一个不同的 emacs 包会是更好的选择?
【问题讨论】:
-
如果您正在寻找的只是在定义之间跳转和跳转,那么dumb jump 可能适合您。我没有尝试过,但您要求的是包的整个前提。
-
jedi 检查 python ast,因此它可以向您显示变量属性等事物的定义。 dumbjump 是基于 grep 和 regexps 的,所以能力会差很多。
-
看来你可以直接启用
jedi-mode而不是调用jedi:setup。如果你这样做,“跳转到定义”绑定仍然安装,但自动完成的东西没有设置。 -
这对我不起作用:设置
jedi-mode而不运行jedi-setup给了我File mode specification error: (void-function jedi:mode)。 (但我想出了如何得到我想要的东西,并在下面发布了一个答案) -
请注意“jedi-mode”和“jedi:mode”的区别。我怀疑你试图运行后者。在没有额外配置的python文件中运行'jedi-mode'给了我没有自动完成的跳转绑定。无论哪种方式,我都很高兴您找到了适合您的解决方案。
标签: python emacs emacs-jedi