Emacsの「define-key global-map」と「global-set-key」の違い

Emacsの「define-key global-map」と「global-set-key」の違い

人々がEmacsでキーボードショートカットを書く方法を観察しながら、私は2つの異なるパターンを見つけました。

一つの用途:

(global-set-key (kbd "M-N) 'select-next-window)

もう一つ:

(define-key global-map (kbd "M-N") 'select-next-window)

それらの違いは何ですか? Emacsにはすべて「グローバル」キーボードショートカットが定義されていませんか?

答え1

主な場合には大きな違いはないようです。

  • (global-set-key key command)それは(define-key (current-global-map) key command))、そして
  • describe-varglobal-map「キーマップは通常(必ずしもそうではありませんが)Emacsのグローバルマップです」と言います。
  • (current-global-map)「現在のグローバルキーマップを返します。」

しかし、Emacsドキュメント""グローバルキーマップについて話しても、複数のグローバルキーマップがどのように表示されるかはわかりません。

関連情報