Saya menggunakan a"
gerakan agak sering di vim; mis. menggunakan ca"
sambil refactoring sepotong kode untuk mengganti argumen hardcoded dengan nama variabel. Masalah dengan pendekatan ini adalah itu a"
termasuk memimpin spasi putih jika tidak ada spasi tambahan :
Setiap ruang putih tambahan disertakan, kecuali tidak ada, maka ruang putih utama disertakan.
Jadi, ketika saya mengedit panggilan fungsi seperti ini:
aFunction(arg1, "toBeReplaced", arg3) #original
aFunction(arg1, replacedArg, arg3) #refactored
Aku harus secara manual-insert ulang ruang sebelum replacedArg
seperti ca"
menghapus itu.
Apakah ada gerakan serupa yang tidak termasuk ruang putih ini, atau adakah hal lain yang bisa saya gunakan alih-alih ca"
menyelamatkan saya dari keharusan mengetik ruang ekstra?
Catatan:
cf"
melakukan apa yang saya inginkan selama string tidak mengandung tanda kutip, tetapi mengharuskan saya untuk memiliki kursor di awal string. Saya ingin sesuatu yang bisa saya gunakan dari mana saja dalam string, dan?"<Enter>cf"
agak canggung mengetik.- Ini kurang tentang
<Space>
penekanan tombol tunggal dan lebih banyak tentang fakta bahwa saya awalnya sering lupa untuk memasukkan ruang, biaya saya setidaknya empat penekanan tombol tambahan (bi<Space><Esc>
) dan melanggar fokus saya. Jadi panjang perintah penggantian tidak sepenting itu, asalkan hanya menghapus teks di antara karakter yang diberikan dan kemudian masuk ke mode insert.
?"<Enter>
untuk mencari penawaran mundur pada suatu baris, Anda dapat menggunakanF"
.F
sama sepertif
tetapi pencarian ke kiri. Jawaban di bawah ini terlihat lebih baik untuk pertanyaan Anda, tetapiF
merupakan perintah yang berguna sendiri.