emacs - 如何在 Emacs Lisp 中以编程方式设置自定义变量?

标签 emacs elisp customization

在 Emacs 中,某些变量在通过 M-x 自定义设置时具有特殊行为,当您通过 setq 设置相同变量时不会触发这些行为。 .是否有一种编程方式来设置此类变量,以便触发特殊行为,就像用户通过自定义设置了变量一样?

另外,是否有以编程方式将值保存到用户自定义文件的功能?我正在尝试实现将默认元素重新添加到列表中的功能,而不删除用户添加的元素。

最佳答案

customize-set-variable是您想要的,而不是custom-set-variables (这里不需要)。

一般来说,查看 defcustom 也是一个好主意。对于变量(用户选项),查看其 :set slot 等。不是必需的,但在您尝试以编程方式设置值之前知道它是很好的。

本回复一个help-gnu-emacs@gnu.org问题也可能有帮助:
http://lists.gnu.org/archive/html/help-gnu-emacs/2013-08/msg00544.html

更新:

您后来编辑了您的问题,还询问了有关保存新值的问题。为此,您可以使用 customize-save-variable .它设置并保存新值。

关于emacs - 如何在 Emacs Lisp 中以编程方式设置自定义变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18542892/

相关文章:

python - 如何在自定义颜色图中获取屏蔽值的透明度 (matplotlib/python)

linux - 如何从 emacs 中实际更改/设置环境变量

macos - mac os x上的showkey等效项?

emacs - 具有较少冗余的defface

iphone - 导航栏的自定义背景图像 - 大小调整和后退按钮着色

ios - UIAlertController 自定义

emacs - 组织模式时间表

emacs - 在 Emacs 中安装 Clojure 时,我收到很多警告和错误

emacs - 如何使用elisp将十六进制字符串转换为ASCII?

emacs - Emacs Elscreen-如何禁用“分屏”?