2

我在 osx 上有一个带有 Emacs 24.3 的 JEDI 工作版本。自动完成功能很棒,除了我想评论的时候!我经常注释/取消注释我的代码部分,并希望有一种方法可以防止 JEDI 在我键入 # 时自动完成。任何建议或想法将不胜感激!

编辑:当我去评论多行时,我输入 # 通常后跟 DownArrow 和 LeftArrow,但启用 JEDI 通常会弹出此对话框,阻止我移动到下一行,直到我做出选择: 弹出的对话框

4

3 回答 3

2

您可以尝试使用company-jedi来完成 Python。这个包没有这个问题。

于 2014-03-19T16:38:09.937 回答
0

解决此问题的一种方法是选择要注释掉的行(区域)并点击M-;. 这将运行comment-dwim注释掉选定区域的命令(或取消注释,如果它当前被注释掉)。

当与 eg 结合使用时,mark-lines它允许您通过一次击键选择当前行,这使得(取消)注释部分代码非常快速,即使它们只跨越一两行。

于 2014-03-19T13:29:02.740 回答
0

emacs-jedi 开发人员在这里。如果 emacs-jedi 像您描述的那样工作,那么这是一个错误。

但我不能从我所掌握的有限信息中说出什么是错的。所以,只是一般的方向:

  1. 首先,始终尝试在干净的 Emacs 设置中重现错误行为,此处描述为http://tkf.github.io/emacs-jedi/latest/#quick-try

    这可以帮助您找出您的设置是否错误,或者它是否实际上是 emacs-jedi 中的错误。

  2. 给出 的输出M-x jedi:show-version-infohttp://tkf.github.io/emacs-jedi/latest/#jedi:show-version-info

    这有助于人们诊断问题。

  3. 这是您的屏幕截图中的猜测,但您似乎拥有旧版本的 popup.el。因此,如果您同时安装它们,也许 auto-complete.el 可能是旧的。如果您在安装最新库的干净 Emacs(我上面提到的第 1 步)中没有看到问题,那么更新它们可以解决问题。

更新

所以,我找到了一种方法来重现与您提到的行为接近的行为:https ://github.com/tkf/emacs-jedi/issues/147

但正如我在问题中所写,我认为这是一个罕见的情况。如果您发现一个可能非常频繁发生的案例,请告诉我。

于 2014-03-19T18:12:55.800 回答