উত্তর:
টিম পোপ এর abolish.vim
মধ্যে রূপান্তর করতে পারেন camelCase
, MixedCase
, snake_case
, এবং UPPER_CASE
, সেইসাথে থেকে রূপান্তর করুন (একমুখী) dash-case
।
কোনো কার্সারটি fooBar
, FooBar
, foo_bar
, অথবা FOO_BAR
এবং ব্যবহার
crc
রূপান্তর করতে fooBar
crm
রূপান্তর করতে FooBar
cr_
বা crs
রূপান্তর করতেfoo_bar
cru
রূপান্তর করতে FOO_BAR
cr-
রূপান্তর করতে foo-bar
হ্যাঁ আছে , এবং একটি বোনাস হিসাবে বিপরীত দিকে যেতে সেখানে একটি আছে!
উইকিটি চলে যাওয়ার ক্ষেত্রে উদ্ধৃতি:
" Change selected text from NameLikeThis to name_like_this.
vnoremap ,u :s/\<\@!\([A-Z]\)/\_\l\1/g<CR>gul
এবং বিপরীত দিকের জন্য:
" Change selected text from name_like_this to NameLikeThis.
vnoremap ,c :s/_\([a-z]\)/\u\1/g<CR>gUl
vnoremap tos :s/\C\(\U\&\S\)\([A-Z]\)/\1_\l\2/g<CR>
lh-dev নামকরণ শৈলীর মধ্যে রূপান্তর করতে কমান্ডও সরবরাহ করে:
:NameConvert snake
কার্সারের অধীনে শব্দটিকে স্নাপকেসে রূপান্তরিত করবে।
:%ConvertNames/\<m_\k\+(/getter/gc
প্যাটার্নটির প্রতিটি ঘটনাকে একজন গেটর নামে রূপান্তর করবে, ধরে নিবেন ব্যবহারকারী পরিবর্তনের বিষয়টি নিশ্চিত করে ( :h :s_flags
)
সমর্থিত শৈলীগুলি দুই ধরণের:
আমি এটির মতো একটি আদেশ তৈরি করেছি:
command! Ctl
\ exec "norm \"xygn" |
\ let @y = substitute(@x, "\\([^A-Z]\\)\\([A-Z]\\)", "\\1_\\2", "g") |
\ let @y = tolower(@y) |
\ exec "norm cgn\<C-r>y" |
\ let @@ = ":Ctl\n"
আপনাকে প্রথমে প্রতিস্থাপন করতে চাইছে এমন একটি স্ট্রিং অনুসন্ধান করতে হবে /nameToReplace
এবং তারপরে আপনি চালাবেন :Ctl
এবং পরবর্তী অনুসন্ধান মিলটি হয়ে যাবে name_to_replace
। কমান্ডটি নিজেকে @@
নিবন্ধকের মধ্যে রাখে যাতে আপনি চাপ দিয়ে ক্রিয়াটি পুনরাবৃত্তি করতে পারেন @@
।