您如何编写一个应该绑定(bind)到按键的 elisp 函数,该函数默认情况下不提示,但在 Ctrl-u 之前会提示用户输入参数。类似的东西(这是错误的语法,但我希望你明白)?
(defun my-message (&optional (print-message "foo"))
(interactive "P")
(message print-message))
(global-set-key "\C-c\C-m" 'my-message)
最佳答案
按照与您的示例相同的实现方式,您可以执行以下操作:
(defun my-message (&optional arg)
(interactive "P")
(let ((msg "foo"))
(when arg
(setq msg (read-from-minibuffer "Message: ")))
(message msg)))
关于elisp - 如何使用可选参数创建交互式 elisp 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9854595/