Açık sekmeleri nasıl yeniden sıralayabilirim?


17

Diyelim Dört açık dosyaları var ki: file0.txt, file1.txt, file2.txt, ve file3.txt. Hepsini sekme olarak bu sırayla açıyorum. Bu yüzden sekme sıralamam şudur:

  • file0.txt
  • file1.txt
  • file2.txt
  • file3.txt

Sonra diyelim ki sekmelerimi file2.txtdaha önce yeniden sıralamak istiyorum file1.txt:

  • file0.txt
  • file2.txt
  • file1.txt
  • file3.txt

Bunu nasıl yaparım? Geçerli sekmeyi sola veya sağa taşımak veya şu anda açık olan sekmeleri başka şekilde yeniden sıralamak için bir Vim komutu var mı?

Yanıtlar:


19

tabmoveKomutu kullanabilirsiniz . ( :help tabmovebilmeniz gereken her şeyi size söyleyecektir)

Komut iki tür parametre alır:

Bir işaret ( +veya -) ve ardından bir sayı:

  • :tabmove +2 2 konumlu sekmenizi sağa taşır
  • :tabmove -2 aynısını sola doğru yapacağız.

Sekmenin konumunu ayarlamak için komutu basit bir sayıyla da kullanabilirsiniz:

  • :tabmove 0 sekmeyi ilk sekme olarak koyacaktır
  • :tabmove 2 sekmeyi üçüncü konuma getirecek
  • :tabmove sekmeyi sonuncusu olarak koyacaktır

Ayrıca bu satırları .vimrc

" move current tab to left/right
noremap <Leader><Left>  :execute 'silent! tabmove ' . (tabpagenr()-2)<CR>
noremap <Leader><Right> :execute 'silent! tabmove ' . tabpagenr()<CR>

Leader+ Right arrowVe Leader+ kombinasyonuyla mevcut bir sekmeyi tek bir yere taşımanıza izin verir, Left arrowbelki sizin için yararlı olabilirler.

Düzenleme: @TomMcDo'nun yorumlarda belirttiği gibi, önceki eşlemeler basitleştirilebilir ve hala düzgün bir şekilde çalışabilir:

noremap <Leader><Left>  :tabmove -1<CR>
noremap <Leader><Right> :tabmove +1<CR>

3
Eşlemelerinizde neden :tabmove -1ve kullanmıyorsunuz :tabmove +1?
tommcdo

@tommcdo: Şey ... Bu eşlemeleri birkaç ay önce yaptım ve şu anda aklımda ne olduğu hakkında hiçbir fikrim yok. Ve cevabımda kopyaladığımda olay hakkında bir fikir vermedim. Her neyse, haklısın Yapmak için cevabımı düzenleyeceğim başlık için daha basit teşekkürler :-)
statox
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.