GVIM - Сохранить конфигурацию окна

Недавний сбой вызвал этот вопрос - у меня было открыто два окна графического интерфейса. Есть ли способ с помощью сеансов или плагинов сохранить конфигурации и позиции окон и восстановить их при полном выходе / повторном открытии macvim? Я думаю, что это было бы очень полезно, но я ничего не могу найти в Google по этому поводу. Если я делаю сеанс в одном окне, он сохраняется только для этого.


person Andy Ray    schedule 09.05.2012    source источник


Ответы (2)


GVim или MacVim? Это не имеет отношения к вашей проблеме, но название вашего вопроса не отражает его предмет.

В GUI Vim окна графического интерфейса представляют собой отдельные экземпляры, не имеющие большого представления друг о друге и не имеющие общих процессов. То, что вы хотите, кажется невозможным из самого Vim. MacVim работает как единый процесс, но каждое окно графического интерфейса по-прежнему является отдельным экземпляром. Возможно, у вас будут какие-то сторонние варианты.

Это не очень поможет с вашими двумя окнами графического интерфейса, но вы читали :h :mksession и :h :mkview?

person romainl    schedule 09.05.2012
comment
маквим. Меня легко сбить с толку этими именами. - person Andy Ray; 10.05.2012
comment
Несмотря на то, что sehe дал полезную информацию, это действительно тот ответ, который я искал, а это нет. - person Andy Ray; 13.05.2012

Читайте о сеансах и просмотрах (например, упомянутый 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 сохранит активный сеанс (например, тот, который был загружен).

person sehe    schedule 09.05.2012