Saya dulu menggunakan kombinasi tab dan beberapa contoh gvim, menyimpan grup file terkait sebagai tab di setiap contoh. Selama saya tidak mendapatkan terlalu banyak tab dalam satu contoh, bilah tab menunjukkan nama setiap file yang Anda edit secara sekilas.
Kemudian saya membaca posting oleh Jamis Buck tentang bagaimana dia beralih dari TextMate kembali ke vim , dan mempelajari beberapa trik hebat:
- Ctrl-w s dan Ctrl-w v untuk membagi jendela saat ini
- Ctrl-6 untuk beralih antara dua buffer di jendela yang sama.
- fuzzyfinder.vim yang luar biasa yang memberi Anda pencarian pelengkapan otomatis file di direktori Anda saat ini atau buffer yang saat ini Anda buka
- Jamis sendiri fuzzy_file_finder dan fuzzyfinder_textmate , yang sedikit memodifikasi bagaimana fuzzyfinder bekerja untuk berperilaku lebih seperti fitur serupa di TextMate (sejauh yang saya tahu, perbedaannya adalah bahwa itu cocok di mana saja di nama file, bukan hanya dari awal). Tonton video ini untuk melihat aksinya.
Sekarang saya hanya memiliki satu contoh gvim, dimaksimalkan, dan membaginya menjadi beberapa jendela sehingga saya dapat melihat beberapa file sekaligus. Saya mengikat Ctrl-F ke fuzzyfinder_textmate, jadi sekarang jika saya mengetik (katakanlah) Ctrl-F mod/usob
itu membuka app / models / user_observer.rb. Saya hampir tidak pernah repot dengan tab lagi.
Perbarui 2010/08/07
Meskipun fuzzyfinder_textmate tetap keren, seperti yang ditunjukkan Casey di komentar, itu tidak lagi dipertahankan. Juga, itu (dan / atau fuzzyfinder.vim) menjadi agak lambat dan tidak stabil saat bekerja dengan proyek besar (banyak direktori atau file), jadi saya telah mencari alternatif lain.
Untungnya, tampaknya ada alternatif yang sangat bagus dalam bentuk Wincent Colaiuta 's Command-T Plugin . Ini memiliki perilaku yang sangat mirip (jika tidak sedikit lebih baik) dengan fuzzyfinder_textmate, tetapi terasa lebih cepat; itu juga memiliki fitur bagus seperti dapat membuka file yang ditemukan dalam split atau split vertikal. Terima kasih (dan suara positif!) Kepada David Rivers karena telah menunjuknya.
Saya menggunakan dasar-dasar - '
:ls
' + ':bn
' / ':bp
' + ':b <part-of-name>
'sumber
:map <c-n> :bn<cr>
dan:map <c-p> :bp<cr>
, karenaC-n
danC-p
cepat untuk diketik dan memungkinkan perputaran antar buffer jika Anda menekannya berulang kali. (Saya tidak pernah menggunakannya untuk tujuan aslinya.) Ini seperti berpindah antar tab browser denganC-PgUp
danC-PgDn
atau pintasan apa pun yang dimiliki browser Anda.[b
buffer sebelumnya dan]b
buffer berikutnya. Ditambah banyak barang lain yang menggunakan konsep]
untuk berikutnya dan[
sebelumnya.Saya suka "ctrl-w s" dan "ctlr-w v" untuk membagi jendela. Kemudian saya memetakan tombol gerakan (h, j, k, l) dengan ctrl ditahan untuk berpindah di antara jendela yang terbagi:
Harus memindahkan tangan saya ke tombol panah itu mengganggu.
Selanjutnya, saya menyiapkan ctlr-tab untuk beralih di antara buffer di jendela saat ini (seperti banyak lingkungan lainnya):
Ini telah bekerja cukup baik untuk saya selama beberapa tahun terakhir meskipun vim selalu memiliki lebih banyak rahasia daripada yang bisa Anda ketahui.
sumber
:bp
dan <SK> ke:bn
dan tidak ada yang menyebutkan plugin ctrlp.vim yang bagus . Menggunakan plugin ini Anda dapat mencari buffer berdasarkan nama.
sumber
saya menggunakan
CTRL- Juntuk penyangga berikutnya
CTRL- Kuntuk buffer sebelumnya
CTRL- Luntuk tab berikutnya
CTRL- Huntuk tab sebelumnya
Berikut
.vimrc
konfigurasinya:Lihat http://syskall.com/my-biggest-vim-productivity-boost/
sumber
sumber
:tab sball
terlebih dahulu, atau alih-alih menggunakan,:tabn
Anda harus menggunakan:buffer
Saya baru-baru ini menjadi lebih minimalis.
Untuk siklus buffer yang saya gunakan ]bdan [bdari yang tidak rusak: https://github.com/tpope/vim-unimpaired
Untuk melompat langsung ke buffer terbuka cukup gunakan penyelesaian tab Vim dengan :b. Beberapa huruf sudah cukup untuk masuk ke buffer terbuka dengan satu atau dua tab.
Demikian pula untuk membuka buffer yang saya gunakan :edengan jalur relatif dan tab lengkap.
Saya juga menggunakan :lssesekali untuk melihat buffer apa yang telah saya buka (dan untuk memeriksa status modifikasinya).
Untuk menghilangkan buffer yang saya gunakan :bwuntuk menghapus buffer. Saya biasanya membuat pemisahan sementara dan mengubah buffer untuk mempertahankan tata letak saya meskipun karena :bwjuga menutup jendela aktif.
Semua hal minibuf yang saya coba akhirnya mengganggu saya, dan saya tidak ingin beberapa hal pencocokan cerdas membuka file acak untuk saya. Jika saya benar-benar perlu menelusuri sesuatu, saya menggunakan NERDtree ( :e .).
IDK, Akhir-akhir ini saya juga menjatuhkan Yankring (karena rusak xp) dan mulai menggunakan register, dan saya baru-baru ini memutuskan f/ tmovement adalah hal terhebat yang pernah ada ...
sumber
<leader>ll
ke:ls
. Juga sangat berguna untuk memastikan bahwa Anda adaset wildmenu
di Anda.vimrc
saat Anda mendapatkan menu kecil yang muncul dengan semua alternatif untuk:b
Yang sangat baik Buffer Explorer , be telah mendapat untuk menjadi seperti memori otot yang kuat bahwa saya menemukan diri saya berharap saya bisa menggunakannya dalam aplikasi lain. Saya merasa sangat cepat ketika secara aktif mengedit lebih dari dua file.
sumber
Saya telah menghabiskan cukup banyak waktu untuk membangun .vimrc saya untuk bekerja dengan proyek HTML :: Mason yang telah saya jalani selama empat tahun, jadi saya memiliki campuran tab dan jendela terpisah yang aneh. Untuk kesenangan menonton Anda:
sumber
Saya menggunakan tselectbuffer . Ini sangat cepat dan tidak seperti bufexplorer tidak memakan tempat di jendela Anda. Ini juga memiliki pencarian tambahan. Saya mencoba minibufexplorer dan saya menemukan navigasi di penyangga agak sulit.
sumber
,be
,,bs
,,bv
, jadi saya dipetakan TSelectBuffer untuk,bb
.Untuk membuat daftar dan beralih di antara buffer yang saya gunakan:
Untuk beralih di antara buffer:
sumber
Saya telah memetakan
<S-J>
dan<S-K>
ke:bp
dan:bn
, meskipun saya akui saya tidak menggunakannya karena jumlah file lebih besar dari 10. Saya kemudian telah memetakan<C-J>
dan<C-K>
ke tab Gnome Terminal sebelumnya dan berikutnya, dan saya biasanya menjalankan 4 contoh vim untuk masing-masing 4 proyek berbeda yang saya kerjakan. Saya masih benar-benar berharap buffer berikutnya dan sebelumnya akan pergi ke sejarah buffer yang telah saya kerjakan, dan bukan urutan daftar buffer.sumber
Saya menggunakan tselectbuffer. Ini sangat cepat dan tidak seperti bufexplorer tidak memakan tempat di jendela Anda. Ini juga memiliki pencarian tambahan. Saya mencoba minibufexplorer dan saya menemukan navigasi di penyangga agak sulit.
sumber
saya menggunakan simple: vsplit dengan ^ W + w / ^ W + r dan: tabnew dengan kombinasi tombol Ctrl + Alt + PgUp / PgDown.
sumber
Ketika ada beberapa buffer yang dibuka dalam sesi Vim, akan menjadi sulit untuk melacak buffer dan nomor buffernya masing-masing. Jika demikian, beralih ke file lain dapat dilakukan dengan lebih mudah menggunakan peta sederhana:
vim.wikia.com
sumber