2010-01-18 4 views
8

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

:q 

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

ответ

12

Просто делать

:bd 

должны это сделать.

Редактировать: Вы также можете удалить определенные буферы, используя эту команду.

Получить список текущих буферов, введя:

:ls 

Это даст вам что-то вроде:

1 # "ap22_linux_build.sh.log"  line 87 
2  "httpd-2.2.14-2010011600-linux32-g.build_log" line 4207 
3 %a "~/.bashrc"     line 1 

Возьмите соответствующий номер и введите его перед командой Б.Д., поэтому ввод

: 2 bd 

удалит второй буфер.

4

: шд (буфер удалить) или: п (далее)

Последнее дает преимущество возможность вернуться к первому файлу с: р (предыдущий)

2

Theres также: м.т., которые вытирает буфер также. Например. : bd удалит буфер, но вы можете вернуться к нему, если вы нажмете ctrl-6.

Мне также очень нравится сопоставление ключей d 'bufexplorers' в средстве просмотра буфера, если вы, как я, и получаете множество буферов, открываете быстрый способ пройти и удалить те, которые вам больше не нужны. http://www.vim.org/scripts/script.php?script_id=42

Смежные вопросы