Apakah ada cara untuk membuka semua file di direktori dari dalam Vim? Jadi :command
itu akan mengatakan berlaku "Buka semua file di bawah /some/path
ke dalam buffer".
Idealnya, akan sangat bagus untuk membuka semua file di bawah direktori secara rekursif.
**
untuk mencocokkan file secara rekursif. Misalnya:args /path_to_dir/**
:tab all
untuk meletakkannya di tab individual."/path_to_dir/subdir/" Illegal file name
). Solusi cepat adalah dengan menjalankan perintah keduaargd */
untuk menghapus orang dari daftar lagi:argdo source my_commands_batch.vim
Mengapa tidak berhasil jika saya ingin membuka semua file yang diakhiri dengan ekstensi tertentu? Saya mencoba
dan hanya membuka file di direktori saat ini.
Saya menemukan jawabannya, kode yang benar adalah
:n **/*.cs
Untuk informasi lebih lanjut
:h find
sumber
Apakah kamu mencoba
Ini akan membuka semua file di / some / path
Saya tidak berpikir itu akan membuka file secara rekursif.
EDIT
Mungkin menggunakan ** akan terbuka secara rekursif seperti yang disebutkan sebelumnya
sumber
Metode yang tidak perlu dipusingkan
args
adalah dengan meletakkan daftar file dalam file teks, lalu menggunakan:so
perintah untuk menjalankan perintah di file tersebut.Misalnya, jika Anda ingin membuka semua file yang diakhiri
.php
dengan direktori tertentu, pertama buat yangfiles.txt
berisi daftar file, diawali dengan perintah apa pun yang ingin Anda gunakan untuk membukanya.Kemudian, dalam vim:
Jika daftar file besar, relatif mudah untuk menghasilkan
files.txt
file dengan cepat, dengan mengarahkan outputls
ke file, dan kemudian menggunakan makro vim untuk menambahkansp
sebelum setiap nama file.Ini jelas tidak seelegan menggunakan perintah
args
danargdo
, tetapi perintah itu juga jauh lebih rumit.Mungkin juga ada cara untuk melakukan ini dengan satu perintah pada baris perintah, tetapi bahkan setelah 16 tahun saya masih menemukan pemrograman vim menjadi aneh dan misterius.
sumber
Cara lain untuk membuka file secara rekursif
sumber
kate **/*(^/)
(menggunakan sintaks globbing zsh) melakukan apa yang diperlukan: membuka file dari direktori yang diberikan secara rekursif. Ini bukan “dari dalam” dan tidak menggunakan vim sama sekali, tapi “namun melakukan apa yang dibutuhkan”. Atau bahkankate ~/.vimrc ~/.bashrc
. Menghilangkan "from withing", "from the given directory" dan "recursively" sekaligus, tetapi "yet melakukan apa yang diperlukan": membuka file.Jika Anda ingin menambahkan ke daftar argumen;
Lihat
dari / in vim untuk informasi lebih lanjut.
sumber