emacs迷你缓冲区中的可单击文本
如何将可点击文本放入emacs迷你缓冲区 例如,这段代码在文本缓冲区中生成可点击的文本,对我来说效果很好emacs迷你缓冲区中的可单击文本,emacs,elisp,Emacs,Elisp,如何将可点击文本放入emacs迷你缓冲区 例如,这段代码在文本缓冲区中生成可点击的文本,对我来说效果很好 (let ((map (make-sparse-keymap))) (define-key map (kbd "<down-mouse-1>") '(lambda() (interactive) (message-box "it works!"))) (add-text-properties 1 5 `(keymap, map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "<down-mouse-1>")
'(lambda() (interactive) (message-box "it works!")))
(add-text-properties 1 5 `(keymap, map
mouse-face highlight)))
因此,文本被放入一个没有这些属性的小型缓冲区中。
我也尝试了(属性化),但结果是一样的
[...]
(message (propertize "link"
'mouse-face 'highlight
'keymap map)))
这个怎么了
谢谢
消息
写入回显区域,而不是微型缓冲区insert
而不是message
,您也不会在那里看到文本您真正想做的是什么?您希望在微缓冲区中插入此类属性化文本的上下文是什么?微缓冲区在读取输入时处于活动状态。您可以启动读取,并在激活时将文本插入其中。我在微缓冲区上下文中使用属性化文本-
(与当前缓冲区一起)(窗口缓冲区(minibuffer window))[…])
。因此我尝试使用插入
而不是消息
,它在minibuffer中显示可单击的文本。这就是我需要的。谢谢。
[...]
(message (propertize "link"
'mouse-face 'highlight
'keymap map)))