在Emacs中保留窗口布局

我以某种方式设置了我的窗户。 如何保存此设置以后调用?

检查emacs 桌面 。 我没有emacs可用,但我相信它是安装emacs时得到的标准lisp软件包的一部分。

使用桌面库将Emacs的状态从一个会话保存到另一个会话。 一旦保存了Emacs桌面 – 缓冲区,文件名,主要模式,缓冲区位置等等,随后的Emacs会话将重新加载保存的桌面。

我有时仍然使用Cx rw <register>将窗口configuration存储在寄存器中,并且Cx rj <register> (其中<register>是单个字符)将跳转回来。

虽然这是一个很好的方式来存储几个窗口configuration,你想在一段时间后回来,我发现赢家模式在一些方面更方便。 (例如,您不必为命名configuration而烦恼)。

在你的.emacs中放置(winner-mode 1) ,绑定winner-undowinner-redo快捷方式(或使用恕我直言笨拙的Cc <left>Cc <right>预定义的),你将能够切换回以前的窗口configuration。

另请参阅: M-: (info "(emacs) Window Convenience")M-: (info "(emacs) RegConfig")

我知道你已经接受了一个答案,但是因为我以另一种方式(关于布局)了解你的问题,当我在寻找东西来坚持我的emacs窗口布局时,这个问题显示出来,我想提一下:

workgroups.el

其目的是保存和恢复的方式,emacs窗口是铺设等等。

如果您只想恢复窗口布局,请给http://www.emacswiki.org/emacs/LayoutRestore试试。;

如果您想在硬盘上保留一个布局,可以selectdesktop-save

如果您需要在emacs的进程生命周期中存储多个布局(例如,使用emacsclient连接到长时间运行的emacs守护进程),则可以使用Cx rf <register>将帧布局存储在某个寄存器中( Cx rj <register>恢复)。

这样做的作用像魅力,因为存储的布局是可用的,当你退出emacsclient会议,稍后重新连接(在这种情况下, Cx rw存储的窗口布局将消失)。