Saya memiliki beberapa teks seperti berikut ini di file:
sample text
some random text
even more random text
text with no indent
worst indention
Saya perlu menghapus ruang kosong sebelum masing-masing baris. Untuk satu baris yang saya lakukan adalah
0dw
Saya dapat mengulangi perintah yang sama menggunakan. tetapi dengan menavigasi secara manual ke baris berikutnya.
Tetapi apakah ada cara untuk menerapkan '0dw' pada blok-blok garis itu?
Saya kira ada cara menggunakan makro, tapi saya belum pernah menggunakannya sebelumnya. Tetapi saya bersedia mempelajarinya jika tidak ada pilihan lain.
text-processing
vim
saiy2k
sumber
sumber
Jawaban:
Pelajari lebih lanjut di sini di http://vim.wikia.com/wiki/Remove_unwanted_spaces
Jika Anda ingin melakukan ini untuk rentang garis tertentu:
BTW, cara terbaik untuk mulai belajar vim adalah dengan mengeksekusi
vimtutor
perintah, itu akan mengajarkan Anda cara menggunakan Vim di Vim editor.sumber
V
dan menggerakkan kursor untuk memperluas pemilihan garis. Kemudian tekan:
untuk masuk secara otomatis'<,'>
, dan dari sana Anda dapat menggunakan regexp Nikhil.:'a,'bs/^\s\+//
.Cara alternatif untuk melakukan ini adalah dengan menggunakan alat indentasi VIM (biasanya terikat ke </ >). Pertama, Anda perlu beberapa cara untuk menunjukkan baris mana yang akan terpengaruh. Anda dapat menggunakan mode pemilihan visual atau cara lain untuk menentukan rentang garis yang akan terpengaruh, kemudian menggunakan angka tinggi atau tingkat indentasi untuk menghapus.
9<
biasanya melakukan trik dengan cukup baik untuk menghapus setidaknya 9 level indentasi (tab / spasi) yang mungkin dari baris saat ini.sumber
Saya punya pendekatan untuk melakukan ini dalam langkah-langkah sederhana berikut:
Penjelasan langkah ketiga:
0
menavigasi ke mulai dari garis.dw
menghapus kata (spasi kosong).normal
menerapkan perintah0dw
.'<,'>
mengulangi yang normal untuk semua baris yang dipilih dalam mode visual.sumber
ctrl+v
memungkinkan Anda untuk melakukan sesuatu yang mirip dengan apa yang Anda inginkan tetapi tidak tepat. Anda dapat memilih blok visual dan menerapkan satu perintah ke lot.sumber
:normal
adalah hal yang penting di sini, dan saya pikir itu adalah jawaban terbaik di sini. Bisakah Anda mempostingnya sebagai jawaban?