Ответ 1
У вас уже есть хорошие отправные точки для исследования собственного решения.
thing-at-point
, вероятно, полезен в этом контексте. Я недавно ответил
вопрос, на котором я объяснил, как решить эту проблему, изучив
База данных 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
. я бы
внимательно прочитайте соответствующий раздел руководства.