35

2 つのスニペットがある場合:

(global-set-key "\C-d" delete-char)

(define-key global-map "\C-d" delete-char)

両者に違いはありますか?もしそうなら、いつどちらを使いますか?

4

2 に答える 2

30

Functionglobal-set-keyは、入力することで呼び出すことができるインタラクティブな関数です。Functionはむしろ Lisp プログラムで使用されます。define-keyM-x global-set-keydefine-key

global-set-keyのソース コードを調べC-h f global-set-keyて、ラップのみであることを確認できますdefine-key

あなたの質問に答えるために、それらの間に大きな違いはありません。

于 2009-05-25T11:27:29.583 に答える
19

global-set-key は subr.el で次のように定義されています。

(define-key (current-global-map) key command))
于 2009-05-25T11:27:30.147 に答える