Ketika saya membuka file baru di Vim dan saya menggunakan penyelesaian tab, itu menyelesaikan seluruh nama file alih-alih melakukan pencocokan sebagian seperti yang dilakukan Bash. Apakah ada opsi untuk membuat penyelesaian nama tab file ini lebih berfungsi seperti Bash?
289
Jawaban:
Saya pribadi menggunakan
Ketika Anda mengetik tab hit pertama, itu akan menyelesaikan sebanyak mungkin. Tab hit kedua akan memberikan daftar. Tab ketiga dan selanjutnya akan menggilir opsi penyelesaian sehingga Anda dapat menyelesaikan file tanpa kunci lebih lanjut.
Seperti Bash akan adil
tetapi penuh sangat berguna.
sumber
set wildmode=longest,5full,list
. Dengan hasil banyak penuh tidak berguna tetapi sangat berguna dengan sedikit. Ini akan sempurna dengan sesuatu seperti "tunjukkan penuh hanya jika penyelesaiannya cocok pada satu layar baris"Perilaku terdekat dengan penyelesaian Bash seharusnya
Dengan beberapa karakter yang diketik, menekan tab sekali akan memberikan semua kecocokan tersedia di
wildmenu
. Ini berbeda dengan jawaban oleh Michael yang membuka jendela seperti perbaikan cepat di bawah baris perintah.Kemudian Anda dapat terus mengetik sisa karakter atau tekan lagi tab untuk melengkapi otomatis dengan pasangan pertama dan lingkari itu.
sumber
Jika Anda tidak ingin mengatur wildmenu, Anda selalu dapat menekan Ctrl+ Lketika Anda ingin membuka file. Ctrl+ Lakan melengkapi nama file seperti selesai Bash.
sumber
<Tab>
menyelesaikan string saat ini sejauh dimungkinkan (sepertiCTRL-L
di Vim) dan<Tab><Tab>
menunjukkan daftar kemungkinan yang cocok (sepertiCTRL-D
di Vim).Terlepas dari wildmode / wildmenu yang disarankan, Vim juga menawarkan opsi untuk menampilkan semua kemungkinan penyelesaian dengan menggunakan Ctrl+ D. Ini mungkin bermanfaat untuk beberapa pengguna yang menemukan pertanyaan ini ketika mencari opsi pelengkapan otomatis yang berbeda di Vim seperti yang saya lakukan.
sumber
Saya berasumsi bahwa Anda menggunakan pelengkapan otomatis di Vim via Ctrl+ Nuntuk mencari melalui buffer saat ini. Ketika Anda menggunakan perintah ini, Anda mendapatkan daftar solusi; cukup ulangi perintah untuk pergi ke item berikutnya dalam daftar. Hal yang sama berlaku untuk semua perintah pelengkapan otomatis. Sementara mereka mengisi seluruh kata, Anda dapat terus menelusuri daftar sampai Anda tiba di kata yang ingin Anda gunakan.
Ini mungkin perintah yang lebih berguna: Ctrl+ P. Satu-satunya perbedaan adalah bahwa Ctrl+ Pmencari mundur di buffer sementara Ctrl+ Nmencari ke depan ... Secara realistis, keduanya akan memberikan daftar dengan elemen yang sama, dan mereka mungkin muncul dalam urutan yang berbeda.
sumber
Coba gunakan
:set wildmenu
. Terlepas dari itu, saya tidak yakin apa yang sebenarnya Anda coba.Oh, ya, dan mungkin coba tautan ini: tautan
sumber