Подтвердить что ты не робот

В чем разница между `global-set-key` и` define-key global-map` в Emacs

Если у вас есть два фрагмента:

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

и

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

Есть ли разница между этими двумя? Если да, когда вы будете использовать один над другим?

4b9b3361

Ответ 1

global-set-key определяется в subr.el как:

(define-key (current-global-map) key command))

Ответ 2

Функция global-set-key является интерактивной функцией на основе define-key, которую вы можете вызвать, набрав M-x global-set-key. Функция define-key скорее используется в программах Lisp.

Вы можете найти исходный код global-set-key с помощью C-h f global-set-key, чтобы увидеть, что он только обертывает define-key.

Чтобы ответить на ваш вопрос, между ними нет существенных различий.