.emacs
ファイルで、特定のメジャーモードのキーバインディングを追加したい(coffee-compile-file
をに設定する) C-c C-c コーヒーモードで)。
local-set-key
とglobal-set-key
の使用方法について多くの説明を見つけたので、コーヒーモードでファイルを開いたら、このバインディングを簡単に追加できますが、これがあればいいのですが。 .emacs
によって処理されます。
モードフックを使用します。 C-h m
は、通常、サポートするフックを含む、メジャーモードに関する情報を表示します。それからあなたは次のようなことをします
(add-hook 'coffee-mode-hook ;; guessing
'(lambda ()
(local-set-key "\C-cc" 'coffee-compile-file)))
次のように、モード固有のマップでキーを定義できます。
(add-hook 'coffee-mode-hook
(lambda ()
(define-key coffee-mode-map (kbd "C-c c") 'coffee-compile-file)))
または、よりきれいに:
(eval-after-load "coffee-mode"
'(define-key coffee-mode-map (kbd "C-c c") 'coffee-compile-file))
2番目のステートメントでは、キー定義が1回だけ発生しますが、最初のステートメントでは、coffee-mode
が有効になるたびに定義が発生します(これはやり過ぎです)。
Emacs24.4に取って代わったeval-after-load
with with-eval-after-load
:
** New macro `with-eval-after-load'.
This is like the old `eval-after-load', but better behaved.
だから答えは
(with-eval-after-load 'coffee-mode
(define-key coffee-mode-map (kbd "C-c C-c") 'coffee-compile-file)
(define-key erlang-mode-map (kbd "C-c C-m") 'coffee-make-coffee)
;; Add other coffee commands
)