Seringkali saat mengedit kode, saya akan memilih blok dalam mode visual dan melakukan pencarian dan mengganti blok. Namun, setelah saya melakukan perubahan, ia meninggalkan mode visual. Bagaimana Anda menemukan dan mengganti yang baru pada pilihan yang sama?
vim
text-editors
text-editing
labirin
sumber
sumber
Jawaban:
Anda dapat memilih kembali area visual yang dipilih terakhir
gv
.sumber
:help
".:help select-visual
harus mengarahkan Anda ke manual yang benar di dalam vim @skywinder.gv
jelas merupakan metode tercepat (gunakan pilihan terakhir), tetapi jika Anda ingin wilayah pilihan tersimpan yang stabil (atau beberapa), Anda selalu dapat membuat makro.Katakanlah saya ingin menyimpan pilihan metode saya saat ini, yang berjalan dari baris 25-35. Saya bisa membuat makro yang memilih seluruh metode dengan mengetik
Saya kemudian bisa mendapatkan pilihan itu kembali dengan mengetik
@a
(jalankan makro di register a). Ulangi dengan register, garis, atau bagian mana pun dari garis, yang Anda inginkan. Tentunya jika Anda membuat perubahan pada file, pilihannya juga dapat berubah, jadi Anda mungkin ingin mempertimbangkan untuk menggunakan tanda alih-alih nomor baris "hardcoding".sumber
gv
berfungsi dengan baik untuk memulihkan pilihan terakhir. Tetapi kadang-kadang seseorang perlu sedikit lebih banyak.Jika Anda membutuhkan catatan yang lebih persisten, lihat plugin ini yang sedang kami kerjakan di GitHub.
VisualMarks memungkinkan Anda untuk menyimpan dan mengembalikan area yang dipilih secara visual seperti halnya Anda menyimpan dan menandai lokasi tertentu dalam file Anda
m
. Setelah menginstal, dan dengan opsi default, gunakan:dalam mode visual untuk menyimpan pilihan Anda saat ini untuk ditandai
a
, laludalam mode normal untuk kembali ke pilihan ini.
sumber
mkview
tapi .. Saya kira ya karena tanda disimpan dalam file terpisah dan .. Saya sarankan Anda tetap mencoba :) Jika mereka tidak bertahan seperti yang Anda inginkan, kami akan senang menerima fitur Anda minta pada GitHub dan coba memprosesnya.Misalkan saya ingin mengganti selamat tinggal dengan Hello dan kode di bawah ini dipilih:
Saya akan mengetik
:s/Goodbye/Hello/
dan vim akan mengganti semua contohGoodbye
denganHello
Ini hanyalah kombinasi dari ekspresi reguler vim dan pilihan mode visual. Ketika Anda memilih, seharusnya isi ulang otomatis
'<,'>
sumber
gv
dan mode visual Anda akan kembali ke keadaan pemilihan sebelumnya.