【问题标题】:Inserting Text into an Active Minibuffer将文本插入活动的 Minibuffer
【发布时间】:2016-07-07 05:53:13
【问题描述】:

我正在尝试在运行外部命令后将文本插入迷你缓冲区。 E.G

(call-interactively 'eval-expression)
(insert "blah")

问题当然是在用户输入之前 eval-expression 不会返回。我的最终目标是将一些默认的 editable 文本添加到任意命令(即“默认字符串”或模板)的迷你缓冲区提示中。我怎样才能做到这一点?

【问题讨论】:

    标签: emacs minibuffer


    【解决方案1】:

    使用minibuffer-setup-hook:

    (defun foo () (insert "ABCDE"))
    
    (add-hook 'minibuffer-setup-hook 'foo)
    

    【讨论】:

    • 有没有办法在每次调用函数时都不需要添加/删除钩子来临时完成这个任务?我只在使用我的自定义函数时才想要这种行为。
    • 每次需要“临时”添加/删除即可。这并不昂贵。将添加/删除代码放在您使用的任何需要它的函数中。
    • 谢谢,我只是想确保没有更惯用的方法来做到这一点(添加/删除挂钩似乎有点浪费)
    • 不,这是惯用的方式:添加/删除挂钩。
    猜你喜欢
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    • 2015-09-10
    • 2018-04-20
    • 1970-01-01
    • 2011-04-15
    • 2013-07-28
    • 2011-11-28
    相关资源
    最近更新 更多