답변:
아니오 (버퍼를 삭제하지 않고는 아님).
Vim은 버퍼를 열면 수동으로 버퍼 번호를 할당하거나 버퍼를 다시 정렬하는 기능을 지원하지 않습니다. 철학은 각 버퍼가 해당 버퍼의 수명 동안 고정 된 식별자를 얻는다는 :ls
것입니다.
그러나 인수 목록을 사용할 수 있습니다. 열려있는 모든 버퍼를 인수 목록에 넣고 모든 미해결 버퍼를 삭제 한 다음 인수 목록에서 모든 것을여십시오. 다음 명령이이를 수행합니다.
:argdel *
(기존 인수 목록 삭제):bufdo argadd %
(각 버퍼에 대해 버퍼 경로를 목록에 추가하십시오):1,1000bd
(버퍼 1에서 1000을 삭제하십시오. 아마도 더 좋은 방법이 있습니다):argdo e
(각 인수마다 해당 인수를 편집하십시오)그러면 이전 버퍼를 모두 삭제할 때 vim이 열리는 여분의 빈 버퍼가 남지만 원하는 기능을 합리적으로 근사합니다. :bd
여분의 버퍼 만 있으면됩니다.
"버퍼 번호가 미쳤어" 말해봐! 하루가 끝날 무렵에는 100 개가 넘는 버퍼가 있습니다. 다행히도이 애니메이션에서 볼 수 있듯이 tab버퍼 이름 을 완성했습니다.
따라서 버퍼 번호를 다시 매길 수 없지만 여전히 쉽게 이동할 수 있습니다.
애니메이션에서 분명한지 모르겠지만 "탭 완성"은 명령 줄 탭 완성과 다릅니다. "모호함 해결 탭 대체 기"와 비슷합니다. 명령 줄에 입력 sc
tab한 다음 se
tabvim이 'se'검색을 수행하고 첫 번째 (및 유일한) 일치로 바꿉니다. 내가 입력 test
tab하면 'generate_test_data.py'와 일치하고 tab다시 'scripts / setup_test_data.sh'와 일치 한 다음 tab다시 순환됩니다.
요점은 단순히 :b <minimum amount of unambiguous characters>
tab원하는 문서로 이동하기 위해 입력하는 습관을들이 는다는 것 입니다. "내 버퍼는 1 : foo 2 : bar 3 : etc"를 기억하는 것보다 이것이 더 낫다고 생각합니다. 이것은 초보자 일 때 사용했던 방식입니다.
vim-airline을 이용할 수 있습니다. 이 플러그인에는 문제를 해결할 수있는 동작이 있습니다.
airline.txt의 470-479 행 참조
버퍼 번호는 변경되지 않지만 탭에서 행 번호로 왼쪽에서 오른쪽으로 버퍼를 선택할 수 있습니다. 이것은 다음의 항공사 설정입니다 .vimrc
.
"set airline
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#tab_nr_type = 1 " tab number
let g:airline#extensions#tabline#show_tab_nr = 1
let g:airline#extensions#tabline#formatter = 'default'
let g:airline#extensions#tabline#buffer_nr_show = 1
let g:airline#extensions#tabline#fnametruncate = 16
let g:airline#extensions#tabline#fnamecollapse = 2
let mapleader=","
let g:airline#extensions#tabline#buffer_idx_mode = 1
nmap <leader>1 <Plug>AirlineSelectTab1
nmap <leader>2 <Plug>AirlineSelectTab2
nmap <leader>3 <Plug>AirlineSelectTab3
nmap <leader>4 <Plug>AirlineSelectTab4
nmap <leader>5 <Plug>AirlineSelectTab5
nmap <leader>6 <Plug>AirlineSelectTab6
nmap <leader>7 <Plug>AirlineSelectTab7
nmap <leader>8 <Plug>AirlineSelectTab8
nmap <leader>9 <Plug>AirlineSelectTab9
switch_buffers_and_tabs=1
와buffer_idx_mode=0
오래된 질문이지만 Google 검색에서 맨 위에 나오므로 나중에 검색 할 수 있도록 여기에 남겨 두겠습니다. 브루노가 제안했듯이, 버퍼리스트를 지원하는 퍼지 파인더가 갈 길입니다. 나는 개인적으로 fzf-vim을 사용하고 추천 합니다. :FZFBuffers
다음과 같은 명령을 제공합니다 .
버퍼 번호는 필요할 경우 왼쪽에 표시되지만 퍼지 파인더를 사용하면 다시 사용할 필요가 없습니다. 파일 이름의 일부만 기억하면 보통 2-5 번의 키 스트로크가 발생합니다. 개인적 으로이 명령을 키 입력에 매핑했으며 버퍼 간 전환이 거의 즉각적입니다!