1

最近的一次崩溃提示了这个问题——我打开了两个 gui 窗口。会话或插件有什么方法可以保存窗口配置和位置并在完全退出/重新打开 macvim 时恢复它?我认为这将非常有用,但我无法通过谷歌找到任何关于它的信息。如果我在一个窗口中进行会话,它只会为那个窗口保存。

4

2 回答 2

2

GVim 还是 MacVim?它与您的问题无关,但您的问题的标题并未反映其主题。

在 GUI Vim 中,GUI 窗口是独立的实例,彼此之间没有太多了解,也没有共享进程。你想要的似乎在 Vim 内部是不可能的。MacVim 作为单个进程运行,但每个 GUI 窗口仍然是一个单独的实例。也许你会有一些第三方选项。

它对你的两个 GUI 窗口没有帮助,但你读过:h :mksession:h :mkview

于 2012-05-09T05:30:44.627 回答
1

阅读会话和视图(如 romainl 提到的):

:h :mksession
:h :mkview

这些将做你想要的。就像他提到的那样,尽管您希望为每个 vim 实例保留不同的会话文件。例如:

:mksess! instance_1.vim

合而为一,并且

:mksess! instance_2.vim

在另一种情况下。

重新加载会话,例如:

gvim -S instance_1.vim& 
gvim -S instance_2.vim&

要分配一个键以轻松保存“当前”会话而无需进一步考虑:

:nnoremap <F2> :exe "mksession! " . v:this_session<CR>

现在按 F2 将保存活动会话(例如已加载的会话)。

于 2012-05-09T08:34:24.020 回答