: bwipeout (또는 : bw) 명령을 사용하여 버퍼를 완전히 지울 수 있습니다. 이렇게하면 추가 한 마크, 옵션 설정 등을 포함하여 메모리에서 버퍼가 완전히 제거됩니다. 마찬가지로 : bdelete (또는 : bd)는 버퍼를 제거하지만 메모리에 남겨두고 표시 및 옵션 설정을 유지합니다.
Tom Hale의 의견에 따라 Vim 설명서에는 수행중인 작업을 모르는 경우 : bd over : bw를 사용하는 것이 좋습니다. 메모리에서 버퍼를 완전히 제거한다는 아이디어와 같이 : bw를 사용하는 경향이 있으며 버퍼를 닫은 후에도 마크, 버퍼 특정 옵션 설정 등을 많이 사용하지 않기 때문에 사용하지 않는 경향이 있습니다.
: quit (: q) 명령과 마찬가지로 Vim은 버퍼가 변경된 경우 오류를 발생시킵니다. 이를 해결하기 위해 명령 뒤에 느낌표를 추가하여 프롬프트를 표시하지 않을 수 있습니다. 느낌표를 모든 것에 추가하는 대신 다른 옵션은 "set confirm"을 vimrc에 추가하는 것입니다. 이 설정을 사용하면 vim은 파일 변경 사항을 저장하라는 메시지를 표시합니다.
: bufdo는 모든 활성 버퍼에서 다른 명령을 수행하는 유용한 명령입니다. : bufdo 명령과 : bw / : bd 명령을 결합하면 모든 활성 버퍼를 한 번에 제거 할 수 있습니다. 느낌표를 사용하여 오류를 억제 할 수 있지만 : bufdo 뒤에, : bw 뒤에 또는 둘 다에 배치하면 각각에 대해 다른 결과가 발생합니다.
:bd - deletes the current buffer, error if there are unwritten changes
:bd! - deletes the current buffer, no error if unwritten changes
:bufdo bd - deletes all buffers, stops at first error (unwritten changes)
:bufdo! bd - deletes all buffers except those with unwritten changes
:bufdo! bd! - deletes all buffers, no error on any unwritten changes
:bw - completely deletes the current buffer, error if there are unwritten changes
:bw! - completely deletes the current buffer, no error if unwritten changes
:bufdo bw - completely deletes all buffers, stops at first error (unwritten changes)
:bufdo! bw - completely deletes all buffers except those with unwritten changes
:bufdo! bw! - completely deletes all buffers, no error on any unwritten changes
:set confirm - confirm changes (Yes, No, Cancel) instead of error
다른 유용한 버퍼 명령은 다음과 같습니다.
:ls - list open buffers
:b N - open buffer number N (as shown in ls)
:tabe +Nbuf - open buffer number N in new tab
:bnext - go to the next buffer (:bn also)
:bprevious - go to the previous buffer (:bp also)
이 질문의 범위를 벗어난 버퍼 처리에는 더 많은 것이 있습니다. 살펴보십시오 :
http://vim.wikia.com/wiki/Vim_buffer_FAQ
http://vimdoc.sourceforge.net/htmldoc/windows.html#buffers