Events 为什么我的Emacs小部件是&x27;s:你从没打过电话吗?
我有以下elisp:Events 为什么我的Emacs小部件是&x27;s:你从没打过电话吗?,events,emacs,widget,elisp,Events,Emacs,Widget,Elisp,我有以下elisp: (require 'widget) (eval-when-compile (require 'wid-edit)) (defun testit () (interactive) (switch-to-buffer "*Widget Test*") (widget-insert "Test field: ") (widget-create 'editable-field :size 25 :notify (lam
(require 'widget)
(eval-when-compile
(require 'wid-edit))
(defun testit ()
(interactive)
(switch-to-buffer "*Widget Test*")
(widget-insert "Test field: ")
(widget-create 'editable-field
:size 25
:notify (lambda (widget &rest ignore)
(message (widget-value widget))))
(use-local-map widget-keymap)
(widget-setup))
它在新的Emacs缓冲区中创建一个文本小部件。我打算在每次更改时在minibuffer中显示小部件的值,但它似乎从未调用:notify函数。为什么不呢?它似乎不起作用,因为我无意中弄乱了widget.el,需要重新加载包。重新启动Emacs就成功了。你可能想接受自己的答案,这样问题就不会再公开了。@Thomas:我在发布后的两天内无法回答这个问题,但堆栈溢出对我以外的任何人来说都不明显。啊,对了,我记得有一次遇到过类似的问题。不过,谢谢你的体贴。我也经历过这种情况,你确定这是唯一的解决办法吗?我甚至从未打开过库/源。@ldionmarcil--我根本不确定这是唯一的修复方法,但它修复了它,而且我从未让它再次发生,所以我从未尝试过其他任何方法。