Je me demandais s'il y avait un moyen de fermer tous les onglets à droite de l'onglet actuel. c'est à dire
-----|active|-----|-----|------|
et après, dites:
: tabcright
-----|active
Merci! Pedro
Il n'existe aucune commande native pour cela, mais vous pouvez créer la vôtre assez facilement à l'aide du script Vim. Voici un exemple de base qui vous permet de fermer les onglets à droite de l'onglet actuel et les onglets à gauche:
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>')
Version légèrement améliorée de la réponse de davidxk qui fonctionne avec plusieurs divisions par onglet:
:.+1,$tabdo :tabc
Vous pouvez utiliser la tabdo
commande qui vous permet d'exécuter une commande sur une gamme d'onglets.
:.+1,$tabdo :q
Vous pouvez également mettre cela dans votre vimrc afin que vous n'ayez pas à mémoriser les détails de cette commande. Vous pouvez faire quelque chose comme:
command -nargs=0 Tabr :.+1,$tabdo :q