GNU Emacs 24:保存和恢复多个帧布局

时间:2014-06-05 14:31:34

标签: emacs

我正在使用多个显示器,我在使用Emacs时通过使用一个主框架来处理它,我在那里完成所有代码(我面前的屏幕)。

然后,我在左侧显示器上放置一个Speedbar框架,在右侧显示器上放置一个REPL(Cider)框架。

我想要的是找到一种方法来保存和恢复这些帧排列,加载它们的缓冲区等。

我尝试了多个软件包,例如Workgroups和Workgroups2,并阅读了其他软件包。但是,大多数(如果不是全部)它们都在保存单个帧,但具有所有主要/次要模式和它们的缓冲区。

我认为我可以用Workgroups做到这一点,但我无法用它来做。

2 个答案:

答案 0 :(得分:2)

在Emacs 24.4中,您可以使用桌面保存模式来保存和恢复(几乎)Emacs会话的整个框架和窗口布局,包括其内容。只需将以下内容添加到init.el

即可
(desktop-save-mode)

它只是“几乎”整个会话,因为桌面保存模式无法恢复带有附加进程的缓冲区,即Cider Repls,原因显而易见。

对于较旧的Emacsen,您仅限于Workgroups和Workgroups2提供的内容,即仅对单个帧进行最佳猜测还原。这些Emacs版本缺少准确恢复多个帧所需的内部API(即框架集),而第三方软件包只有有限的方法来解决这些缺点。

答案 1 :(得分:0)

如果您使用库Bookmark+,则可以创建桌面书签,并使用它们在Emacs桌面(位于任何位置的不同桌面文件)之间切换。

如果您使用Emacs 24.4或更高版本,那么您的桌面文件可以包含frame-config信息,因此切换到一个也会恢复其帧配置。 (但我不能说这个功能与多个显示器的关系如何。)