Vimの活用術:上級者を目指すための便利な使い方
Vimは、UNIX系システムを中心に広く利用されている高機能なテキストエディタです。キーボード操作をベースに設計されており、手をホームポジションからほとんど動かさずに素早く編集作業を進められる点が特徴です。
本記事では、Vimを使い始めて基本操作に慣れてきた方向けに、実践的で効率的な使い方を紹介します。習得すれば日々の作業が数倍スピードアップすること間違いなしです。
ウィンドウ分割で効率化する
Vimでは複数のファイルを同時に編集するのが得意です。ウィンドウを分割して作業すれば、比較やコピーペーストも効率よく行えます。
:split filename 横に分割
:vsplit filename 縦に分割
:sp 同じファイルを複製表示
Ctrl+w h 左へ移動
Ctrl+w l 右へ移動
Ctrl+w j 下へ移動
Ctrl+w k 上へ移動
マクロの活用で繰り返し作業を自動化
繰り返し操作をマクロとして記録・再生できます。
qa
でaレジスタに記録開始- 通常の操作を実行
q
で記録終了@a
で再生、10@a
で10回繰り返し
例:各行の先頭に # を追加する場合
qa
I#j
q
9@a
バッファとタブページの違いと使い方
- バッファ:編集中のファイル内容
- ウィンドウ:バッファの表示領域
- タブページ:複数ウィンドウの作業空間
:ls バッファ一覧
:buffer 2 バッファ切替
:tabnew file 新しいタブを開く
:tabnext 次のタブ
:tabprev 前のタブ
:tabclose 現在のタブを閉じる
Grepとの連携で一括検索
外部コマンドを使った一括検索も可能です。
:!grep -rn 'config' .
:vimgrep /config/ **/*.conf
:copen
:copen
でQuickfixウィンドウが開き、検索結果を一覧表示します。
ファイルの変更点を確認する
:vsp file2
:diffthis
:diffthis (両ウィンドウで実行)
:diffoff 差分表示終了
表示設定を見やすく整える
:set number
:set relativenumber
:set cursorline
:set list
:set listchars=tab:»·,trail:·
これらは ~/.vimrc
に記述することで毎回有効になります。
タグジャンプでコードを自在に移動
$ ctags -R .
Ctrl + ] 定義にジャンプ
Ctrl + t 戻る
関数定義や変数の参照に便利です。
折りたたみ(フォールディング)機能
:set foldmethod=indent
:set foldlevel=1
zc 折りたたむ
zo 展開する
zR すべて展開
zM すべて閉じる
PythonやYAMLなど、インデントに意味がある言語で特に役立ちます。
文字コードと改行コードの確認と変換
:set fileencoding 現在の文字コードを確認
:set fileformat 改行コードを確認
:set fileformat=unix
:w 改行コードをUNIX形式に変換
まとめ:Vimの力を引き出すのは日々の積み重ね
Vimは最初の習得に時間がかかるかもしれませんが、コマンドの意味や動作を理解し、実際に繰り返し使うことで確実にスキルアップしていきます。
操作を体で覚え、どんな作業もストレスなく処理できるようになると、他のエディタでは物足りなくなるほどです。
ぜひ、あなたもVimマスターを目指して、日々の作業に役立ててみてください。