Emacs - 使用部分类型命令在劣质shell中完成Python

时间:2015-06-22 19:18:35

标签: python shell emacs elpy

我倾向于在ipython shell中经常使用的一个功能是从历史记录中自动完成部分类型命令。在repl中,只能键入命令的前几个字母并点击 up ,在命令历史记录中查找以部分键入的字符串开头的最后执行的命令。

emacs中是否提供此功能?通过按 C-up ,可以调用python命令历史记录,但它不使用部分类型命令?

1 个答案:

答案 0 :(得分:1)

您可以使用comint-previous-matching-input-from-inputcomint-next-matching-input-from-input完成部分键入的命令。

默认情况下,它们绑定到 C-c M-r C-c M-s

如果您输入了l = 1,现在可以输入l并按 C-c M-r 以获得先前的结束。

如果您不想使用 C-c M-r 并喜欢使用向上箭头,请将此代码放入配置中。

(eval-after-load 'comint
    '(progn      
         (define-key comint-mode-map (kbd "<up>") 
            #'comint-previous-matching-input-from-input)
         (define-key comint-mode-map (kbd "<down>")
            #'comint-next-matching-input-from-input)))

现在你可以使用 up / down 箭头。