起動
コマンド |内容
--|---
vim <ファイル名> |vimエディッタの起動(既存のファイルを編集)
vim <新規ファイル名> |vimエディッタの起動(新規ファイルを作成&編集)
i |挿入モード切り替えつ(カーソルに合わせて)
Esc |挿入モード終了、ノーマルモード切り替え
※vim起動時は「ノーマルモード」で開始される
終了
コマンド |内容
--|--
:q |Vimの終了(変更があれば場合は終了できない)
:q! |変更の破棄+Vimの終了(保存せずに強制終了)
ZZ |上書き保存+Vimの終了(元に戻す方法ないので注意)
※「:」コマンドラインモードの開始を指定する時は、コマンド+Enterキーで実行
移動
カーソル移動
コマンド |
内容 |
h |
左へ移動 |
j |
下へ移動 |
k |
上へ移動 |
l |
右へ移動 |
※矢印キーでも可能 |
|
単語ごと
コマンド |
内容 |
w |
1単語ごとに移動(後) |
b |
単語ごとに移動(前) |
e |
次の単語に移動(末尾) |
ge |
直前の単語の末尾に移動 |
行
コマンド |
内容 |
$ |
行末に移動 |
0 |
行頭に移動 |
^ |
最初の非空白文字に移動 |
文字
コマンド |
内容 |
fx |
その行にある文字(x)へ右向きに移動 |
Fx |
その行にある文字(x)へ左向きに移動 |
tx |
その行にある文字(x)の直前に移動(右) |
Tx |
その行にある文字(x)の直前に移動(左) |
カッコ
コマンド |
内容 |
% |
対応するカッコへ移動 |
カーソルがカッコの上にない場合、前方検索する |
|
カーソルがカッコの上にある場合、後方検索する |
|
特定の行
コマンド |
内容 |
G |
33Gとすれば33行目にジャンプできる |
gg |
ファイルの先頭にジャンプ |
% |
90%とすればファイルの90%の場所に移動 |
H |
画面上に見えている行に移動したい(上) |
M |
画面上に見えている行に移動したい(中) |
L |
画面上に見えている行に移動したい(下) |
スクロール
コマンド |
内容 |
CTRL-U |
画面の半分だけスクロール(下) |
CTRL-D |
画面の半分だけスクロール(上) |
CTRL-E |
1行だけスクロール(上) |
CTRL-Y |
1行だけスクロール(下) |
CTRL-F |
1画面分スクロール(下) |
CTRL-B |
1画面分スクロール(上) |
zz |
カーソル位置から前後の行を表示 |
zt |
カーソル位置を画面の1行目として表示 |
文字の挿入
コマンド |内容
-|-
i |カーソル位置からインサートモードに切り替え
o |空行を下に追加して切り替え
O |空行を上に追加して切り替え
a |末尾に移動して切り替え
削除
コマンド |
内容 |
x |
1文字削除 |
dd |
行の削除 |
J |
改行の削除 |
取り消し/やり直し
コマンド |
内容 |
u |
1つ前に戻る(直前の編集結果を取り消し) |
U |
1つ前に戻る(直前に編集した行全て) |
ctrl + R |
1つ後に戻る(直前の編集をやり直し) |
カウンタ
コマンド |
内容 |
kkkkkkkkk |
9回上へ移動 |
9k |
9回上へ移動 |
※コマンドは回数を数値で指定できる |
|
ヘルプ
コマンド |内容
-|-
:help |バージョンに即した総合案内を表示(F1キー、Helpキーでも可)
:help {subject} |特定のヘルプ項目を参照
:help x |コマンドのヘルプを参照
:help deleting |文字の削除方法を参照
:help index |vimコマンドの一覧を参照
:help CTRL-文字 |ノーマルモードのコントロール文字コマンドのヘルプを参照
:help i_CTRL-H |挿入モードコマンドのヘルプを参照
:help v_o |ビジュアルモードコマンドのヘルプを参照
:help -文字 |コマンドライン引数のヘルプを参照
:help '文字' |オプションのヘルプを参照
:help エラーID |エラーIDのヘルプを参照
:help helphelp |より詳しいhelpの使い方を参照
ヘルプウインドウの操作
コマンド |
内容 |
ZZ |
ヘルプウインドを終了(Vimは終了しない) |
ctrl + ] |
タグジャンプ。ハイパーリンク上にカーソルを置いて、コマンドを実行するとそのタグへ移動 |
ctrl + T |
タグをポップする(元の場所に戻る)。ジャンプした後にコマンドを実行 |
ctrl + O |
古い場所へジャンプ |
※「 |
」で囲まれた文字列をハイパーリンク(タグ)と呼ぶ |
※「*」で囲まれた文字列はヘルプシステムのタグ(ハイパーリンクの飛び先)を指定 |
|
簡単な検索
コマンド |内容
-|-
/文字列 |探したい文字列を検索
/#文字列 |カーソル位置から後ろを検索
?文字列 |探したい文字列を検索(逆方向)
バックスペースキー |入力文字の訂正
Enterキー |コマンドの実行
n |指定した文字列を順々に移動
N |指定した文字列を順々に移動(逆方向)
:set 'ignorecase' |大文字小文字を区別させるオプション
:set 'noignorecase' |大文字小文字を区別させるオプション
/↓or↑ |/だけ押して履歴を遡る。/oでoから始まる履歴を遡る。:にもヒストリ(履歴)がある
* |文章中の単語検索。文章中の単語にカーソルを置いて、*コマンドで下方向を検索。#コマンドで上方向を検索
/the\> |"the"で終わる単語を検索。\>は単語がここで終わるという意味
/\the\> |文字数も含めた完全一致検索
簡単な検索パターン(正規表現)
コマンド |内容
-|-
/^文字列 |行頭にある文字列にマッチ
/文字列$ |行末にある文字列にマッチ
/^文字列$ |完全に一致するものにマッチ
. |任意の1文字に代替えできる
\. |.を検索文字列として指定
マーク
コマンド |
内容 |
G |
ジャンプ後に直前のカーソル位置が記録(マーク) |
`` |
元の場所へ戻る |
CTRL-O |
古いマークへジャンプ |
CTRL-I |
新しいマークへジャンプ。Tabと同じ |
:jumps |
いままでのジャンプ場所を一覧表示 |
ma |
文章へマークをつける。a..zまでを指定できる。 |
`a |
名前付きマークへ移動(画面には何も表示されない) |
'a |
アーク設定してある行の行頭に移動 |
テキストの変更
コマンド |
内容 |
c2wbe |
cはテキストの変更。2wは2単語削除して挿入モード切り替え。beはここの文字列を挿入 |
cc |
行全体の変更(インデントは残る) |
x |
カーソルしたの文字を削除 |
X |
カーソル左の文字を削除 |
D |
行末まで削除 |
C |
行末まで変更 |
s |
1文字変更 |
S |
1行変更 |
rx |
カーソルしたの文字を置き換える。xは変更したい文字 |
r |
1文字削除+改行の追加 |
5r |
5文字削除 |
5rx |
5文字削除してxを5つ挿入 |
参考
vim日本語ドキュメント