Saya pikir ini akan memungkinkan untuk fitur pemilihan visual dari vim untuk melampaui efisiensi bahkan dari mouse dengan memberikan kemampuan untuk "beralih" terminal pilihan saat ini:
Illustrated (Ini |
akan mewakili kursor (Vim memilikinya beroperasi di sisi kiri karakter itu aktif) dan [text]
mewakili teks yang dipilih, hanya berpura-pura mereka mengambil lebar nol. Latar belakang ruang antara [ ]
tampak abu-abu, dan karakter segera mengikuti |
is green):
Dimulai dari
Some |text here
Some second line of text
Some more text in the third line
Tekan v2j
; perhatikan m
karakter yang termasuk dalam pilihan (itu disorot oleh kursor sekarang):
Some [text here
Some second line of text
Some |m]ore text in the third line
Tekan 10l
:
Some [text here
Some second line of text
Some more text |i]n the third line
Pada titik inilah saya mungkin memutuskan ingin mulai memilih dari lokasi yang berbeda. misalnya, termasuk "Some"
pada baris pertama.
Saya tidak punya pilihan dalam editor / IDE khas. Saya mungkin harus memindahkan tangan saya ke mouse, biasanya terlalu menyakitkan untuk memilih teks menggunakan metode tradisional, penggunaan kata hopping via Ctrl
dan page-up / down memang membantu, tapi tidak peduli apa, saya harus berkomitmen ke salah satu titik terminasi pilihan saya sebelum saya memulai seleksi .
Jadi di Vim saya suka kemampuan untuk mengambil kondisi saya saat ini dan membawanya ke sini dengan memukul sebuah misteri yang mengikat:
Some [|text here
Some second line of text
Some more text i]n the third line
Lalu saya bisa menekan ^
atau <Home>
(keduanya melakukan hal yang sama dalam hal ini di mana tidak ada spasi putih terkemuka) untuk mengubahnya menjadi
[|Some text here
Some second line of text
Some more text i]n the third line
Katakanlah saya berubah pikiran lagi , saya ingin menyesuaikan ujung yang lain!
[Some text here
Some second line of text
Some more text |i]n the third line
Hit e
:
[Some text here
Some second line of text
Some more text i|n] the third line
Cantik! Saya dapat melakukan apa pun yang saya inginkan selanjutnya dengan pilihan ini sekarang.
Jadi apa yang mengikat misteri ini?
Selain itu, bahkan yang lebih berpotensi efisien adalah seperangkat ikatan alternatif untuk beberapa perintah gerakan yang paling sering digunakan ke deretan tombol lain, dan ini akan (ketika dalam mode visual) selalu memindahkan ujung pilihan yang lain. Jadi dalam operasi pemilihan mode visual, jika tombol gerakan untuk ujung seleksi yang lain diatur ke "yuio" (mungkin bukan pilihan yang baik karena kita membutuhkan y
tetapi hanya menanggung dengan saya) kita bisa mengetik
v2j10l5ye
daripada
v2j10lX^Xe
Hei, Anda tahu, itu tidak terlalu berarti. Berikan saja fitur X itu. :)
Jawaban sempurna yang saya cari:
- Hei, lihat ke atas
:help some_awesome_vim_feature_that_just_does_this
- Hei, lihat
https://github.com/awesome_user/vim_plugin_that_does_this
- Hei, lihat
:help vimscript_functions_that_allow_mutation_of_visual_selections
Saya cukup baru dengan daya tarik ini dengan Vim jadi saya sangat hijau ketika datang ke Vimscript, dan jujur saya ingin menjauh dari mencoba belajar bahasa lain , jadi mudah-mudahan saya tidak akan dipaksa untuk membangun ini sebagai sebuah plugin.
:help
?:help visual-mode
memiliki semua info yang mungkin Anda perlukan tentang mode visual, termasuko
.O
modal O, tapi saya akan ingato
. Hal kedua yang Anda maksud adalah mungkin semakin:help
banyak menggunakannya . Dan saya telah menggunakannya lebih dari ketika saya mulai.Jawaban:
Saya tidak yakin saya benar-benar memahami apa yang Anda inginkan, tetapi mungkin ini:
Pada dasarnya, ketika teks disorot secara visual, Anda dapat menekan odan itu akan melompat ke "ujung" lain dari wilayah visual tanpa mengubahnya.
sumber
X
atas sebenarnyao
o
lagi dan kembali.