【发布时间】:2011-10-08 10:30:40
【问题描述】:
我们可以通过 "C-h ..." 获得帮助,并且 emacs 会显示一个 Help 缓冲区,并通过链接跳转到其他地方。如何使用 elisp 制作类似的内容、链接到另一个缓冲区或显示其他内容?
【问题讨论】:
-
感谢“按钮”和“可点击文本”
我们可以通过 "C-h ..." 获得帮助,并且 emacs 会显示一个 Help 缓冲区,并通过链接跳转到其他地方。如何使用 elisp 制作类似的内容、链接到另一个缓冲区或显示其他内容?
【问题讨论】:
内置的Button 包提供了一种方便的方式。例如,
(require 'button)
(insert-button "foo" 'action (lambda (x) (find-file user-init-file)))
将插入一个标记为“foo”的按钮/链接,当它被激活时(通过在点位于标签上方或单击中间时按Enter)将调出初始化文件。
这是另一个模仿 www 链接的示例,
(insert-button "fsf"
'action (lambda (x) (browse-url (button-get x 'url)))
'url "http://www.fsf.org")
请参阅 Elisp 参考手册38.17 Buttons。
【讨论】: