如何针对特定模式覆盖 emacs lisp 中的函数?

发布于 2024-08-20 20:42:28 字数 54 浏览 4 评论 0原文

如何使用我自己的特定模式实现来覆盖 emacs 函数? 示例/参考会很好

谢谢

How can I override emacs function with my own implementation for a specific mode?
example/reference would be great

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

初心未许 2024-08-27 20:42:28

这似乎是一件奇怪的事情,但我想你可以通过建议该函数来做到这一点。示例:

(defadvice * (around ultimate-answer activate)
  (if (and (eq major-mode 'html-mode) (equal (ad-get-args 0) '(6 9)))
      (setq ad-return-value 42)
    ad-do-it))

评估此建议后,如果给 * 函数提供两个参数 6 和 9,则该函数将返回 42,但仅限于 html 模式。

This seems like an odd thing to want to do, but you could do it by advising the function, I suppose. Example:

(defadvice * (around ultimate-answer activate)
  (if (and (eq major-mode 'html-mode) (equal (ad-get-args 0) '(6 9)))
      (setq ad-return-value 42)
    ad-do-it))

After evaluating this advice, the * function will return 42 if it is given the two arguments 6 and 9, but only in html-mode.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文