目次
はじめに
vi(Vim)エディタを使うことが多いので、よく使うけど忘れがちなものだけメモを残します。
※ 気付き時点で追記します。
※ :setは:seで記載しています。
確認バージョン:
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jan 20 2017 04:38:11)
画面分割
Ctrl+w s, :split 画面分割(上下)
Ctrl+w v, :vsplit 画面分割(左右)
Ctrl+w w 画面移動(順番に移動)
Ctrl+w k 画面移動(↑)
Ctrl+w j 画面移動(↓)
Ctrl+w h 画面移動(←)
Ctrl+w l 画面移動(→)
※画面分割解除は :q でウィンドウを閉じる
モード切替
i コマンドモード->入力モード(カーソル位置に文字を入力)
a コマンドモード->入力モード(カーソルの後ろに文字を入力)
o コマンドモード->入力モード(カーソルの下に文字を入力)
O コマンドモード->入力モード(カーソルの上に文字を入力)
<ESC> 入力モード->コマンドモード
カーソル移動
:行番号 指定した行番号へ移動
G ファイルの末尾
h 左へ1文字
j 下へ1文字
k 上へ1文字
l 右へ1文字
w 次の単語へ
0 行の先頭
$ 行の末尾
検索
/検索文字列 次を検索
?検索文字列 前を検索
* カーソル位置の単語を検索
# カーソル位置の単語を逆方向に検索
% 対応する括弧を検索
n 次へ
N 前へ
:noh ハイライトを消す
置換
:s/置換対象文字列/置換後文字列/ 行内で1つ置換
:s/置換対象文字列/置換後文字列/g 行内で全部置換
:%s/置換対象文字列/置換後文字列/g ファイル内で全部置換
→ c を付ける 確認しながら置換
例) :%s/置換対象文字列/置換後文字列/gc
コピー
yy 1行
yw 1単語
y0 カーソル位置から行頭まで
y$ カーソル位置から行末まで
貼り付け
p カーソルの右(下)
P カーソルの左(上)
削除
x 1文字削除
dw 1単語削除
dd 1行削除
dG カーソル位置からファイル末尾まで削除
行を連結する
J 行を連結する
gJ 行を連結する(スペースを挿入しない)
元に戻す
u 1つ戻す(Undo)
Ctrl+r Undoを1つ戻す(Redo)
ファイル操作
ファイルを開く/保存する/閉じる
:e ファイル名 ファイルを読み込む
:e ファイルを再読み込み
:w 保存(上書き)
:w ファイル名 ファイル名で保存
:q 終了
その他
:se nu 行番号表示(:set number)
:se nonu 行番号非表示(:set nonumber)
:se ff=ファイルのフォーマット ファイルの改行コードを変更する
→ ff=dos DOS(Windows)の形式
→ ff=mac Macの形式
→ ff=unix UNIXの形式
→ ff 現在設定されている形式を表示
:help ヘルプを表示