#hook #elisp #message
Вопрос:
Я пишу крючок, чтобы добавить некоторые пользовательские привязки ключей в режим организации, это выглядит так:
(defun course-export-org-mode-hook ()
(define-key org-mode-map (kbd "C-x .") 'my-custom-func)
(message "Remember that we can use 'C-x .' to run my custom func."))
Я хотел бы показать сообщение в последней строке пользователю в качестве подсказки, чтобы помнить, что привязка клавиш активна.
Что происходит сейчас, так это то, что сообщение отображается очень кратко во время выполнения подключения режима, но до того, как содержимое файла будет фактически показано. К тому времени, когда буфер становится видимым, сообщение уже исчезло.
Как я могу показать сообщение после отображения содержимого файла и, возможно, оставить его на экране на некоторое время, чтобы у пользователя было время его прочитать?
Ответ №1:
Ваш код отлично работает для меня, поэтому я предполагаю, что что-то еще в вашей конфигурации блокирует это сообщение. Вы можете попробовать использовать таймер для установки сообщения после завершения любых синхронных действий:
(defun course-export-org-mode-hook ()
(run-with-timer 0 nil (lambda () (message "Remember that we can
use 'C-x .' to run my custom func."))))