Vim-сохранить и закрыть буфер одной командой

У меня есть куча текстовых файлов в каталоге, и я знаю, что мне нужно будет редактировать каждый из них индивидуально.

Я начинаю с строки похвалы с

vim *.txt

, который открывает файлы как отдельные буферы в vim и оставляет меня смотреть на первый. Я редактирую его-затем я использую ':w', чтобы сохранить его и ':bd', чтобы закрыть буфер и перейти к следующему.

Это': w: bd ' для сохранения и закрытия буфера мне кажется длинным, и я подозреваю, что есть более vim ninja way каков рекомендуемый способ сохранения и закрытия буфера, над которым вы работаете одним махом?

20
задан Joe 2013-01-26 16:15:45
источник

2 ответов

при передаче файлов Vim в командной строке они не только открываются в буферах, но и заполняют список аргументов. Поэтому можно использовать команды типа :next и :first для навигации по ним (и :argdo для пакетной обработки, которая может быть отличный трюк). Команда, которую я рекомендую для вашего вопроса,:wnext (краткая форма :wn), которая :writes текущий буфер, а затем переходит к :next один.

вам не нужно явно :bdelete буфер, особенно когда вы запускаете Vim из командной строки с набором файлов, а затем выходите из него, когда закончите. (Единственное исключение, о котором я могу думать,-это выгрузка огромного файла для сохранения системной памяти или повторное использование одного экземпляра GVIM для многих разных изменений.)

однако, если вы действительно хотите этого, просто определите пользовательскую команду, например

:command Wd write|bdelete
20
отвечен Ingo Karkat 2013-01-26 17:42:07
источник

В то время как я согласен, что вы не есть чтобы удалить открытые буферы, которые вы в настоящее время не используете, мне нравится удалять их, потому что у меня есть vim-airlineС вкладку включить, который показывает все открытые буферы все время в верхней части окна. У меня в .vimrc:

nnoremap qq :w\|bd<cr>

qq сохраняет и закрывает текущий буфер, но также связывается с функциональностью "запись макроса" vim (с которой я в порядке).

3
отвечен apostl3pol 2016-10-17 22:52:53
источник

Другие вопросы vim buffer

X