はじめに
最近になってvimを使い始めました。まだ習得中ですが継続すればタイピングが早くなる可能性を感じています。そして何より実装していて楽しいです。(たまに辛いですが笑)
今回は自分を含めた習得中の方向けのコマンド一覧を作成しました。想定レベルはvimtutorが終わったあたりです。またモードなどは理解している前提で記載しています。
コマンド
移動
カーソル一つ分の移動
コマンド |
効果 |
h |
左に一つカーソルを移動 |
j |
下に一つカーソルを移動 |
k |
上に一つカーソルを移動 |
l |
右に一つカーソルを移動 |
数字+hjkl |
数字の行だけ下or上に移動 |
単語移動
コマンド |
効果 |
w |
単語の先頭へ順次移動 |
e |
単語の末尾へ順次移動 |
b |
単語の先頭へ順次戻る |
W |
単語の先頭へ順次移動(.や-も一単語とみなす) |
E |
単語の末尾へ順次移動(.や-も一単語とみなす) |
B |
単語の先頭へ順次戻る(.や-も一単語とみなす) |
日本語だと一単語の括りが曖昧のようで数文字移動になります。
行移動
コマンド |
効果 |
0 |
行の先頭へ移動(インデントを無視) |
^ |
行の先頭へ移動(インデントを考慮) |
$ |
行の末尾へ移動 |
- |
上の行の先頭へ移動 |
+ |
下の行の先頭へ移動 |
段落移動
コマンド |
効果 |
{ |
前の段落へ移動 |
} |
次の段落へ移動 |
次の空行まで移動と同じです。使いやすいです。
ページ送り
コマンド |
効果 |
Ctrl + u |
上に半ページ移動 |
Ctrl + d |
下に半ページ移動 |
Ctrl + f |
上に半ページ移動 |
Ctrl + b |
下に半ページ移動 |
ジャンプ
コマンド |
効果 |
gg([[も同一) |
ページの先頭へジャンプ |
G(]]も同一) |
ページの末尾へジャンプ |
数字 + G |
指定した数字の行へジャンプ |
:数字 Enter |
指定した数字の行へジャンプ |
検索
コマンド |
効果 |
/ |
検索 |
n |
次の検索ヒットへ |
N |
前の検索ヒットへ |
? |
最初から逆方向へ検索 |
行内一文字検索
コマンド |
効果 |
f + 文字 |
行内検索 |
; |
次の検索ヒットへ |
r |
前の検索ヒットへ |
? |
最初から逆方向へ検索 |
行内のあそこに移動したい、という時に便利です。
カッコ移動
コマンド |
効果 |
% |
カーソルがある位置から最初の閉じかっこへ移動。 カーソルが閉じかっこ上にある場合はき括弧へ移動 対応するかっこは(), {}, [] |
編集
編集開始
コマンド |
効果 |
A |
行末から編集開始 |
o |
下に空行を追加して編集開始 |
O |
上に空行を追加して編集開始 |
数字 + o |
下に数字の分だけ空行を追加して複数行編集 |
cw |
カーソルの位置から空白を含む単語の末尾まで切り取りってから編集 |
ce |
カーソルの位置から空白を含まない単語の末尾まで切り取りってから編集 |
c$ |
カーソルの位置から行の末尾まで切り取りってから編集 |
切り取り
切り取り系は移動で出てきたw,e,$などのイメージができていると覚えやすいです。
コマンド |
効果 |
x |
カーソルの位置の文字を切り取り |
dd |
一行切り取り |
数字 + dd |
複数行切り取り |
d$ |
カーソルの位置から行末まで切り取り |
D |
同上 |
dw |
カーソルの位置から空白を含む単語の末尾まで切り取り |
de |
カーソルの位置から空白を含まない単語の末尾まで切り取り |
コピー
コマンド |
効果 |
yy |
一行コピー |
数字 + yy |
数字行コピー |
y$ |
カーソルから行末までコピー |
vで選択してからy |
選択した範囲をコピー |
ggyG |
ファイル全文コピー |
コピーはyankの略のyを用います
ペースト
コマンド |
効果 |
P |
ペースト |
p |
ペースト(但しカーソルの次の位置に貼り付けされるの注意) |
ペーストは最初に習うpだと位置のイメージがCtrl+Vと異なる点に注意が必要です。
置換
コマンド |
効果 |
:s/置換前文字列/置換後文字列/c |
%がないとカーソル行のみ cがあると都度確認 |
やり直し
コマンド |
効果 |
u |
最後のコマンドのやり直し(undo) |
U |
行全体でやり直し |
Ctrl + r |
redo |
終わりに
便利なコマンドが多くて書き始めると止まらなくなりました。これらを活用してタイピングが少しでも快適になれば幸いです。