如何清空或清除emacs minibuffer?

问题描述 投票:0回答:3

有一种方法可以清除迷你吧的内容?

注:当我

M-! echo usage: foo ; echo

迷你吧,含量更改为

usage: foo

注:我不在递归编辑中,小型ibuffer不活跃,使用
C-g, M-x C-g , (message nil), M-x delete-minibuffer-contents, M-: (kill-buffer " Echo Area 0")
没有清除minibuffer

通常,在这种情况下效果很好。它将在小型纸杯中打印“退出”,这只是一行,毫不客气。

如果您需要以编程方式清除迷你吧,请致电
emacs
3个回答
10
投票

如果出于某种原因,

(message nil)
不适合您,请制定一个新命令和一个清除MiniBuffer的钥匙

C-g


从您的描述中,我的猜测(“ MiniBuffer不活跃”),您对其他答案的答复是,这是需要清除的小型ibuffer - 它是

echoake区域。

这是相同的物理空间,但是回声区域用于输出(例如
(defun my-clear-message () (interactive) (message nil)) (global-set-key (kbd "C-c c") 'my-clear-message)

),而小型ibuffer主要用于输入。
清除回声区域,使用
message

4
投票
(message nil)

-例如。这通常会照顾好工作(但请参见下文,关于杀死回声区缓冲区,如果您真的需要清除它)。 如果确实是您要清除的小型输入,那么:

C-g

(如有必要,重复)退出MiniBuffer。

您可以使用任何文本清除键清除输入而无需退出。例如,
M-x C-g

会清除很多(它是

C-g

)。 i将
C-x DEL
(通常是
backward-kill-sentence
)绑定到删除所有迷你输入的命令(例如,在

icicles

中就是这种情况)。命令我不知道为什么有时Emacs拒绝杀死此缓冲区,但幸运的是它允许重命名它,因此它将不再被重复用于命令输出。

尽管我不明白为什么跟随小型ibuffer:
M-x switch-to-buffer


3
投票
trory按下

c-g

,这将清除回声区域。

上述没有帮助我。所以我开始调查并与
M-x rename-uniquely

一起回来。从互动帮助中:

(顶级)
退出所有递归编辑级别。
这也将退出所有活跃的小型填料。
	

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.