[vim] Vim : 모든 버퍼를 닫으십시오.

Vim에서 현재 편집중인 버퍼를 제외한 모든 버퍼를 닫으려면 어떻게해야합니까?



답변

vim.org에서이 스크립트를 사용할 수 있습니다.

http://www.vim.org/scripts/script.php?script_id=1071

.vim/plugin디렉토리에 넣고 :BufOnly명령을 사용 하여 활성 버퍼를 제외한 모든 버퍼를 닫으십시오. 당신은 또한 당신이 좋아하는 다른 곳에 그것을 매핑 할 수 있습니다 .vimrc.

Github의 소스 (vim-scripts 미러를 통해) : https://github.com/vim-scripts/BufOnly.vim/blob/master/plugin/BufOnly.vim


답변

이 시도

bufdo bd

bufdo는 모든 버퍼에 대한 명령을 실행합니다

http://vim.wikia.com/wiki/Run_a_command_in_multiple_buffers


답변

나는 이것을 이렇게 쉽게 할 수 있었다.

:%bd|e#


답변

현재의 것을 신경 쓰지 않으면 (스크립트가 필요없는) 다음과 같이하는 것이 더 간단합니다.

1,100bd


답변

나는 이것을한다

:w | %bd | e#

현재 버퍼를 열고 다른 모든 버퍼를 닫으려면 가장 좋아합니다.

작동 방식 : 먼저 현재 버퍼의 변경 사항을 작성한 다음 열려있는 모든 버퍼를 닫은 다음 현재 켜져있는 버퍼를 다시여십시오. Vim에서는 |명령 실행을 연결합니다. 버퍼가 최신이면 위의 내용을 단축 할 수 있습니다.:%bd | e#


답변

juananruiz의 답변을 바탕으로합니다.

유지하려는 버퍼를 약간 변경 한 다음

:1,1000bd

명령 bd(버퍼 삭제)은 변경 사항을 저장하지 않은 버퍼를 삭제하지 않습니다. 이렇게하면 현재 (변경된) 파일을 버퍼 목록에 유지할 수 있습니다.

편집 : NERDTreeBuffer도 삭제됩니다. 당신은 그것을 다시 얻을 수 있습니다 : NERDTree


답변

사용하여

:on[ly][!]

:h only