【发布时间】:2010-03-09 05:12:17
【问题描述】:
我想暂时覆盖 kill-new 功能。我有一种方法我想重新实现 kill-new 仅在某些情况下有效,但我不想在此之上重新实现 kill-region 的特殊版本。 (kill-new 是从 kill-region 调用的)
由于 Emacs Lisp 使用动态范围,这应该是可能的,对吧? (另一方面,支持这似乎是一件不安全的事情,知道它可能会让我有点紧张......)
我已经尝试过使用 let 和 fset,但到目前为止还没有找到让它按预期工作的方法。所以,希望有人能在下面的伪代码中填空:
(defun my-kill-new (string &optional replace yank-handler)
(message "in my-kill-new!"))
(defun foo ()
(some-form-that-binds-a-function (kill-new my-kill-new)
(kill-region (point) (mark))))
some-form-that-binds-a-function应该是什么?还是我找错树了?
【问题讨论】: