Mac OSX:最新的Emacs的键绑定不起作用

时间:2014-10-14 10:04:51

标签: macos emacs

基本上,我在MAC OSX上安装了最新的Emacs 24.3。我是Emacs的新手。

emacs中是否有.vimrc?它叫什么因为我想改变键绑定?

问题1:我希望将Ctrl设为C-,而不是CMDC-密钥。这是什么代码?

问题2:我注意到传统上我们将C- right arrow键作为Slurp并将C-left arrow键作为barf。但是在我的Mac上,他们不再工作,而是被C-M-jC-M-e取代。我花了一段时间才发现这一点。我想知道为什么很多关键绑定与Windows上的Emacs有很大的不同?如果我希望密钥绑定与Windows计算机上的密钥绑定一致,是否有方便的方法来执行此操作,还是必须手动重新映射每个密钥?

2 个答案:

答案 0 :(得分:2)

emacs的{​​{1}}等效词是所谓的init file,可以是.vimrc~/.emacs~/_emacs。< / p>

您可以使用~/.emacs.d/init.eldefine-keylocal-set-key命令更改键绑定,请查看博文Mastering Key Bindings in Emacs以获取更完整的介绍。

基本上,如果你想更改密钥 Ctrl + f 来打开文件,你必须添加

global-set-key

到你的配置。

您可能需要查看SO问题"Emacs on Mac OS X Leopard key bindings"以获取有关问题1 的帮助(使用命令作为 Ctrl )。< / p>

我不完全确定你的第二个问题是什么,但据我所知,没有办法告诉(global-set-key (kbd "C-f") 'find-file) 收集系统全局键绑定并在内部使用它们。因此,如果您的操作系统有一些您想在emacs中镜像的键绑定,则需要手动重新映射它们。

答案 1 :(得分:0)

  

问题2 :我注意到传统上我们将C-右箭头键设为 Slurp ,将C-左箭头键设为 barf 。但在我的Mac上,他们   不再工作了

在OSX 10.10.5上使用emacsformacosx,我可以使用以下关键序列slurpbarf

C-)   (slurp)  
C-}   (barf)  

M-(   (wrap)

以下是“Clojure for the Brave and True”的示例:

假设你有这个:

(+ 1 2 3 4)

你希望得到这个:

(+ 1 (* 2 3) 4)

首先,将光标(“点”)放在这里:

(+ 1 |2 3 4)

2将突出显示。)

然后点击M-(选项 + Shift + 9 )将2括在括号中:

(+ 1 (|2) 3 4)

然后输入*和空格:

(+ 1 (* |2) 3 4)

slurp 3,点击C-)(即 Control + Shift + 0 ):

(+ 1 (* |2 3) 4)

barf 3,将光标放在内括号内的任意位置并点击C-}(即 Control + Shift + ] ):

(+ 1 (* 2) 3 4)