Emacs:有没有调试模式我可以检查变量值的变化位置?

时间:2014-09-13 19:03:36

标签: emacs elisp

是否有调试模式我可以检查Emacs中变量值的位置(哪个文件中的哪一行)?

2 个答案:

答案 0 :(得分:1)

我很确定你运气不好。 然而,并非所有人都迷失了。

全局变量

使用Common Lisp可以使用 define-symbol-macro, 但是Emacs Lisp没有它。

你需要评估

(defun my-func-name ()
  my-var-name)

(defsetf my-func-name (val)
  (warn "my-var-name=%s" val) ; or `error'
  (setq my-var-name val))

然后您必须在my-var-name中搜索并替换(my-func-name) 来源,也用(setq my-var-name ...)替换(setf (my-func-name) ...)并重新编译和重新加载源。

本地变量

let替换为symbol-macrolet

答案 1 :(得分:0)