【问题标题】:emacs cider clear REPL bufferemacs cider 清除 REPL 缓冲区
【发布时间】:2016-12-20 18:06:12
【问题描述】:

我只是想清除 repl 缓冲区,以便在第一行留下一个提示,例如 (user>)。

我有一个键绑定:

(put 'erase-buffer 'disabled nil)
(global-set-key (kbd "C-x C-<backspace>") 'erase-buffer)

但这给出了信息:

文本是只读的

C-c C-o 选项,但这只会清除最后一个返回值。

使用python时,run-python下面的命令C-x M-o我相信是comint-clear-buffer

【问题讨论】:

  • cider 缓冲区是只读的,因此您将无法在其中执行任何编辑命令。你可以把它变成一个可写的缓冲区,但我不认为这是明智的
  • 在我的inf-python-mode C-x M-o 什么都不做,你能输入C-h k C-x M-o 看看它调用了哪个函数吗?
  • 我试过了,但它什么也没给我...不得不挖掘直到我发现它在comint中定义

标签: emacs cider


【解决方案1】:

cider-repl.el 提供了一个函数cider-repl-clear-buffer,默认绑定到:

M-x c-r--bu RET

据我所知,cider-repl 不使用C-c M-b

(add-hook 'cider-repl-mode-hook
      '(lambda () (define-key cider-repl-mode-map (kbd "C-c M-b")
            'cider-repl-clear-buffer)))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多