vim入門|黒板に描いて覚えるviの図解レッスン|UNIX Cafe

* 当サイトでは、コンテンツの一部に広告を掲載しています。

System Note $ cat /proc/ai-disclosure

本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。

vim入門|黒板に描いて覚えるviの図解レッスン|UNIX Cafe

vi 入門 | 補助記事

目次

黒板の前へようこそ。今日は「図でわかる vi」

vi は、文章で説明されると難しく感じやすいエディタです。ですが実際には、仕組みはとてもシンプルで、図にすると一気に分かりやすくなります

このページでは、黒板に図を描くような感覚で、vi の基本構造と操作の流れを整理していきます。今日のゴールは、iEsc の行き来が、頭の中で一本の道として見えるようになることです。

ユニ先生

言葉で分からなくても大丈夫。今日は”見る回”だからね。

黒板1枚目|vi の世界は「2つのモード」でできている

vi の中心にあるのは、モードの切り替えです。まずはこの2つを見分けられるようになることが土台になります。

  • コマンドモード:移動・削除・保存・終了を行う。vi を開いた直後はここにいる
  • 挿入モード:文字を書く。i などを押すと入れる。Esc で戻る
コマンドモード  →  i / a / o  →  挿入モード  →  Esc  →  コマンドモード

この一本道が見えるようになると、vi のこわさは自然と消えていきます。「文字が打てない」のは、まだコマンドモードにいるからです。壊れているのではありません。


💡 入力できないのは、間違いではありません

いまは「命令を聞く時間」にいるだけです。i を押すだけで、文字を書ける状態に切り替わります。


黒板2枚目|入力のキー

挿入モードへ入るキーは3種類あります。「どこから書き始めるか」で使い分けます。

i   a   o   Esc
  • i : カーソルの直前から入力する
  • a : カーソルの直後に続けて入力する
  • o : カーソル行の下に新しい行を作って入力する
  • Esc : 挿入モードを終了してコマンドモードへ戻る

最初は i だけ覚えれば十分です。ao は慣れてきたら少しずつ使ってみましょう。

黒板3枚目|移動のキー

コマンドモードでカーソルを動かすためのキーです。3つのグループに分けると覚えやすくなります。

h   j   k   l    # 左・下・上・右に1文字・1行ずつ移動
w   b            # 次の単語へ・前の単語へ移動
0   $            # 行の先頭へ・行の末尾へ移動
  • h j k l : 左・下・上・右に1文字ずつ移動する
  • w : 次の単語の先頭へ進む
  • b : 前の単語の先頭へ戻る
  • 0 : 行の先頭へ一発でジャンプする
  • $ : 行の末尾へ一発でジャンプする

移動ができるようになると、その先の削除・検索・コピーもかなり自然に使えるようになります。移動は vi 編集の土台です。

黒板4枚目|修正のキー

削除・取り消し・置換のキーをまとめると次のとおりです。「消したい範囲」で選ぶと整理しやすくなります。

x          # 1文字削除
dw         # 単語を削除
dd         # 1行まるごと削除
u          # 直前の操作を取り消す(undo)
Ctrl + r   # 取り消しをやり直す(redo)
r          # カーソル位置の1文字を置き換える
  • x : カーソル位置の1文字を削除する
  • dw : カーソル位置から単語の末尾までを削除する
  • dd : カーソル行を1行まるごと削除する
  • u : 直前の操作を取り消す(何度でも押せる)
  • Ctrl + r : 取り消した操作をやり直す
  • r : カーソル位置の1文字を別の文字に置き換える

間違えても u で戻れます。「戻せる」と知っているだけで、削除コマンドも気軽に試せるようになります。

黒板5枚目|検索と置換のキー

長いファイルで目的の場所へ素早くたどり着くための操作です。

/word        # 「word」を前方向へ検索する
n            # 次の一致箇所へ進む
N            # 前の一致箇所へ戻る
:s/old/new/  # カーソル行の「old」を「new」に置き換える
  • /word : 「word」をファイルの前方向へ検索し、最初の一致箇所へジャンプする
  • n : 次の候補へ進む
  • N : 前の候補へ戻る
  • :s/old/new/ : カーソル行の中の文字列を置き換える

検索ができると、100行を超えるようなファイルでも目的の場所へ迷わず届けられます。まずは /wordn だけ覚えれば十分です。

黒板6枚目|コピーと範囲操作のキー

行のコピーとビジュアルモードでの範囲選択をまとめます。「行単位か、文字単位か」で使うキーが変わります。

yy         # カーソル行を1行コピーする
p          # コピーまたは削除した内容をカーソル行の下に貼り付ける
v          # 文字単位のビジュアルモードに入る
V          # 行単位のビジュアルモードに入る
Ctrl + v   # 矩形(くけい)選択モードに入る
y          # ビジュアルモードで選択した範囲をコピーする
d          # ビジュアルモードで選択した範囲を削除する
  • yy : カーソル行をまるごとコピーする
  • p : バッファの内容をカーソル行の下に貼り付ける
  • v : 文字単位で範囲を選択する
  • V : 行単位で範囲を選択する
  • Ctrl + v : 矩形(くけい)選択モードに入る(複数行の特定の列を操作できる)
  • y : 選択した範囲をコピーする
  • d : 選択した範囲を削除する

yyp はセットで覚えましょう。「行をコピーして似た行を増やす」という使い方がいちばんよく登場します。

黒板7枚目|保存と終了のキー

保存と終了はすべてコマンドモードで :(コロン)から始まります。「残したいか、捨てたいか」で選ぶと整理しやすくなります。

:w    # 保存する(終了しない)
:q    # 終了する(変更がない場合のみ)
:wq   # 保存して終了する
:q!   # 変更を破棄して強制終了する
  • :w : 編集内容をファイルに書き込む。編集は続けられる
  • :q : vi を終了する。未保存の変更があると終了できない
  • :wq : 保存して終了する。編集が終わったら基本これ
  • :q! : 変更を捨てて強制終了する。緊急の出口として覚えておく

迷ったときは「残したいなら :wq、捨てていいなら :q!」と考えると決めやすくなります。

迷ったときの黒板メモ

困ったときに見返せるように、よくあるつまずきと対処をまとめます。

文字が打てない
  → コマンドモードにいる可能性が高い
  → i / a / o のどれかを押す

終了できない
  → まず Esc でコマンドモードへ戻る
  → 保存するなら :wq
  → 保存しないなら :q!

操作を間違えた・消しすぎた
  → u で直前の操作を取り消す
  → 取り消しすぎたら Ctrl + r でやり直す

困ったときの戻り先が見えているだけで、安心感はかなり違います。まずは「Esc を押す」「u で戻す」この2つを覚えておくだけで、たいていの場面を乗り越えられます。

黒板の最後に残したいこと

vi は、一度に全部覚える道具ではありません。ですが、入力・移動・修正・検索・コピー・保存という地図が頭の中にできると、少しずつ操作が落ち着いて見えてきます。

最初は全部を使いこなす必要はありません。その日の作業で必要なものを一つずつ増やしていくだけで、十分に前へ進めます。

まとめ|この黒板が戻ってこられる地図になる


✔ この黒板で整理したこと

  • モード:コマンドモードと挿入モードの2つがある。i で入り、Esc で戻る
  • 入力:i(直前)・a(直後)・o(新しい行)で書き始める位置が変わる
  • 移動:h j k l で1文字、w b で単語、0 $ で行の端へ移動できる
  • 修正:xdwdd で削除。u で取り消し、Ctrl + r でやり直せる
  • 検索:/word で検索し、nN で候補を移動できる
  • コピー:yy でコピー、p で貼り付け。vV で範囲選択できる
  • 保存:残すなら :wq、捨てるなら :q! で整理できる

一つひとつを単独で暗記するより、「どの場面で使うか」をつないで覚えるほうが自然です。この黒板が、迷ったときに戻ってこられる地図になれば十分です。

vi & vim 入門まとめに戻る

vi の基礎が見えてきたら、まとめページで全体の流れも確認してみてください。vim との違いも、順番に整理できます。

さらに学びたいあなたへ

用途ごとに選ぶ Linux のおすすめ本

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe マスター

Macintosh Color Classicから始まった旅は、長いWindows時代を経て、Windows10のサポート終了をきっかけにUNIXの世界へ戻ってきました。UNIX Cafeでは、UNIX・Linux・そしてMacな世界を、むずかしい言葉を使わず、物語のように書いています。プログラミングは、アイデアをコンピューターに伝えるための言葉です。簡単な単語と文法を覚えれば、誰でもコマンドを使えます。ぜひ一度、やさしいプログラミングの世界をのぞいてみてください。

Created by UNIX Cafe

目次