Emacs の js-mode/javascript-mode にキーバインディングを追加する

Emacs の js-mode/javascript-mode にキーバインディングを追加する

Emacs 24 に web-beautify-* を追加したので、Mx web-beautify-js を実行して JavaScript ソース コードをきれいにフォーマットできます。

html-mode と css-mode にいくつかのキーバインディングを追加しましたが、正常に動作します。

(eval-after-load 'sgml-mode
  '(define-key html-mode-map (kbd "C-c b") 'web-beautify-html))
(eval-after-load 'css-mode
  '(define-key css-mode-map (kbd "C-c b") 'web-beautify-css))

ただし、js-mode および javascript-mode の次のスニペットは機能しません。

(eval-after-load 'javascript-mode
  '(define-key js-mode-map (kbd "C-c b") 'web-beautify-js))
(eval-after-load 'js-mode
  '(define-key js-mode-map (kbd "C-c b") 'web-beautify-js))

js-mode と javascript-mode にカスタム キーバインディングを追加するにはどうすればよいですか?

答え1

js-modeおよびそのエイリアスjavascript-modeは で定義されているjs.elため、代わりに を使用する必要があります。が(eval-after-load 'js ...)および で機能する理由は、これらのモードが モード自体と同じ名前のファイルで定義されているためです。sgml-modecss-mode

関連情報