Home > Vim Hacks > Hack #166: ローマ字の大文字/小文字を変換する

Hack #166: ローマ字の大文字/小文字を変換する

ローマ字の大文字と小文字を変換する機会は意外に多いです。なので、Vim にはこれを行うための便利な機能があります。

~

~ を押すと、カーソル下のローマ字の大文字/小文字を相互に変換します。大文字は小文字に、小文字は大文字になります。この際、カーソルを右に進めます。 [count] を指定することで複数の文字を同時に変換することができます。変換は一括で大文字/小文字にするのではなく、文字単位で作用します。つまり VimHack は vIMhACK になります。

gu gU g~

これらはオペレータで、対象に対してそれぞれ、gu は小文字への変換を、gU は大文字への変換を、g~ は大文字/小文字の相互変換を実行します。 例えば、現在のカーソルのある単語を全て大文字にしたい場合は gUiw です。 また、yy などと同様に行に対して動作する gugu guu gUgU gUU g~g~ g~~ があります。

Visual mode での u U ~

これらは Visual mode では g なしで動作します。

'tildeop'

'tildeop' オプションをオンにすると、~ はオペレータに変化します。g~ を頻繁に使う場合には便利でしょう。

正規表現

もっと複雑な変換を行いたい場合もあるでしょう。正規表現で置換する際、結果の大文字/小文字を指定することができます。 置換後のパターンに u があると、次の文字は大文字になります。l があると小文字になります。

:s/\w\+/\u\0/g
"bram moolenaar" → "Bram Moolenaar"

また、U や L があると、E が出現するまでそれぞれ大文字/小文字に変換します。

thinca
このエントリーをはてなブックマークに追加
はてなブックマーク - Hack #166: ローマ字の大文字/小文字を変換する
Share on Facebook
Post to Google Buzz
Bookmark this on Google Bookmarks
Bookmark this on Yahoo Bookmark
Bookmark this on Livedoor Clip
Share on FriendFeed

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://vim-users.jp/2010/08/hack166/trackback/
Listed below are links to weblogs that reference
Hack #166: ローマ字の大文字/小文字を変換する from Vim-users.jp

Home > Vim Hacks > Hack #166: ローマ字の大文字/小文字を変換する

Search
Feeds
Links
  • 公式
  • 勉強会
  • 情報
  • コミュニティ
  • Meta
    Etc
    Creative Commons License
    This blog is licensed under a Creative Commons License.

    Return to page top