Vim操作方法

[Vim問題]指定した範囲を大文字または小文字に変換する方法とは?

この記事では、Vimでプラグインを使わずに「ビジュアルモードで大文字または小文字に変換」する方法について、ご紹介します。

[解答] ビジュアルモードで u/U

Vimキーバインド1. 大文字を小文字に変換する

(ビジュアルモードで範囲を指定した後)
 U

ビジュアルモード(C-v もしくは v で起動)で、変換したい範囲を選択した後、上記のキーを入力します。

Upper の頭文字と覚えましょう。

Vimキーバインド2. 小文字を大文字に変換する

(ビジュアルモードで) u

同じくビジュアルモード(C-v もしくは v で起動)で、変換したい範囲を選択した後、上記のキーを入力します。

先程の Upper の逆だから、小文字の u と覚えましょう。ちなみに、 Shiftキーと一緒に行う操作は逆の意味になることが多いです。

注意

「大文字または小文字に変換」する方法は、1キーで操作できて簡単ですが、1キーであるが故に下記の誤操作になりがちです。

(ノーマルモードで)u  → アンドゥ
(ノーマルモードで)U  →  行単位のアンドゥ 

実行する都度、ビジュアルモードかを確認してから実行しましょう。

補足

Vimmer 御用達の オペレータ+モーションでの変換も可能です。

gu{モーション} (モーションで指定した範囲を小文字にする)
gU{モーション} (モーションで指定した範囲を大文字にする)

主な例は次のようになります。

  • gul 1文字を小文字にする
  • gUl 1文字を大文字にする
  • gu$ 行末まですべて小文字にする
  • gU$ 行末まですべて大文字にする
  • gu0 行頭まですべて小文字にする
  • gU0 行頭まですべて大文字にする
  • guw 次の単語まですべて小文字にする
  • gUw 次の単語まですべて大文字にする
  • gu2w 次の2単語まですべて小文字にする
  • gU3w 次の3単語まですべて大文字にする
  • gufz 次の文字 z まですべて小文字にする
  • gUga 次の文字 a まですべて小文字にする

次のようにテキストオブジェクトでも構いません。

  • guiw カーソルのあるテキストオブジェクトをすべて小文字にする
  • gUiw カーソルのあるテキストオブジェクトをすべて大文字にする

直感的にはビジュアルモードの方が覚えやすいですが、使いやすさや素早さではこちらの方が圧倒的です。ぜひ覚えましょう。

Vimコマンドの補足情報

Vimコマンドの特徴

  • 利用頻度4.0
  • 便利さ3.0
  • 覚え易さ4.0

関連するVimヘルプ

Vimからは、下記のコマンドでヘルプを確認できます。

:help v_U (ビジュアルモードでの大文字化)
:help v_u (ビジュアルモードでの小文字化)

参考書籍

こちらの書籍が参考になります。


Vim/neovim関連の書籍で、もっとも評判が良くてバイブルと呼んでる人もいる一冊です。Vim/neovimのバージョンに依存しない沢山のTips形式で、その表題通りに「思考のスピードで編集」できるようになるノウハウが詰まっています。その高い評価は Amazon のレビューからも分かる通りです。Vimmer なら必ず一度は読んでおいて間違いありません。


こちらもVim関連の書籍で評価が高い書籍の一冊です。vim-jpで見かける上級Vimmer(Vimサポーターズ)の皆様による、Vimを実践で使ったノウハウからプラグイン関連の情報が詰まっています。日本の Vim界隈を知る上でも是非一読しておきたい一冊です。

Vim/neovim の設定ファイルやプラグインなど、Vim script に関するノウハウがいくつも詰まった一冊です。日本で Vim Script をここまで深く解説している唯一の書籍と言えます。Vim力を伸ばしたいと考えるなら、絶対に避けては通れない書籍でしょう。

プロフィール
管理人
Vim太郎

Vim力アップして、そろそろ上級 Vimmer の仲間入りしたいIT系エンジニアの端くれです。読んでくる訪問者の皆様と一緒に、Vim力を上げていくことができる記事が書ければと考えています。

\フォローする/
\ シェアする /
\フォローする/
関連記事
Vim入門
タイトルとURLをコピーしました