Dan*_*ler 2 debugging emacs trace elisp
我正在尝试跟踪 emacs lisp 中的函数。我正在尝试使用trace-function和朋友,但没有产生任何痕迹。缓冲区*trace-output*已创建,但未在其中写入任何内容。
这是问题的一个最小示例:
(progn
(require 'trace)
(untrace-all)
(defun f () 'hello)
;(trace-function 'f)
;(trace-function-background 'f)
(trace-function-foreground 'f)
(f))
Run Code Online (Sandbox Code Playgroud)
从*scratch*返回中执行此操作'hello,但跟踪信息不会写入*trace-output*或*scratch*。我已经尝试过上面三个跟踪函数中的每一个,但没有成功。
难道我做错了什么?如何获取要生成的跟踪信息?
包trace.el定义了全局变量inhibit-trace,它最初是nil。但是,输入调试器设置inhibit-trace为't,这将一直有效,直到调试器显式退出为止。简单地关闭*Backtrace*缓冲区并不会退出调试器。
我的问题是我在会话的早些时候进入了调试器并且没有明确退出它。
这种行为值得更多人了解:)
| 归档时间: |
|
| 查看次数: |
489 次 |
| 最近记录: |