国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Bagaimana untuk memproses fail dalam Vim dan menukar tab ke ruang?
過去多啦不再A夢(mèng)
過去多啦不再A夢(mèng) 2017-05-16 16:41:14
0
10
862

Tabiat pengekodan saya tidak begitu baik pada masa lalu, jadi banyak tab digunakan dalam kod.
Sekarang saya ingin menukar tab menjadi ruang Tidak praktikal untuk menetapkan arahan vimrc然后執(zhí)行:ret命令就可以了,問題是需要被處理的文件有很多,手動(dòng)為每個(gè)文件執(zhí)行:ret Dari sudut mana saya boleh menyelesaikan masalah ini?

過去多啦不再A夢(mèng)
過去多啦不再A夢(mèng)

membalas semua(10)
大家講道理

Sebagai contoh, semua yang anda mahu proses adalah fail python, kemudian cd ke direktori akar projek:
1. $> vim `find . -type f -name "*.py"` // Buka semua fail untuk diproses dengan VIM
2. :argdo :ret |. Kemas kini // Jalankan arahan :ret pada semua fail dalam senarai parameter vim dan simpan

Selain itu, anda boleh mengetahui lebih lanjut tentang penggunaan arahan bufdo dan windo.

Di atas hanyalah untuk menunjukkan bahawa VIM boleh melakukan ini dengan mudah sebagai tindak balas kepada masalah poster asal, tanpa perlu melakukannya satu persatu. Sudah tentu, menulis skrip mengikut idea di atas juga merupakan kaedah yang baik.

習(xí)慣沉默

Cuba sed:sed -i -e "s/t/ /g" *.py

洪濤

Adalah disyorkan untuk tidak menggunakan vim dan menulis skrip untuk mengendalikannya.
Ia boleh ditulis dalam shell, dan arahan find + sed akan melakukannya. Ia juga boleh ditulis dalam python, dan os.path.walk melintasi fail dan mengimbas baris demi baris.

伊謝爾倫
:%s/\t/    /g
大家講道理

Masalah seperti ini boleh diselesaikan menggunakan ungkapan biasa, tetapi sebaiknya jangan gunakan vim untuk menanganinya satu persatu. Adalah lebih baik untuk menulis skrip python untuk menjalankan ungkapan biasa

黃舟

expand Perintah shell melakukan ini.

某草草

Lebih selesa menggunakan ungkapan biasa untuk pemprosesan kelompok, tetapi jika anda mesti menggunakan vim, jawapan @shizhz adalah bagus.

Peter_Zhu

sed -i "s/t/ /g" *.py

給我你的懷抱
ls *.py | while read file;do
    vi $file<<EOF
:%s/^I/    /g
:wq
EOF
done

Gunakan mod bukan interaktif vi(m).
^I使用CTRL+V+IMasuk.
Tiada ruang boleh digunakan selepas EOF.
Tidak boleh ada ruang sebelum arahan vi(m).

我想大聲告訴你

:h retab

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan