Недавний сбой вызвал этот вопрос - у меня было открыто два окна графического интерфейса. Есть ли способ с помощью сеансов или плагинов сохранить конфигурации и позиции окон и восстановить их при полном выходе / повторном открытии macvim? Я думаю, что это было бы очень полезно, но я ничего не могу найти в Google по этому поводу. Если я делаю сеанс в одном окне, он сохраняется только для этого.
GVIM - Сохранить конфигурацию окна
Ответы (2)
GVim или MacVim? Это не имеет отношения к вашей проблеме, но название вашего вопроса не отражает его предмет.
В GUI Vim окна графического интерфейса представляют собой отдельные экземпляры, не имеющие большого представления друг о друге и не имеющие общих процессов. То, что вы хотите, кажется невозможным из самого Vim. MacVim работает как единый процесс, но каждое окно графического интерфейса по-прежнему является отдельным экземпляром. Возможно, у вас будут какие-то сторонние варианты.
Это не очень поможет с вашими двумя окнами графического интерфейса, но вы читали :h :mksession
и :h :mkview
?
Читайте о сеансах и просмотрах (например, упомянутый 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 сохранит активный сеанс (например, тот, который был загружен).