🕌
vim
vimとは
vimは、Linuxに標準で入っているテキストエディタです。
キーボードのみで操作されることを前提としていたため、キーボードのみですべての操作が可能です。
状況に応じてモードを使い分けることでテキストを編集していきます。
vimの特徴
カーソル移動はHJKLキーで移動できます。Hキーが左方向、Jキーが下方向、Kキーが上方向、Lキーが下方向に移動できます。
vim起動時に最初に入るモード
文字の入力はできない
各アルファベットがコマンドのショートカットになっている
他の各モードから戻るには「Esc」もしくは、「Ctrl + [」キーを押す
編集系コマンド
- x:カーソル位置の文字を削除
- r{char}:カーソル位置の文字を指定した文字に置換
- u:直前の操作を元に戻す(Undo)
- Ctrl + r:Undoを取り消す(Redo)
コピー・削除・貼り付け - dd:現在の行を削除(Cut)
- yy:現在の行をコピー(Yank)
- p:コピーまたは削除した内容を貼り付け(Paste)
- d{motion}:指定した範囲を削除(例:dwは単語を削除)
- y{motion}:指定した範囲をコピー
検索・置換 - /pattern:前方検索
- ?pattern:後方検索
- n:次の検索結果へ
- N:前の検索結果へ
- :%s/old/new/g:ファイル全体で文字列を置換
-
ノーマルモード上で「:」キーを押すとコマンドラインモードへ移行する
- wq(x):保存して終了 変更が無い時はタイムスタンプの更新はしない
- w:保存 変更が無い時もタイムスタンプを更新する
- q:保存しないで終了 変更がある時は終了できない
- q!:保存しないで強制終了 変更がある時でも保存しないで終了する
- set nu:行番号を表示
-
文字の入力や編集ができる
ノーマルモード上で「i」、「a」、「o」等のキーを押すと、固有の動作をしてインサートモードへ移行する
- a:カーソルの右に移動後、Insert modeへ
- i:カーソルの位置からInsert modeへ
- A:カーソルのある行末からInsert modeへ
- I:カーソルのある行頭からInsert modeへ
- o:カーソルのある行の次の行頭からInsert modeへ
- O:カーソルのある行の次の行末からInsert modeへ
Discussion