【问题标题】:How can I locate the defadvice for an advised function in Emacs?如何在 Emacs 中找到建议功能的默认建议?
【发布时间】:2012-06-10 08:40:02
【问题描述】:

当我查看beginning-of-defun 的文档时,有一条注释:

This function is advised.

Around-advice `senator':
Move backward to the beginning of a defun.
If semantic tags are available, use them to navigate.

但是我找不到调用 defadvice 的 .el 文件。有没有办法导航到定义建议的原始文件?

编辑:虽然我标记了正确的 Phils 对 .el 文件进行 rgrep 的建议,但我仍然希望有一些更优雅的方法可以追溯到 defadvice。

【问题讨论】:

  • 我同意。您无法自动找到这些类型的定义似乎有些异常。
  • 关于这个主题的讨论在another question 中继续进行,最终我偶然发现了一个技巧,可以更轻松/更一致地提供此信息。将此评论留给未来的谷歌员工:)

标签: emacs elisp advising-functions defadvice


【解决方案1】:

据我所知,没有办法导航到 defadvice 表达式的位置(我很高兴被证明是错误的)。

这应该可以追踪到它:

M-x rgrep RET (defadvice 'beginning-of-defun RET *.el RET ~/.emacs.d/ RET

(否则,site-lisp 目录将是下一个查看位置)

您也可以像这样查看建议数据结构(但这不包括您要查找的信息)。

(ad-get-advice-info 'beginning-of-defun)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-24
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多