vi / vim alternatif untuk sublimetext “Perluas seleksi ke lingkup”

13

Teks luhur memiliki fitur keren yang disebut " Expand selection to scope " SHIFT + CMD + SPACE yang memilih semua yang ada di dalam ruang lingkup.

Itu memilih segala sesuatu dalam lingkup, bekerja dengan sempurna () atau [] atau {} mengulanginya memperluas cakupan ke induknya.

Saya mencari untuk mencapai hal yang sama dengan vim.

palaniraja
sumber

Jawaban:

22

Jika Anda bermaksud, vimAnda dapat melakukan ini dengan mode-visual ( :help visual-mode) dan objek teks ( :help text-objects).

Untuk memilih blok yang dikeriting keriting lakukan: v+ a+ {, untuk memilih blok yang terlampir, ulangi a+ {. Perhatikan bahwa Anda dapat memilih untuk hanya memilih konten kawat gigi dengan menggunakan isebagai gantinya a.

Perintah-perintah ini, seperti banyak perintah lainnya di vim, dibangun oleh suatu tindakan yang diikuti oleh objek teks, di mana objek teks dapat ditopang oleh angka untuk memasukkan lebih banyak objek yang dipengaruhi oleh tindakan. Jadi Anda juga bisa menghapus objek dengan menggantinya vdengan datau memperbaikinya c, dll.

Ada objek teks untuk banyak hal lain selain itu (), {}dan [], misalnya:

  • a+ wberarti sebuah kata.
  • a+ sberarti sebuah kalimat.
  • a+ pberarti paragraf.
  • a+ <berarti sebuah <>blok.
  • a+ 'berarti string yang dikutip tunggal.
  • a+ "berarti string yang dikutip ganda.

Anda mungkin juga tertarik dengan plugin surround yang memungkinkan Anda untuk menambah / mengganti / menghapus karakter di sekitarnya atau bahkan tag.

Thor
sumber
Ya, saya merujuk vim. Terima kasih. adakah cara untuk terus mengembangkannya mis., [[[event touchesForView: button] anyObject]jika kursor berada di dekat touchesForViewaction v+ a+ [pilih [event touchesForView: button]saya ingin memperluas satu level lagi? yaitu,[[[event touchesForView: button] anyObject]
palaniraja
3
@palaniraja: ya ada, Anda bisa menambahkan teks-objek dengan angka, misalnya: v+ 2+ a+ [.
Thor
6

The vim-memperluas-wilayah Plugin memungkinkan untuk memperpanjang / mengecilkan wilayah visual yang dipilih ke (dikonfigurasi) set objek teks. Yaitu Anda dapat mulai dengan memilih variabel, kemudian tugas, lalu blokir, lalu fungsi, dll.

Ingo Karkat
sumber