Bagaimana cara melompat ke karakter tertentu di vim?


162

Bagaimana saya bisa melompat ke karakter X berikutnya di vim?

Saya sering menggunakan, misalnya, dt:atau ct:untuk menghapus / mengubah semuanya hingga titik dua (atau beberapa karakter lain).

Apakah ada kombo tombol pendek untuk hanya memindahkan posisi kursor ke karakter itu?



7
Jika hanya 2 jawaban parsial teratas adalah satu - dan tambahan mengandung informasi ini: yang tidak disebutkan Takan melompat ke setelah karakter yang dicari pertama ke kiri, dan saya dapat mengkonfirmasi bahwa ;dan ,repeater bekerja dengan semua f/ F/ t/ T.
underscore_d

Jawaban:


276

Anda bisa mengetik f<character>untuk meletakkan kursor pada karakter berikutnya dan F<character>untuk yang sebelumnya.


90
Anda juga dapat menggunakan ;untuk mengulangi operasi dan menggunakannya ,untuk mengulanginya dengan arah yang berlawanan.
Rsh

10
Ini sepertinya hanya berfungsi dengan korek api pada baris yang sama untuk saya.
Jpaji Rajnish

7
@JpajiRajnish Ya. Gunakan /<character>untuk mencocokkannya di mana saja.
Lars Kotthoff

Tampaknya menggunakan f <character> (bersama dengan karakter; dan, untuk mengulangi perintah) hanya berfungsi pada baris kursor berada. Apakah ada cara untuk membuatnya bekerja di seluruh file?
Aluthren

Saya akan menggunakan pencarian dalam kasus ini; lihat komentar di atas.
Lars Kotthoff

62

tdan fbekerja tanpa perintah juga, jadi pindah ke penggunaan titik dua f:dan pindah ke kanan sebelum penggunaan titik duat:


7

Jika Anda melakukan pencarian dengan karakter itu /, Anda dapat menekan nuntuk pindah ke kejadian berikutnya.


Saya bertanya-tanya bagaimana cara membatalkan penemuan ini setelah saya menemukan karakter. Semua karakter yang cocok tampaknya tetap disorot dalam buffer saat ini.
newswim

1
@newswim,: nohl
arkadyt

Anda juga dapat mencari sesuatu yang lain (mis. Sekelompok sampah yang tidak akan cocok) untuk mengubah string pencarian yang disorot. Ada juga :set invhlsyang berguna untuk mengaktifkan dan menonaktifkan sorotan (saya memetakan ini ke pintasan untuk beralih cepat).
FazJaxton

3

Mungkin Anda hanya mencari kombinasi vim murni tetapi EasyMotion adalah plugin yang pantas untuk dicoba. HTH. :)


Ya! EasyMotion adalah yang Anda butuhkan untuk menyelesaikan ini dengan cara yang elegan.
Lorem Ipsum Dolor
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.