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))
所以设置和取消设置密钥实际上没有真正的区别。
如果我要重新定义一个键,我应该调用 (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))
所以设置和取消设置密钥实际上没有真正的区别。