我偶尔会发现自己在自己编写的函数内部使用交互函数。如果某个函数要求提供某些信息(例如“输出文件:〜/”),是否有一种通用的省略号方式可将文本添加到小型缓冲区中,然后按Enter键,以便用户不必这样做?
例如,假设我想org-latex-export-to-pdf
在函数内部运行,但是我不想用户必须指定文件名。运行(org-latex-export-to-pdf)
会将点移动到迷你缓冲区,但是(insert "filename.tex")
在下一行放置类似内容似乎无效。
是的,我发现通常也是如此(不幸的是现在不是这样),这也许就是为什么很难找到答案的原因。你知道,如果有一个设计的原因真的希望用户键入了答案,从迷你缓冲区中提示?
—
塞斯·罗斯柴尔德
对我来说,您的评论不清楚。是否要查询用户并做出响应?如果不是,则以编程方式提供您想要/需要的参数值(输出文件名),并将其传递给函数。我建议您显示一些代码或以其他方式使您的问题和问题具体化,并弄清楚是什么,否则问题可能会因为不清楚而被关闭。
—
画了
我不希望查询用户。我可以澄清这个问题。在阅读了几年前涉及您的有关拉到微型缓冲区的电子邮件线程的一部分之后,我想我知道该怎么做。如果我能正常工作,我会写出来。
—
塞斯·罗斯柴尔德
请张贴一个您要在编写自己的函数时使用的交互式函数的特定示例,以便其他论坛参与者可以演示如何将参数传递给该函数并完全绕过小型缓冲区。
—
法律学家
interactive
子句中提示输入此类信息。从elisp调用时,您应该能够将信息作为函数参数传递。当然,如果您尝试调用的函数未遵循此设计,这对您没有帮助。