我已经厌倦了emacs用它的输出来破坏我的窗户,并且不可预测地在那里。我想在emacs框架中有几个窗口,并且每个窗口仅用于特定目的。例如,
ECB panels | Editor 1 | Editor 2 | Bookmarks+
------------------------------------------------
"Messages" (output buffer)
因此,当我运行M-x compile
时,我希望输出始终进入消息。类似地,当我运行M-x magit-status
时,我也想要消息中的结果。单击书签或按C-x r b
应打开文件并将光标置于编辑器1中。
我已经尝试了一些lisp片段来“锁定”窗口以防止更改,但是当所有窗口都“锁定”时,emacs会疯狂,因为它找不到可用的窗口来输入新的输出。 emacs的这个令人讨厌的缓冲交换功能必须回到80x25字符终端日。
我从未见过ECB窗户被破坏,所以它必须以某种方式可行。
答案 0 :(得分:2)
您明确要求专用窗口。好吧,Emacs正是这个功能: 专用窗口 。 C-h r g dedicated windows
告诉你几乎所有你需要知道的事情。
但另请参阅special-display-buffer-names
和special-display-regexps
---或者如果您是受虐狂,请与display-buffer-alist
混在一起做同样的事情。
使用display-buffer-alist
,您原则上可以您可能想到的任何,包括将内衣打结并将其点燃。
(我,我只是将special-display-regexps
设为("[ ]?[*][^*]+[*]")
。)
答案 1 :(得分:0)
在打开物品前致电lockon-window。再次打电话给所有窗户。设置将所有内容发送到窗口很容易:消息;然而,要向窗口显示一个缓冲区:来自窗口的Editor-1:书签+没有调用lockon-window,我的力量太难了。我希望slide-window有所帮助。