emacs密钥绑定

时间:2011-10-14 11:47:08

标签: emacs clojure key

我是emacs的新手,所以我需要简单的提示。我想使用Command-RET来评估最后一个表达式 - 为此:

的Clojure-mode.el:

(define-key map "\C-x\C-e" 'lisp-eval-last-sexp)

而且我不想更改原始的clojure-mode.el文件。如何定义将执行C-x \ C-e的键绑定,并将调用'lisp-eval-last-sexp?对我来说这将是一个很好的解决方案,因为我无法直接将Command-RET绑定到:

local-set-key

到'lisp-eval-last-sexp,emacs无法找到此功能。

提前谢谢, 鲍尔泰克

更新

最后我发现我需要写:

M-x
describe-key
^X ^E

它让我回答:

^X ^E runs the command slime-eval-last-expression, which is an
interactive Lisp function in `slime.el'.

It is bound to ^X ^E, <menu-bar> <SLIME> <Evaluation> <Eval Last
Expression>, <A-return>.

(slime-eval-last-expression)

Evaluate the expression preceding point.

[back]

然后我将我的键绑定到功能

'slime-eval-last-expression

感谢您的帮助:)

2 个答案:

答案 0 :(得分:2)

您可以重新绑定.emacs文件中的密钥,而无需更改clojure-mode.el,

(add-hook 'clojure-mode-hook
                '(lambda ()
                   (define-key clojure-mode-map 
                     "\e\C-x" 'lisp-eval-defun)))

答案 1 :(得分:1)

我相信你想把它设置为eval-print-last-sexp。这就是C-j必然会遇到的。