Apakah ada makro vim untuk mengkonversi CamelCase ke lowercase_with_underscores dan sebaliknya?
12
Tim Paus abolish.vim
dapat mengkonversi antara camelCase
, MixedCase
, snake_case
, dan UPPER_CASE
, serta mengkonversi (satu arah) ke dash-case
.
Posisi kursor pada salah fooBar
, FooBar
, foo_bar
, atau FOO_BAR
dan penggunaan
crc
untuk mengkonversi fooBar
crm
untuk mengkonversi FooBar
cr_
atau crs
untuk dikonversi kefoo_bar
cru
untuk mengkonversi FOO_BAR
cr-
untuk mengkonversi foo-bar
Ya ada , dan sebagai bonus ada satu di sana untuk pergi ke arah yang berlawanan juga!
Kutipan dari wiki jika hilang:
dan untuk arah yang berlawanan:
sumber
vnoremap tos :s/\C\(\U\&\S\)\([A-Z]\)/\1_\l\2/g<CR>
lh-dev juga menyediakan perintah untuk mengkonversi antara gaya penamaan:
akan mengonversi kata di bawah kursor ke snake_case.
akan mengonversi setiap kemunculan pola menjadi nama pengambil, dengan asumsi pengguna mengonfirmasi transformasi (
:h :s_flags
)Gaya yang didukung terdiri dari dua jenis:
sumber
Saya membuat perintah seperti ini:
Pertama-tama Anda harus mencari string yang ingin Anda ganti
/nameToReplace
dan kemudian Anda jalankan:Ctl
, dan kecocokan pencarian berikutnya akan menjadiname_to_replace
. Perintah menempatkan dirinya ke dalam@@
register sehingga Anda dapat mengulangi tindakan dengan menekan@@
.sumber