- Bagaimana cara menghapus satu kata ke kiri? Dengan kata lain, hapus kata saat kursor berdiri di ujungnya.
- Bagaimana cara seseorang menghapus karakter ke awal baris?
Bagaimana cara menghapus whitespace pertama di sebelah kiri?
Adakah trik lain yang melibatkan penghapusan kata?
119
db
sulit untuk diingat:5. dw or d<ctrl+rightarrow>
dan6. db or d<ctrl+leftarrow>
d<leftArrow>
lakukandh
, karenah
adalah kunci untuk bergerak ke kiriSaya telah berada dalam skenario ini berkali-kali. Saya ingin menghilangkan semua spasi di baris 10 sehingga akan bergabung dengan baris 9 setelah koma.
Ini pada dasarnya adalah garis sederhana yang bergabung di VIM.
kJ
melakukan triknya (lihat di bawah)sumber
k
= Atas,J
= Gabungkan garis di bawah ini dengan yang sekarang dengan satu spasi di antaranya. Anda juga bisa melakukankgJ
untuk bergabung tanpa spasi.gJ
= Gabungkan garis di bawah tanpa spasi di antaranya. Melalui lembar contekanUntuk menjawab poin # 3,
diw
dandaw
luar biasa.sumber
db
hapus huruf yang mendahului huruf terakhir tapi masih menyisakan huruf terakhir.i
dana
sedang dilakukan di tengah perintah tersebut? Saya tahu bahwa di depannyad
adalah "hapus", dan saya kira di belakangnyaw
adalah "kata".:help text-objects
. Paragraf terdepan sangat ringkas dan saya pikir menjelaskannya dengan sangat baik.Dalam mode penyisipan:
Jika tidak:
sumber
Dalam mode perintah:
bdw
, kembali hapus kata.d^
(ke non-kosong pertama),d0
(ke karakter pertama)BdW
(pergi ke whitespace pertama, hapus ke whitespace berikutnya)(Wiki komunitas, silakan retas.)
sumber
db
(jika kursor berada setelah kata) ataubdw
d0
(ataud^
jika Anda ingin menghapus ke karakter non-kosong pertama)dE
atau dtSpaceuntuk menghapus ke spasi pertama atau d/\sEnteruntuk menghapus ke karakter spasi berikutnya.Sunting
Karena pertanyaan telah diubah sehingga 3 adalah hapus ke karakter spasi putih pertama di sebelah kiri, jawaban saya harus berubah menjadi:
dB
atau dShiftTSpaceuntuk menghapus kembali ke spasi pertama atau d?\sEnteruntuk menghapus karakter spasi sebelumnya.Lihat:
sumber
bdw
. Karakter yang tersisa (yang awalnya di bawah kursor)db
terus mengganggu saya.Saya merasa tidak ada jawaban yang lengkap:
Secara umum, Anda biasanya memulai operasi penghapusan menggunakan
d<motion>
, dan jarang menggunakanx
.Karakter diskrit:
<N>x
- Hapus karakter N di sebelah kanand<N><left-arrow>
- Hapus karakter N ke kirid<N><right-arrow>
- Hapus karakter N di sebelah kananBatas kata:
d<N>b
- Hapus dari awal kata ke-N sebelumnya ke posisi saat inid<N>e
- Hapus dari posisi saat ini hingga akhir kata ke-N berikutnyad<N>w
- Sama sepertid<N>e
tetapi menyertakan spasi kosongdiw
- Hapus seluruh kata di bawah kursordaw
- Sama sepertidiw
tetapi menyertakan spasi kosongBatas garis:
d0
- Hapus dari awal baris ke posisi saat inid^
- Hapus dari karakter non-spasi pertama ke posisi saat inid$
- Hapus dari posisi saat ini hingga akhir barissumber
/ <CR>x
(cari spasi, tekan enter untuk pergi ke sana, x untuk menghapus)
Mungkin ada cara yang lebih ajaib untuk melakukannya, tapi saya tidak tahu satu pun.
sumber