kei_log

モダンな自社開発企業を目指すための学習ログ

Vimの基本操作について

本記事では、筆者の備忘録として Vim の基本操作をまとめます。 vimtutor と呼ばれる、vimチュートリアルの内容がベースになっています。

Vim って何?

まず、Vim とはなにかを説明します。 VimUnix 系のシステムや Linux で使用される高機能なテキストエディタです。 複数のモードと沢山のコマンドを組み合わせることで、テキスト編集操作をキーボードのみで行うことができます。

基本的なコマンドについて

Vimでよく使われるコマンドについて、下記に分類して紹介しようと思います。

  • 移動用コマンド
  • テキスト編集用コマンド
  • 検索用コマンド
  • 置換用コマンド
  • モード変更用コマンド
  • コマンドラインモード用コマンド
  • その他の便利コマンド

移動用コマンド

コマンド 意味
h カーソルを下に移動
j カーソルを下に移動
k カーソルを下に移動
l カーソルを下に移動
gg カーソルを一番上の行に移動
G カーソルを一番下の行に移動
0 カーソルを行の先頭に移動
$ カーソルを行の最後に移動
w カーソルを単語末尾に移動(空白含む)
e カーソルを単語末尾に移動(空白含まない)

テキスト編集用コマンド

コマンド 意味
dw カーソル位置から次の単語まで削除
de カーソル位置から単語の末尾まで削除
d$ カーソル位置から行末尾まで削除
dd カーソルのある行全体を削除
yy カーソルのある行全体をコピー
p 最後に削除された行をカーソルの後に貼り付け
P 最後に削除された行をカーソルの位置に貼り付け

検索用コマンド

コマンド 意味
/ /<検索文字>で検索
? ?<検索文字>で検索(逆方向)
% 対応する(, [, { 等の括弧を検索

置換用コマンド

コマンド 意味
:s/old/new/ その行で最初に見つかった old を new へ置換する
:s/old/new/g その行にある old を すべて new へ置換する
:%s/old/new/g ファイル内の old を すべて new へ置換する

モード変更用コマンド

コマンド 意味
i カーソルのある位置から編集スタート(Insert モード変更)
a カーソルのある次の位置から編集スタート(Insert モード変更)
esc キー ノーマルモードに戻る

コマンドラインモード用コマンド

ノーマルモードから:と入力することで、コマンドラインモードに入ることができる

コマンド 意味
:w ファイルを保存
:q vim を終了
:q! vim を強制終了
:wq ファイルを保存して終了

その他の便利コマンド

コマンド 意味
u 前回の動作取り消し
U 行全体の変更を取り消し
Ctrl-R 取り消し操作の取り消し

最後に

Vim は、実際に普段から使う癖をつけないと、コマンド数も無数にあるためなかなか覚えられないなと感じました。 普段は エディタで VScode を使うことが多いので、Vim拡張機能を取り入れて練習してみようと思います。