是否可以将回声区域置于光标旁边?


12

问题:我发现将我的眼球从光标所在的位置上下移动到底部回声区域很累。

问题:是否可以使回声区域像工具提示一样动态地分配到我的光标附近?我搜索了软件包,但找不到一个。我不认为这是个新主意,必须有人做。


如果回显了几屏的文本怎么办?
wvxvw 2014年

@wvxvw,可能有一个后备机制。我已经针对特定情况实现了这一点。我很好奇是否已经有了通用解决方案。
abo-abo 2014年

2
如果使用专用框架,则是可能的。它来自名为oneonone的软件包。在评论部分中,其写道1on1-minibuffer-frame-flag is non-nil (the default value), then the minibuffer is shown in its own frame
Tu Do

1
这个问题密切相关。那是关于minibuffer input的,但是它有一个肯定的答案,因此您可能可以适应它。
马拉巴巴

Answers:


3

回显区域显式使用minibuffer窗口,因此除非更改答案,否则答案是“否,这是不可能的”(或者至少不是很实际)。

请参阅/programming/10063410/is-it-possible-to-separate-minibuffer-and-echo-area-in-emacs


但是,如果我拦截message了它以覆盖图而不是回声区域显示它?
abo-abo 2014年

当然,如果您只想要message。但是,还有许多其他功能可以输出到回波区域。我不认为这是一个小问题。根据链接的问答,请查看手册以了解范围。
菲尔2014年

1
特别要注意的是,有许多C函数可以绕过message并直接调用在其下实现消息传递的C函数之一。
phils 2014年

这是可悲的。我在考虑使用覆盖+一些代码来重定向消息缓冲区。
wangii 2015年

您可以有一个仅包含迷你缓冲区窗口的小框架。唯一的困难是,只要回声区域显示任何内容,它就会弹出。
马拉巴巴

5

正如@TuDo的注释所指示的(如果愿意,他可以将其更改为答案,在这种情况下,我将删除此答案),您至少可以使用独立的迷你缓冲区框架,并且可以将其放置在您喜欢的位置。

相对于默认设置的一个优势是,您始终只有一个地方可以查看输出消息(回显区域)和输入编辑(迷你缓冲区)。

您甚至可以使其位置动态变化-例如,使其接近当前输入焦点所在的位置。

一对一Emacs可以提供帮助。开箱即用,它使您可以决定将微型缓冲区帧放置在何处,但是要动态地重新放置它,则需要做一些额外的工作。

(EmacsWiki当前已关闭,但您也可以oneonone.el从MELPA 下载。)


想必您是指Wiki上的此页面?我不确定,但是您的链接无效。
威尔弗雷德·休斯2015年

@WilfredHughes:谢谢,我修复了链接。
提请
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.