Мне было интересно, если есть способ закрыть все вкладки справа от текущей вкладки. т.е.
-----|active|-----|-----|------|
а после сказать:
: tabcright
-----|active
Спасибо! Pedro
Никаких собственных команд для этого не существует, но вы можете довольно легко создать свои собственные, используя скрипт Vim. Вот базовый пример, который позволяет закрыть вкладки справа от текущей вкладки и вкладки слева:
function! TabCloseRight(bang)
let cur=tabpagenr()
while cur < tabpagenr('$')
exe 'tabclose' . a:bang . ' ' . (cur + 1)
endwhile
endfunction
function! TabCloseLeft(bang)
while tabpagenr() > 1
exe 'tabclose' . a:bang . ' 1'
endwhile
endfunction
command! -bang Tabcloseright call TabCloseRight('<bang>')
command! -bang Tabcloseleft call TabCloseLeft('<bang>')
Немного улучшенная версия ответа davidxk, которая работает с несколькими разделениями на вкладке:
:.+1,$tabdo :tabc
Вы можете использовать tabdo
команду, которая позволяет вам запустить команду на нескольких вкладках.
:.+1,$tabdo :q
Вы также можете поместить это в свой vimrc, чтобы вам не приходилось запоминать детали этой команды. Вы можете сделать что-то вроде:
command -nargs=0 Tabr :.+1,$tabdo :q