本文介绍了如何调试defadvice的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何解决涉及到defadvice的错误?
How can you go about debugging an error with a defadvice involved?
搜索解决方案我发现,由于调试困难,建议不要使用defadvice。对此表示赞同,但其他国家的缺点到处都是,而且我总是遇到甚至无法开始追踪的错误。
Searching for solutions all I can find is recommendations not to use defadvice because of the debugging difficulties. Amen to that, but other peoples defadvices are everywhere and I'm always running into bugs I can't even begin to track down.
推荐答案
我可能想到的另一件事:
One more thing I could think of:
-
临时重命名
defadvice
转换为defadvice-old
。
编写此新版本的 defadvice
:
(defmacro defadvice (function args &rest body)
`(progn
(put ',(cadr args) 'source-position
(cons byte-compile-current-file byte-compile-read-position))
(defadvice-old ,function ,args ,@body)))
- 一旦需要,请检查
(符号-plist<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>它将在使用宏的文件中的位置。
这篇关于如何调试defadvice的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!