Vimの基礎知識

【Vimの基礎知識】マウス不要!カーソルを乗せたら勝ち確定|ビジュアルモード

Vimの操作精度の差は作業時間に直結します。

ビジュアルモードを使いこなせるかどうかで、同じ編集量でも必要な時間は実に5倍以上の差が開くことも少なく有りません。

単発の作業なら数日の差となり、案件全体では納期が数ヶ月変わることもあります。

現場で求められるのは資格や学歴ではなく、この差を縮める技術です。

ビジュアルモードは範囲選択を軸にしたVimの核心機能であり、熟練エンジニアは文字単位・行単位・矩形単位を自在に扱い、削除やコピーや置換を途切れなく仕上げます。

初心者はカーソル移動に追われ、範囲を何度も選び直し、そのたびに時間を浪費します。

この差は積み重なるごとに拡大し、最終的には取り返しのつかない距離になります。

この差こそが、熟練エンジニアが即戦力として求められる最大の理由です。

Vimの基礎知識

🟢 Vimの基礎知識
📌 Linuxで必ず触れるテキストエディタの入門から応用までを体系化
 └─【Vimの基礎知識】入門から応用までを体系化した学習ロードマップ
   ├─ 入門編(初心者向け)
   | ├─ 【Vimの基礎知識】ゼロから始めるVim入門とモード終了、コマンド基本操作
   | ├─ 【Vimの基礎知識】テキスト編集の基本操作(挿入・削除・移動) 
   | ├─ 【Vimの基礎知識】viとvimの違い|現場で覚えるべきポイント
   | ├─ 【Vimの基礎知識】VimとEmacsの違い|Linux現場で使われるエディタの選び方
   | └─ 【Vimの基礎知識】主要コマンド一覧|移動・編集・検索・コピーモード切替の早見表
   ├─ 活用編(中級者向け)
   | ├─ 【Vimの基礎知識】検索・置換・コピー・ペーストの操作まとめ
   | └─ 【Vimの基礎知識】マウス不要!カーソルを乗せたら勝ち確定|ビジュアルモード
   ├─ 実践編(実務で役立つ)
   | ├─ 【Vimの基礎知識】Vimで複数ファイルを同時編集する方法とウィンドウ分割の基本
   | └─ 【Vimの基礎知識】外部コマンド&シェル連携でVimを超実用ツールへ進化
   ├─ 応用編(上級者向け)
   | ├─ 【Vimの基礎知識】マクロを活用した自動編集テクニック
   | └─ 【Vimの基礎知識】正規表現を使った高度なテキスト編集
   └─ 設定編(カスタマイズ)
     ├─ 【Vimの基礎知識】Vimを使いこなす基礎:.vimrcで快適な開発環境を構築する方法
     └─ 【Vimの基礎知識】VSCodeでVimを使う方法|GUIで再現するVim操作

ビジュアルモードの概要

Vimのビジュアルモードは、テキスト編集を高速かつ効率的に行うための強力なツールです。

通常モードや挿入モードとは異なり、ビジュアルモードは選択範囲を定義することに特化しています。これにより、選択した範囲に対して削除やコピー、置換などの操作を迅速に実行できます。

特に、大量のテキストを扱う際や、複数行の編集が必要な場面では、ビジュアルモードを活用することで作業効率が大きく向上します。

ビジュアルモードは、Vimにおける強力な機能の一つで、他のエディタと異なり、範囲選択を直感的に行える点が特徴です。文字単位、行単位、または矩形単位で範囲を選択できるため、作業内容に合わせて選択範囲を柔軟に指定できます。

これにより、誤操作を防ぎ、編集作業を効率よく進めることができます。

通常モード・挿入モードとの位置づけ

Vimは、以下の3つのモードで構成されています。これらを理解し、使い分けることで、効率的な編集が可能になります。

3つのモードで

  • 通常モード Vimのデフォルトモード。カーソルの移動やテキスト編集、コマンドの実行が行える。
  • 挿入モード テキストの入力が行えるモード。通常のエディタと同様の操作感。
  • ビジュアルモード 範囲選択を行うモード。選択した範囲に対して削除、コピー、置換が行える。

範囲選択という特徴と役割

ビジュアルモードの最大の特徴は、範囲選択を直感的に行える点です。

通常モードや挿入モードでは文字の入力や編集を行いますが、ビジュアルモードでは「範囲選択」に特化しています。このモードを使うことで、任意の範囲を素早く選択し、その範囲を編集することができます。

範囲選択の方法は非常に柔軟で、文字単位、行単位、矩形単位と、操作対象を変更することができます。例えば、文字単位で範囲を選択したい場合は「v」キーを、行単位で選択する場合は「V」キーを使用します。また、矩形範囲を選択したい場合は「Ctrl + v」を使用し、特定の列や行をまとめて選択することができます。

これらの選択方法により、ビジュアルモードは、Vimを使ったテキスト編集を効率よく行うために不可欠なモードとなっています。範囲選択を駆使することで、より精密で素早い編集作業が可能になります。

ビジュアルモード コマンド一覧

Vimのビジュアルモードは、効率的にテキストを編集するための強力なツールです。以下では、ビジュアルモードで使用できる主要なコマンドを簡潔にまとめています。

コマンド説明
v文字単位で範囲選択を開始 (ビジュアルモード)
V行単位で範囲選択を開始 (ビジュアルラインモード)
Ctrl + v矩形選択(ブロック選択)を開始 (ビジュアルブロックモード)
y選択範囲をコピー(ヤンク)
d選択範囲を削除
pコピーまたは削除した内容をペースト
x選択範囲を削除(`d` と似ているが直接削除)
u選択範囲内の変更を元に戻す(アンドゥ)
Ctrl + rアンドゥのやり直し(リドゥ)
Esc範囲選択を解除し、通常モードに戻す
I矩形選択で行頭にテキストを挿入
A矩形選択で行末にテキストを挿入
f指定した文字(``)の位置にカーソルを移動(同一行内)
t指定した文字の直前にカーソルを移動(同一行内)

これらのコマンドを覚え、実践することで、Vimの操作がさらにスムーズに行えるようになります。

ビジュアルモードの基本操作

Vimのビジュアルモードは、テキストを効率的に選択・編集するために非常に重要な機能です。

ここでは、ビジュアルモードの操作方法について、基本的な選択方法やモード切替の方法を解説します。

これを理解すれば、Vimを使う際の作業効率が格段に向上します。

モード切替の方法と種類

ビジュアルモードには、文字単位、行単位、矩形単位の3つの主要な選択方法があります。それぞれのモードは、目的に応じて使い分けることができます。

文字単位の選択

文字単位での選択は、`v` キーを使用して行います。カーソルを動かしながら、選択したい範囲を指定します。この方法は、単純にテキストの一部を選びたいときに便利です。

ve # 文字単位で選択

実行例:

カーソルが「H」の位置にあり、`v` を押してカーソルを「e」に移動させると、「Hello」が選択されます。選択した部分に対して削除やコピーが可能です。

Hello, world!

行単位の選択

行単位での選択は、`V` キーを使用して行います。この方法は、1行丸ごと選択したい場合に非常に便利です。

V # 行単位で選択

実行例:

カーソルが「H」の位置にあり、`V` を押すと、行全体が選択されます。この状態で行を削除したり、他の場所にコピーしたりできます。

Hello, world!

矩形選択

矩形単位での選択は、`Ctrl + v` を使用して行います。この方法では、テキストの一部を矩形として選択できます。特に列状のデータを扱う際に役立ちます。

Ctrl + v # 矩形単位で選択

実行例:

カーソルが1行目の「H」にあり、`Ctrl + v` を押してカーソルキーを使ってを縦横へ移動すると、矩形範囲が選択されます。選択した範囲に対して、コピーや削除を行うことができます。

Hello, world!
Hello, world!
Hello, world!

選択範囲の操作

Vimのビジュアルモードでは、選択範囲を動かすことができるため、必要な部分を簡単に拡張したり縮小したりできます。ここでは、選択範囲を効率的に操作する方法について説明します。

移動による拡張

選択範囲を移動させることで、その範囲を広げることができます。カーソルを移動させることで、選択する範囲を柔軟に調整できます。

v + 移動キー # 選択範囲を拡張

実行例:

カーソルが「H」にあり、`v` を押してからカーソルキーを使って右方向に移動すると、次々に文字を選択できます。この状態で、必要な範囲を拡張し、操作を行えます。

Hello, world!

範囲の縮小と再調整

選択範囲を縮小したり再調整したりすることも可能です。範囲を広げた後に、誤って広げすぎた場合でも簡単に調整できます。

v + 移動キー(反対方向) # 範囲を縮小

実行例:

カーソルが「o」の後ろにある状態で、選択範囲を縮小するためにカーソルキーを左方向に移動すると、選択範囲が縮小されます。この操作により、必要な部分だけを選択できます。

Hello, world!

Hello, world!

選択状態での基本コマンド

ビジュアルモードでは、選択した範囲に対して基本的なコマンド(削除、コピー、ペースト)を実行することができます。これにより、選択範囲に対する編集作業が効率的に行えます。

削除

選択した範囲を削除するには、`d` コマンドを使います。選択した部分をそのまま削除することができます。

d # 範囲内の削除

実行例:

選択範囲を「Hello」にした状態で`d` を押すと、「Hello」が削除され、カーソル位置に残る部分だけが表示されます。

, world!

ヤンク

選択した範囲をコピーするには、`y` コマンドを使用します。これにより、範囲内の内容がヤンクされ、後でペーストできます。

y # 範囲内のコピー

実行例:

選択範囲を「world!」にして、`y` を押すと、その部分がコピーされ、後で別の場所にペーストできます。

Hello, world!

ペーストへの橋渡し

コピーした内容をペーストするには、`p` コマンドを使います。これにより、ヤンクした内容をカーソル位置に挿入できます。

p # 範囲内のペースト

実行例:

カーソルが「!」の後ろにある状態で`p` を押すと、コピーした「world!」がカーソル位置に挿入されます。

Hello, world!world

ビジュアルモードの応用操作

Vimのビジュアルモードは、単なる範囲選択だけでなく、効率的な列編集や一括編集を可能にします。

これにより、複数行や複数列を同時に操作することができ、作業効率が大きく向上します。

この記事では、ビジュアルモードを活用した応用操作について説明します。

矩形選択による列編集の効率化

矩形選択は、列ごとにテキストを操作したい場合に非常に便利です。

特にデータの編集や複数列をまとめて変更したい時に役立ちます。`Ctrl + v` を使うことで、複数行にまたがる矩形範囲を選択し、一括で操作を行えます。

Ctrl + v # 矩形選択モードに切り替え後、カーソルで範囲選択
d # 削除

実行例:

カーソルを「1.」に合わせて`Ctrl + v` を押すと、矩形選択が開始され、カーソルキーを使って列全体を選択できます。この状態で、`d` を押せば選択範囲を削除、`y` を押せばコピーすることができます。

例えば、数値部分だけを選んで一括編集が可能です。

1. Alice 3000
2. Bob 4000
3. Carol 5000

Alice 3000
Bob 4000
Carol 5000

コマンド組み合わせによる一括編集

Vimのビジュアルモードでは、複数のコマンドを組み合わせることで、より高度な一括編集ができます。

例えば、矩形選択モードで選択した範囲に対して一括で置換や削除、追加を行うことができ、複雑な編集作業を迅速に処理できます。

Ctrl + v # 矩形選択モードに切り替え後、カーソルで範囲選択
r # 置換モード後、選択範囲を「X」へ置換

実行例:

例えば、選択した範囲内で`r` コマンドを使うと、選択範囲内の文字を一括で変更できます。`r` を使って全ての選択範囲を「X」に変える場合、選択範囲だけを変更できます。

1. Alice 3000
2. Bob 4000
3. Carol 5000

1. Xlice 3000
2. Xob 4000
3. Xarol 5000

また、選択範囲に対して d で削除したり、 p でコピーした範囲をペーストしたりすることもできます。

トラブルと回避のポイント

Vimのビジュアルモードは、テキスト編集を効率的に行うための非常に強力な機能です。

しかし、操作を誤って範囲選択を壊してしまったり、意図しない範囲選択が行われることもあります。

このセクションでは、ビジュアルモードのトラブルを回避するための方法を具体的に解説します。

意図しない範囲選択になった場合のリセット

ビジュアルモードで範囲を選択しているとき、誤ってカーソルを動かしすぎて選択範囲が広がってしまうことがあります。

このような誤操作をリセットしたい場合、Vimでは簡単に選択範囲を解除する方法があります。

Esc # 範囲選択をリセット

実行例:

例えば、カーソルを「H」に合わせて`v`を押して選択を開始し、その後カーソルを右に動かしてしまい、意図せずに「Hello, world!」全体を選択してしまった場合、`Esc`キーを押すことで範囲選択を解除できます。この操作をすることで、誤って選択範囲を広げてしまった場合でも、簡単にリセットできます。

Hello, world!

Hello, world!

選択範囲を誤操作で壊さない工夫

Vimのビジュアルモードでは、選択範囲を壊さずにカーソルを移動したり、範囲を拡張したり縮小したりするための方法があります。

これらの方法を活用することで、選択範囲を意図的に広げたり、精密に調整したりできます。

例えば、選択範囲を「Hello,」の部分で開始した場合、その後、次の単語を選択範囲に追加したいときに使うのが`w`と`e`です。

次の単語まで選択範囲を広げる「w」

次の単語の先頭にカーソルを移動させ、その部分を選択範囲に追加したい場合は、`v`で選択を開始した後、`w`を押すことで、カーソルが次の単語の先頭に移動し、その部分が選択範囲に追加されます。

v + w # 次の単語の先頭まで範囲選択

実行例:

カーソルが「Hello,」にある状態で、`v`を押して範囲選択を開始し、`w`を押すと、カーソルが次の単語「world!」の先頭に移動し、その部分が選択範囲に追加されます。

Hello, world!

Hello, world!

次の単語全体を選択範囲に追加「e」

次の単語全体を選択範囲に追加したい場合、`v`で範囲選択を開始した後、`e`を押すと、カーソルが次の単語の末尾に移動し、その部分まで選択範囲が広がります。

v + e # 次の単語の末尾まで範囲選択

実行例:

「Hello,」を選択した状態で、`v`を押し、`e`を押すと、「world!」全体が選択範囲に追加されます。

Hello, world!

Hello, world!

アンドゥ(元に戻す)操作「u」

Vimのビジュアルモードで範囲選択をしているときに、誤って選択範囲を広げすぎてしまうことがあります。

たとえば、「Hello,」を選択したつもりが、間違って「、(カンマ)」まで選択してしまった場合、その選択を元に戻すために `u` を使用します。

u # 操作のアンドゥ(元に戻す)

実行例:

カーソルが「Hello,」にある状態で`v`を押して範囲選択を開始し、誤ってカーソルが「Hello, 」の後の「、」まで選択してしまった場合、`u`を押すことでその選択を元に戻し、選択範囲を「Hello」のみになるように修正できます。

Hello, world!

Hello, world!

Vimのビジュアルモードを使いこなすためには、単にコマンドを覚えるだけではなく、実際に手を動かして操作しながら覚えていくことが重要です。範囲選択やカーソル移動、拡張・縮小を繰り返し実践することで、徐々にその操作が自然に身につき、効率的な作業ができるようになります。

選択範囲を誤操作で壊してしまった場合でも、アンドゥ(u)を活用することで簡単に元に戻すことができ、安心して作業を進めることができます。

最終的には、どれだけ反復して使うか、どれだけ意識的に練習するかによって、Vimの使い方は大きく変わります。あなたの使い方次第です。

ビジュアルモードの重要性

とにかくVimは汎用的に使えるエディタですが、このビジュアルモードを自在に操れるレベルになると周囲からの見られ方が一変します。

特に正規表現との組み合わせは強力で、マウスを一切使わずに設定ファイルを編集する姿は、傍から見るとまるでマジックのようです。その結果、社内での立場も自然と特別な存在へと変わっていきます。

例えば、よくある大規模データベースの性能試験や個人情報のマスキング作業。新人がエクセルで何十ものファイルを開き、最大行数制限に苦しみながら30人日かけて準備するような作業もあります。

しかしVimと正規表現の組み合わせなら、わずか数分で完了できます。これこそがエンジニアを名乗るに足るスキルだと言っても過言ではありません。

さらに威力を発揮するのが巨大な設定ファイルの編集です。JavaのServletコンテナに含まれるServer.xmlなどは、インスタンス数によって1万行を超えることも珍しくありません。

WindowsやMacの一般的なエディタでは破綻する規模ですが、Vimならビジュアルモードを使って特定の設定を一瞬で抽出し、offset調整も置換一発で完了します。仮に誤っても「u」で一瞬で元に戻せるため、安心して大胆な編集が可能です。

このスキルのメリットは単なる作業効率の向上にとどまりません。見積り上の工数を大幅に短縮できるため、プロジェクト全体のWBSも圧縮できます。つまり本来の業務に集中する時間を増やせるのです。

加えて、黒い画面を自在に操る姿自体が強烈なインパクトを与え、結果的にプロジェクト内での評価や単価の向上にまでつながるケースもあります。

ビジュアルモードは、エディタ操作の枠を超え、エンジニアとしての立場や評価を大きく変える力を持っています。

 まとめと次のステップ

これまでの内容では、Vimのビジュアルモードの基本操作から範囲選択を壊さない工夫まで、選択範囲をうまく管理する方法について学びました。これらの操作は、テキスト編集をより効率的に行うための基盤となります。

Vimのビジュアルモードを活用することで、範囲選択や編集を直感的に行えるようになり、作業がスムーズに進むようになるでしょう。しかし、Vimの力を最大限に活用するには、さらに一歩進んだ操作を学ぶことが重要です。

🟢 Vimの基礎知識シリーズは段階的に進められる構成になっており、入門から実践、応用、カスタマイズまで体系的に学べます。

次のおすすめ記事

実践環境を整える

ここまで学んだ知識を実際に試すには、Linuxを動かす環境が必要です。手軽に始めるならVPSを利用するのがおすすめです。
VPS徹底比較!ConoHa・さくら・Xserverの選び方



VPSを利用してLinux環境を準備したら、実際の設定は下記の記事が参考になります。
VPSに開発環境を自動構築する方法|Apache+Tomcat+PostgreSQL

よく読まれている記事

1

「私たちが日々利用しているスマートフォンやインターネット、そしてスーパーコンピュータやクラウドサービス――これらの多くがLinuxの力で動いていることをご存じですか? 無料で使えるだけでなく、高い柔軟 ...

2

Linux環境でよく目にする「Vim」という名前。サーバーにログインしたら突然Vimが開いてしまい、「どうやって入力するの?」「保存や終了ができない!」と困った経験をした人も多いのではないでしょうか。 ...

3

ネットワーク技術は現代のITインフラにおいて不可欠な要素となっています。しかし、ネットワークを深く理解するためには、その基本となる「プロトコル」と「レイヤ」の概念をしっかり把握することが重要です。 こ ...

4

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

5

Javaは世界中で広く使われているプログラミング言語であり、特に業務システムやWebアプリケーションの開発において欠かせない存在です。本記事では、初心者向けにJavaの基礎知識を網羅し、環境構築から基 ...

-Vimの基礎知識