Apakah ada cara untuk memindahkan halaman terpisah ke tab baru di Vim?

43

Saya telah membuka file dalam pemisahan horizontal atau vertikal dan yang meletakkannya di tab baru. Bisakah ini dilakukan dengan mudah?

Pierre-Antoine LaFayette
sumber

Jawaban:

73

Sangat mudah, gunakan CTRL+ W, SHIFT+ T.

Lihat halaman bantuan :

:help CTRL-W_T

Perhatikan bahwa ini peka huruf besar kecil: <C-W>Tberbeda dengan <C-W>t.

Al.
sumber
2
Apakah mungkin melakukan kebalikan dari ini (pindahkan tab ke pemisahan)?
aruuu
4

Cara panjang dan lurus ke depan adalah membuka tab baru dan membuka buffer file di sana.

:tabnew
:b FILE_NAME

:bdapat TAB-complete dari bagian sembarang nama file, jadi ini seharusnya tidak terlalu lama.

Benjamin Bannier
sumber
1

Solusi Kanonik

Misalkan ada dua buffer:

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

Saat ini Anda telah food/tacos.txtmembuka. Anda ingin membuka match_this_partially.mddi tab baru.

Cukup gunakan yang berikut ini:

:tab sb partial

-- atau --

:tab sb 1

Anda juga dapat menggunakan penyelesaian tab wildmenu sebagai ganti partial.


bentuk panjang:

  • :tab sbuffer {buffer}

membantu:

  • :help :tag
  • :help :sbuffer

Solusi Keyboard Alternatif

Buka file di split baru, buka di tab baru dengan yang berikut ini:

<c-w>T

Gunakan kasing

Catatan: bagi saya ]bcukup dipetakannnoremap <silent> ]b :silent execute v:count.'bnext'<cr>

Jika saya memiliki beberapa buffer, saya mungkin melakukan sesuatu seperti ini:

  1. <c-w>v - membuat perpecahan vertikal baru
  2. ]b- arahkan ke buffer berikutnya (pada dasarnya dengan :bnext)
  3. <c-w>T - buka split di tab baru (ini menghancurkan split di tab pertama)
dylnmc
sumber