emacs lisp中setq和set-variable的区别是什么.我何时应该使用setq以及何时应该设置变量.
Sea*_*ean 27
set-variable是一个交互式命令,这意味着您可以键入M-x set-variable RET以交互方式提示输入变量名称和值. setq不是交互式命令,这意味着它只适合用Emacs Lisp代码编写.就个人而言,set-variable当我想给一个对我的文本编辑有直接影响的变量赋值时,我从不使用我的Lisp代码,只是交互式,例如(例如)设置indent-tabs-mode为t或nil.
另一个区别是setq可以一次设置多个变量.例如,在OS XI上的.emacs文件中有:
(setq mac-command-modifier 'meta
mac-option-modifier 'super)
Run Code Online (Sandbox Code Playgroud)
set-variable 不能那样做.