Existe uma maneira de mover uma página dividida para uma nova guia no Vim?

43

Abri um arquivo em uma divisão horizontal ou vertical e, em vez disso, coloque-o em uma nova guia. Isso pode ser feito facilmente?

Pierre-Antoine LaFayette
fonte

Respostas:

73

Muito facilmente, use CTRL+ W, SHIFT+ T.

Veja a página de ajuda :

:help CTRL-W_T

Observe que isso <C-W>Tdiferencia maiúsculas de minúsculas: é diferente de <C-W>t.

Al.
fonte
2
É possível fazer o inverso disso (mover uma guia para uma divisão)?
Aruuu
4

O caminho longo e direto seria abrir uma nova guia e abrir o buffer do arquivo lá.

:tabnew
:b FILE_NAME

:bpode ser TABconcluído a partir de partes arbitrárias do nome do arquivo; portanto, isso não deve demorar muito.

Benjamin Bannier
fonte
1

Solução canônica

Suponha que haja dois buffers:

:ls
  1 #h   "match_this_partially.md"  line 1
  2 %a   "food/tacos.txt"           line 1

Você está food/tacos.txtaberto no momento. Você deseja abrir match_this_partially.mdem uma nova guia.

Basta usar o seguinte:

:tab sb partial

- ou -

:tab sb 1

Você também pode usar a conclusão da guia wildmenu no lugar de partial.


forma longa:

  • :tab sbuffer {buffer}

Socorro:

  • :help :tag
  • :help :sbuffer

Solução alternativa de teclado

Abrir arquivo em uma nova divisão, abra-o em uma nova guia com o seguinte:

<c-w>T

Caso de uso

Nota: para mim, ]bsimplesmente é mapeado comnnoremap <silent> ]b :silent execute v:count.'bnext'<cr>

Se eu tiver poucos buffers, posso fazer algo assim:

  1. <c-w>v - crie uma nova divisão vertical
  2. ]b- navegue para o próximo buffer (essencialmente com :bnext)
  3. <c-w>T - abrir divisão em uma nova guia (isso destrói a divisão na primeira guia)
dylnmc
fonte