【初心者向け】vimの基本操作について

vimについて学んだため、vimの基本操作をまとめました。
これから初めてvimを使用される方、これから学ぼうと思っている方参考になればと思います。

vimって何?

Vim is a greatly improved version of the good old UNIX editor Vi. https://github.com/vim/vim#what-is-vimより

古くからあるエディタですが、多機能で動作が軽いエディタです。
また、linuxでは標準エディタになっています。

vimmervimを使う人のこと)という言葉ができるくらい愛されているテキストエディタです。

モードについて

個人的にここがvimの戸惑うポイントだと思います。
vimはファイルを開いた時点では入力ができず、入力するためのモードに切り替えてから入力します。
各モードについて紹介します。

Vimには以下4つのモードがあります。

この4つのモードを切り替えながら作業を行います。
各モードでは以下操作が可能です。

モード 詳細
ノーマルモード カーソル移動、ヤンク(コピー)、プット(貼り付け)、削除等が可能
インサートモード 文字入力等が可能
ビューモード 選択範囲のコピー、ペースト等が可能
コマンドモード ファイル保存、vimの終了等が可能

モード切替の際はノーマルモードにしてからモードを切り替える必要があります。
ファイルを編集して保存する場合は以下のようになります。

  1. vimでファイルを開く
  2. インサートモードに切り替える
  3. ファイルを編集する
  4. ノーマルモードに切り替える
  5. コマンドモードに切り替える
  6. ファイルを保存する
  7. vimを終了する

文字にすると長いですが、慣れればキーボードだけでファイルの編集ができます!

vimの操作

vimではモードによってできる操作が異なることを学びました。
各モードでできる操作について、キーと一緒に紹介します。

ノーマルモード

キー 操作
k
j
h
l
i インサートモードに切り替え
a インサートモードに切り替え(カーソルの次の文字から入力)
v ビューモードに切り替え
: or / コマンドモードに切り替え
x 1文字削除
dd 1行削除
dw 1単語削除
u 元に戻す windowsのCtrl+z
ctrl + r やり直し windowsのCtrl+y
yy 1行コピー
p カーソルの後ろにペースト
P カーソルの前にペースト
gg ファイルの先頭に移動
G ファイルの最後に移動

2x、3yyのように先頭に数字をつけることで複数文字、行を指定することも可能です。

インサートモード

キー 操作
esc ノーマルモードに切り替え

ビューモード

esc ノーマルモードに切り替え
y 選択範囲をコピー
d 選択範囲を削除
> 選択範囲を1タブ右へ移動
< 選択範囲を1タブ左へ移動

コマンドモード

キー 操作
esc ノーマルモードに切り替え
:w ファイル名 名前を付けて保存
:w 上書き保存
:q 終了
:q! 保存しないで終了
:wq 保存して終了
:set number 行番号を表示する
:10 10行目に移動
/test 「test」を検索
n 次の検索結果(検索中)
N 前の検索結果(検索中)
:%s/変換対象/変換後/g 変換対象を一括置換
:%s/変換対象/変換後/gc 1か所ずつ確認しながら置換

記載したものはあくまで一部です。
もっと知りたい方は以下公式ドキュメントからどうぞ!
公式ドキュメント

感想

この記事もvimを使って書いています!
正直慣れるまで大変なエディタだと思います。
初日は「なんだこのエディタは!?」と思っていました笑

少し操作に慣れてきてvimmerの方々の気持ちが少しずつわかってきました!
使いこなせれば強い味方になってくれると思います!