在使用2个缓冲区调试期间(左侧是“编辑缓冲区”,右侧是“执行缓冲区”)我经常遇到需要将一行代码从“编辑缓冲区”复制到“执行缓冲区“并立即执行它(可能没有离开”编辑缓冲区!)。
是否存在绑定?如果没有,我该如何创建一个?
答案 0 :(得分:1)
可能值得询问您使用的是哪种语言以及使用何种语言或REPL。例如,如果您使用Slime with Common Lisp,那么通常不需要转到实际的REPL缓冲区来评估代码。在您的代码缓冲区中,您可以将点放在Lisp表单的末尾,然后执行C-x C-e
- 在emacs-lisp-mode中评估表单的相同绑定 - 它将在REPL中对其进行评估。我不记得了,但是C-M-x
可能在使用Slime的Common Lisp缓冲区中的工作方式与Emacs Lisp一样。
至少其他一些模式的工作方式相同 - 在shen模式的缓冲区中,你可以使用相同的方式使用相同的方式进行活动的下级会话,并且我使用的方案模式也是如此。我认为如果你有一个较差的REPL,相应的语言模式将重新绑定这些键来评估REPL中的表单,这是相当标准的。
可能值得......
答案 1 :(得分:1)
选择要执行的行和 C-c C-r 通常可以完成这项工作。只要hook
存在。
答案 2 :(得分:0)
我不知道现有的绑定,但您可以轻松创建一个宏来移动到另一个窗口,然后向后移动。整个过程将是:
C-x (
C-x o
C-y
C-u -1
,C-x o
C-x )
C-x C-k n yank-other-window
接下来,您要保存该功能并将其绑定到启动Emacs时加载的ELisp文件中的密钥:
M-x insert-kbd-macro <RET> yank-other-window <RET>
(global-set-key [C-M-.] 'yank-other-window)