如何在Emacs Lisp中保持全局状态,而不使用动态范围?

问题描述 投票:0回答:1

我知道我可以使用defvar创建具有动态绑定的全局变量。但是,最近不建议使用动态范围。我也知道我可以使用defcustom创建自定义变量。

如果我编写的程序需要存储一些内部状态(该程序使用词法绑定),该怎么办?加载包时,我是否只是简单地执行初始setq,仅此而已?目前推荐的方法是什么?

谢谢!

global-variables elisp
1个回答
0
投票

但是,最近不建议使用动态范围。

不是。

动态范围不建议用于仅需要进行词法范围分析的变量。仅此而已。

使用defvardefcustom仍然是您所谈论的用途正确的语言。

© www.soinside.com 2019 - 2024. All rights reserved.