Par exemple, je veux repositionner mon onglet actif pour être le premier onglet.
Réponses
Trop de publicités?Vous pouvez déplacer un onglet avec `` à l’aide des arguments absolues soit relatives ou zéro-index.
absolue :
- Déplacer l’onglet sur la position i :``
relative :
- Déplacer l’onglet je positionne à droite :``
- Déplacer l’onglet je positionne à gauche :``
C’est une fonctionnalité relativement nouveau. Alors si cela ne fonctionne pas essayez de mettre à jour votre vim.
Entendez-vous le déplacement de l'onglet actuel? Cela fonctionne à l'aide de tabmove.
:tabm[ove] [N] *:tabm* *:tabmove*
Move the current tab page to after tab page N. Use zero to
make the current tab page the first one. Without N the tab
page is made the last one.
J'ai deux raccourcis qui se déplacent de mon onglet de gauche ou celle de droite. Très pratique!
EDIT: Voici mon VIM macro. Je ne suis pas un grand ViM codeur, donc peut-être qu'il pourrait faire mieux, mais c'est la façon dont il fonctionne pour moi:
" Move current tab into the specified direction.
"
" @param direction -1 for left, 1 for right.
function! TabMove(direction)
" get number of tab pages.
let ntp=tabpagenr("$")
" move tab, if necessary.
if ntp > 1
" get number of current tab page.
let ctpn=tabpagenr()
" move left.
if a:direction < 0
let index=((ctpn-1+ntp-1)%ntp)
else
let index=(ctpn%ntp)
endif
" move tab page.
execute "tabmove ".index
endif
endfunction
Après cela, vous pouvez lier des clés, par exemple comme ceci dans votre .vimrc
:
map <F9> :call TabMove(-1)<CR>
map <F10> :call TabMove(1)<CR>
Maintenant, vous pouvez déplacer votre onglet en appuyant sur F9 ou F10.
Je cherchais la même chose et après quelques messages, j’ai trouvé un moyen plus simple qu’une fonction :
Le tabpagenr() renvoie la position de la tabulation, et tabmove utilise les index.
J’ai tracé la droite Ctrl + l et la gauche Ctrl + h :
En plus de l'amende suggestions dans d'autres réponses, vous pouvez aussi simplement faire glisser un onglet avec la souris pour les déplacer, si vous avez le support de la souris est activé.
Il est activé par défaut dans MacVim et d'autres GUI vim mises en œuvre, que ce soit en utilisant l'interface graphique widget onglets ou le terminal onglet style en mode graphique.
Il travaille aussi dans le plus pur mode tty Vim, si vous avez set mouse=a
et de terminal (xterm et la plupart des émulateurs, comme gnome-temrinal, Terminal.app, iTerm2, et de Mastic/KiTTY, pour désigner un point de vue). Notez que les clics de la souris au-delà de la colonne 222 également exiger set ttymouse=sgr
; voir Vim problème de souris pour l'arrière-plan.
J'ai écrit un plugin appelé vim-tabber qui fournit des fonctionnalités supplémentaires pour échanger des onglets autour, de les déplacer, et l'ajout de fonctionnalités intégrées dans l'onglet commandes de manipulation, tout en restant largement compatible avec les objets internes. Même si vous choisissez de ne pas utiliser le plugin, il y a certaines onglet général l'utilisation de l'information dans le fichier README.