Emacs Lisp - 你应该在设置键之前取消设置它们吗?

Emacs Lisp - Should you unset keys before setting them?

如果我要重新定义一个键,我应该调用 (global-unset-key (kbd "key-combo")),还是使用函数 global-set-key 会自动为我调用它?

绝对不需要在设置之前取消设置密钥。

这类似于任何编程语言中的变量设置:您不需要在 foo = x 之前执行 foo = NULL。这种比较比人们想象的更接近,因为 (global-unset-key k)(global-set-key k nil).

相同

如 sds 所说,global-unset-key 实际上调用 global-set-key:

(defun global-unset-key (key)
  "Remove global binding of KEY.
KEY is a string or vector representing a sequence of keystrokes."
  (interactive "kUnset key globally: ")
  (global-set-key key nil))

所以设置和取消设置密钥实际上没有真正的区别。