我有一个名为go-to-url的命令,我在我的lisp代码中调用它,这会打开一个网页,我只是传递一个值字符串,如下所示:
(go-to-url "www.yahoo.com")
然而,从M-x命令行使用此功能会很不错。有没有办法做到这一点?我没有尝试过的任何作品
答案 0 :(得分:11)
您将使用互动表格:
(defun go-to-url (url)
(interactive "sURL: ")
(do-your-stuff url))
通过这种方式,您可以在自己的口述和go-to-url
中使用M-x: go-to-url
,并且系统会提示您输入参数。
另请参阅我对您的其他问题的回复:Emacs: Is there a way to create a interactive script using Emacs?
答案 1 :(得分:1)
有一个函数可以执行这个`browse-url',它会提示你在点上浏览网址,或者你可以编辑/创建一个。
对于带有数字参数的函数,您也可以使用C-u,然后键入要传递给执行命令的值。
答案 2 :(得分:0)
在Icicles中,在任何使用迷你缓冲区期间(完成与否),您都可以点击insert a string that was saved in a variable or a register的密钥。
默认情况下,使用的变量是icicle-input-string
,但如果使用前缀arg(即 C-u C - = ),则会提示您输入要使用的变量。完成候选包括所有字符串值变量。
您可以使用命令icicle-save-string-to-variable
将字符串(例如复杂的正则表达式)保存到变量中。同样,默认情况下,变量为icicle-input-string
,但使用前缀arg会提示您输入变量。
您也可以随时点击 M - :并输入Lisp sexp进行评估,从而在迷你缓冲区中插入一个字符串。结果很漂亮,并插入迷你缓冲区。 (在Icicles中, M - :会打开一个递归的迷你缓冲区,并且可以打印出来。)