Я запускаю Vim в сеансе screen . Когда этот сеанс завершается, он убивает запущенные в нем процессы, в результате чего Vim оставляет позади файлы .swp . Это хорошо, если файлы .swp содержат информацию, которая позволяет мне восстановить несохраненные изменения, но в большинстве случаев я выхожу из screen со всем в чистом сохраненном состоянии (:wa). Это делает файлы .swp раздражающими, так как они не содержат никакой полезной информации, но по-прежнему вызывают запрос на восстановление при повторном открытии.

Могу ли я заставить Vim поддерживать файл .swp только в том случае, если ожидают несохраненные изменения?

1 ответ1

1

Обмен файлами

Краткий ответ - нет. С Vim файлы подкачки постоянно остаются открытыми во время редактирования буфера. Это может замедлить редактирование слишком сильно, чтобы открыть файл подкачки и закрывать его каждый раз, когда в него вносятся изменения (файл подкачки обновляется после ввода 200 символов или когда вы ничего не вводили в течение четырех секунд).

Если вы не хотите , файл подкачки будет использоваться для определенного буфера или буферов, вы можете временно снята с охраны swapfile вариант:

set noswapfile

Чтобы открыть новый буфер без использования файла подкачки, вы можете использовать модификатор :noswapfile , например:

:noswapfile edit ~/.bashrc

сессии

Судя по вашему варианту использования, вы можете извлечь выгоду из сеансов Vim. Когда вы закончите редактирование, запустите mksession чтобы сохранить сеанс в файле сценария Vim с именем Session.vim в текущем каталоге. Затем введите xa чтобы написать и выйти из всех файлов. В следующий раз, когда вы запустите Vim, запустите его в том же рабочем каталоге, используя

vim -S Session.vim

В качестве альтернативы, если вы уже запустили Vim, вы можете использовать скрипт сессии с

:source Session.vim

См. help Session для получения дополнительной информации об этой полезной функции.

Кстати, что касается экрана, я предполагаю, что вы только закрываете сеанс экрана (а не отключаете его), потому что компьютер выключается или перезагружается.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .