5

当我在 emacs 中以文本模式(即在终端中)运行 IPython 时,我没有得到任何选项卡完成。它没有给出制表符完成,而是跳过四个空格。

当我在普通 GUI 模式下运行 emacs 时,tab 完成效果很好。

有没有办法为文本模式解决这个问题?

我正在使用 Linux Mint 15、Emacs 24.3 和 IPython 1.1.0

4

3 回答 3

1

尝试这个:

(eval-after-load "python"
  '(define-key inferior-python-mode-map "\t" 'python-shell-completion-complete-or-indent)

如果这对您有用,则您可能会遇到配置错误的问题,该问题会阻止 python 模式在您的设置中正确加载。

于 2013-11-14T11:21:23.413 回答
1

我最近遇到了同样的问题,经过一番搜索,我发现这个问题是由 和 之间的差异引起<tab>TAB。Emacs wiki 有一个页面描述了不同之处:http ://www.emacswiki.org/emacs/TabKey 。

在我的 python.el 中,python-shell-completion-complete-or-indentis bind to <tab>which 适用于 GUI 但不适用于 CLI。将绑定更改为TAB将解决此问题。

于 2015-05-27T01:03:32.273 回答
0

不是从纯 shell 启动 IPython,而是从 python 模式启动。

M-x run-python RET带有附带的python.el,并进行了python-shell-interpreter相应的定制。

响应。M-x IPython RET使用 python-mode.el

于 2013-11-14T12:33:11.907 回答