我想知道emacs中的某些交互式命令是如何显示默认值而其他命令则不是。例如,当我在C文件中并且光标位于printf
时,运行manual-entry
将建议默认显示printf
的手册页。我想用默认值创建自己的交互式命令。怎么样?
看起来事情是一个很好的方向,但我如何将点对点和互动融合在一起?
答案 0 :(得分:27)
您已经有了很好的起点来研究自己的解决方案。
在这种情况下, thing-at-point
可能很有用。我最近answered
一个问题,我通过探索解释了如何解决这类问题
Emacs代码库。
这是我想出的一个粗略的玩具功能。
(defun say-word (word)
(interactive (list
(read-string (format "word (%s): " (thing-at-point 'word))
nil nil (thing-at-point 'word))))
(message "The word is %s" word))
这里的一个关键是了解interactive
形式的工作原理。我会
仔细阅读相关的manual section。