在Spacemacs(或Emacs)中,是否可以将键绑定到其他键?

时间:2017-09-04 07:10:19

标签: emacs keyboard-shortcuts key-bindings spacemacs remap

这是一件很难找到的事情。在Spacemacs(或Emacs)中,是否可以将给定的键组合设置为执行另一个键组合应该执行的操作?

换句话说,是否有可能让F5键始终执行组合C-c C-c应该执行的任何操作?类似的东西:

(global-set-key [remap (kbd "F5")] (kbd "C-c C-c")) 

让我举一个明确的具体例子。组合键C-c C-c通常用于将当前缓冲区的整个代码发送到解释器/控制台,如果代码驻留在.py文件中,则将缓冲区的代码发送到Python解释器,或者在.R文件中将包ESS发送到R控制台。

现在,假设有人希望将F5密钥设置为这两种语言,甚至可能更多。一个明显的解决方案是简单地实现每个包不同的键绑定。但是,如果可以简单地说:只要按下F5,它就会变得更容易,它应该导致与被调用的C-c C-c相关的任何命令。

有可能有这样的事吗?我对Spacemacs这样做特别感兴趣,但当然可以接受Emacs的更通用的答案。

1 个答案:

答案 0 :(得分:1)

尝试

(define-key key-translation-map [f5] (kbd "C-c C-c"))

它应该可以解决你的问题。