如何在Emacs Lisp中传递一个函数作为参数?

问题描述 投票:2回答:1

我试图将我创建的一个函数添加到一个钩子中,但是明显的(在我的Schemer头脑中)方法似乎并不可行。这个函数在2个地方使用,我想保持我的代码干燥,所以没有匿名函数。虽然我可以用lambda包住我的函数,但一定有更好的方法。

不工作。

(defun my-function ()
   ;; do my stuff)

(add-hook 'some-hook-list my-function)

我得到错误信息:

符号作为变量的值是void: my-function。

variables emacs
1个回答
6
投票

我想明白了。这是很简单的。只要引用这个函数就可以了。

固定的代码。 (defun my-function ();; do my stuff)

(add-hook 'some-hook-list 'my-function) ;;; There's a quote before my-function
© www.soinside.com 2019 - 2024. All rights reserved.