Vim でのスネークケース→キャメルケース変換作業をしたので、今回やった方法をメモ。
- 検索で、
/\C_[A-Z]として対象の変数までカーソルを持っていく - どっちのキャメルケースにしたいかによって以下 2 つのどちらかを入力
- ロウワーキャメル:
qqviwuve:s/\v_(.)/\u\1/g<Enter>q - アッパーキャメル:
qqviwuvUve:s/\v_(.)/\u\1/g<Enter>q
- ロウワーキャメル:
- 以降、
nして@qで確認しながら変換していく
qq: レジスタqでマクロを記録開始viwu: 変数が 1 ワードなので、全てをいったん小文字に変換viwu: 変数が 1 ワードなので、全てをいったん小文字に変換vu: アッパーキャメルケースにしたいときに追加、カーソルのある位置の文字を大文字に置換ve: 変数全体をヴィジュアルモードで選択:s/\v_(.)/\u\1/g<Enter>: キャメルケースになるようにアンダースコア直後の文字を大文字に変換\v_(.): 一般的な(?)正規表現で、「アンダースコアと、そのひとつ後ろの文字」をヒットさせる ヒットしたモノの中の、「ひとつ後ろの文字」を、()で括り、置換の際に利用する\u\1: 検索時に()で括った個所のひとつ目を、大文字に変換して置換
q: マクロ記録終了@q:qレジスタに記録したマクロを実行
以上。
0 件のコメント:
コメントを投稿