【初心者向け】Vim基本操作ガイド 〜効率的なコード編集の第一歩〜

  • 2025/5/21
  • Comments Off on 【初心者向け】Vim基本操作ガイド 〜効率的なコード編集の第一歩〜

1. はじめに

Vim(ヴィム)は、テキスト編集を高速化し、生産性を大きく向上させることで知られる、長年愛され続けているエディタです。
コマンド中心の操作は一見クセが強いように思われがちですが、習得すればマウス不要で驚くほどスムーズに文章やコードを編集できます。
本記事では、Vim初心者の方でもつまずきにくいよう、基本概念から実践的な練習方法までやさしくご紹介いたします。


2. Vimとは何か?

2.1 Viとの関係

Vimは「Vi IMproved」の略で、UNIX標準のテキストエディタViをベースに、さらに多くの機能や利便性を追加した派生版です。

  • 軽量・高速:起動が速く、低スペック環境でも軽快に動作

  • クロスプラットフォーム:Linux、macOS、Windowsなど幅広く対応

  • 拡張性:豊富なプラグインやカスタマイズ設定で、自分好みに最適化可能

2.2 活用シーン

  • サーバー内ファイル編集:SSH接続先でのログ編集や設定ファイル修正

  • プログラミング:コードの高速編集、IDEに頼らない軽快さ

  • ドキュメント作成:MarkdownやLaTeXの執筆


3. インストール方法(おまけ)

もしまだお使いの環境にVimがインストールされていない場合、以下コマンドで簡単に導入できます。

  • macOS(Homebrew)

    brew install vim
    
  • Ubuntu/Debian

    sudo apt update
    
    sudo apt install vim
    
  • Windows


4. Vimの起動と終了

  1. ターミナルで vim ファイル名 を実行

    $ vim sample.txt
    
  2. 保存+終了

    • :wq → 書き込み+終了

    • :x → 変更があれば書き込み+終了

  3. 変更を破棄して終了

    • :q!

  4. 終了だけ

    • :q → 変更があると拒否されるので、保存不要なら :q!


5. モードの理解が最重要!

Vimの核心は「モード切替」にあります。まずは4つのモードをしっかり押さえましょう。

モード名 概要 遷移方法例 終了方法
ノーマルモード コマンド入力/カーソル移動 起動直後
インサートモード 文字挿入 i, a, I, A Esc
ビジュアルモード 範囲選択 v, V, Ctrl+v Esc
コマンドラインモード : で始まるコマンド入力 : Enter後自動

5.1 ノーマルモード

  • カーソル移動h/j/k/l

  • 文字削除x

  • 行削除dd

  • モード切替の要:必ず Esc でノーマルモードに戻すクセをつけましょう。

5.2 インサートモード

  • カーソルの前後、行頭/末尾など、状況に応じて i, a, I, A を使い分け

  • 短時間の入力なら i、行頭なら I が便利

  • 書き終えたら必ず Esc で抜ける

5.3 ビジュアルモード

  • 範囲選択後、y(コピー)、d(削除)、>/<(インデント)など多彩な操作が可能

  • 矩形選択(Ctrl+v)は表形式のテキスト編集に重宝

5.4 コマンドラインモード

  • : → 画面下部にコマンド入力欄が出現

  • :set number(行番号表示)、:help(ヘルプ呼び出し)など多くの設定や情報参照に活用


6. カーソル移動の応用テクニック

単語/文単位で移動

  • w:次の単語先頭

  • e:単語末尾

  • b:前の単語先頭

行内/ファイル内移動

  • 0:行頭

  • $:行末

  • gg:先頭行へ

  • G:末尾行へ

  • :n:n行目へ

  • Ctrl+f/Ctrl+b:一画面分スクロール

練習方法

  • 空ファイルを用意し、カーソル移動だけで指定箇所に正確に移動できるまで繰り返しましょう。


7. 編集操作の基本

7.1 削除/コピー/貼り付け

  • x:1文字削除

  • dw:単語削除

  • dd:1行削除

  • yy:1行ヤンク(コピー)

  • p / P:貼り付け(後 / 前)


8. アンドゥ・リドゥ

  • u:直前操作を元に戻す(Undo)

  • Ctrl+r:Undoの取り消し(Redo)

  • ポイント:ノーマルモードで操作


9. レジスタとマクロ入門(少し応用)

9.1 レジスタ

  • レジスタ "(ダブルクォート)に文字列を格納

  • "ayya レジスタに行をヤンク

  • "apa レジスタから貼り付け

9.2 マクロ

  • qa → マクロ記録開始 (aレジスタ)

  • コマンド操作を記録

  • q で終了

  • @a → マクロ再生

  • @@ → 直前のマクロ再生

練習例

  1. 連番の追加など、定型作業をマクロに記録して自動化してみましょう。


10. カスタマイズとプラグイン管理

10.1 .vimrc の基本設定例

" 行番号表示
set number

" タブ幅4スペース
set tabstop=4
set shiftwidth=4
set expandtab

" 検索時に大文字・小文字の区別をしない
set ignorecase
set smartcase

10.2 プラグイン管理

  • vim-plug の導入例

    call plug#begin('~/.vim/plugged')
    Plug 'tpope/vim-fugitive'       " Git操作
    Plug 'scrooloose/nerdtree'      " ファイルツリー
    Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }  " Fuzzy Finder
    call plug#end()
    
  • :PlugInstall で一括インストール


11. 練習と学習リソース

  • VimTutor:ターミナルで vimtutor と入力し、チュートリアルを実践

  • オンライン演習http://www.openvim.com/ などブラウザで学べるサイト

  • 日本語書籍:『Vim実践入門』(技術評論社)など


12. おわりに

Vimは一見ハードルが高いように感じられますが、基本操作を少しずつ習得することで確実に編集効率が向上します。
まずは「モード切替」「カーソル移動」「削除・コピー・貼り付け」の三本柱をマスターし、慣れてきたらレジスタやマクロへステップアップしてみてください。
最初の数日は慣れないと感じるかもしれませんが、数週間後には手放せないツールになることでしょう。
ぜひ日々のコーディングや文章作成にVimを取り入れ、作業効率アップを実感してみてください。

それでは良いエンジニアライフを!

この情報は役に立ちましたか?


フィードバックをいただき、ありがとうございました!

関連記事

カテゴリー:

ブログ

情シス求人

  1. システム開発におけるテスト工程の重要性と各テストの役割

  2. チームメンバーで作字やってみた#1

ページ上部へ戻る