Elisp:在交互式命令中询问是或否

时间:2010-12-21 07:27:20

标签: emacs lisp elisp

我是Emacs的新手,我正在尝试编写一些Emacs Lisp函数。

我想编写一个带有两个参数并可以处理交互的函数。但是,其中一个参数是布尔值 - 如果我可以使用(y-or-no-p),它就会很完美,但(interactive)似乎没有字符代码。

有什么想法吗?

更新:我正在使用GNU Emacs 23。

此外,这是我的功能到目前为止的样子:

(defun foo (str bool)
  (interactive "sSome text: \nsDo the thing?")
  (some-func str)
  (if bool (some-other-func str)))

2 个答案:

答案 0 :(得分:10)

啊,发现了。

(defun foo (str bool)
  (interactive
    (list (read-string "Some text: ")
          (y-or-n-p "Do the thing? ")))
  (some-func str)
  (if bool (some-other-func str)))

答案 1 :(得分:1)

不太确定你在问什么,但我找不到一个名为y-or-no-p的函数。你的意思是肯定还是没有?

这似乎符合我的期望。