Vim

vim-cheat-sheet

More than 3 years have passed since last update.

これはhttp://rtorruellas.com/vim-cheat-sheet/を和訳、一部加筆したものです。


カーソル移動

h -左移動

j -下に移動

k -上に移動

l -右に移動

w -単語の先頭へジャンプ(区切り文字まで)

W -単語の先頭へジャンプ(区切り文字を含めない)

e -単語の最後にジャンプ(区切り文字まで)

E -単語の最後にジャンプ(区切り文字を含めない)

b -単語の先頭へ戻る(区切り文字まで)

B -単語の先頭へ戻る(区切り文字を含めない)

0 -(ゼロ)先頭に移動

^ -行の最初の文字へ移動

$ -行の終わりへ移動

G -最終行へ移動(番号を付けるとその行へ移動- 5Gは 5行目へ)


ヒント

これらのコマンドの前に番号を付けるとその回数分繰り返します。

例えば、 4jは 4行下に移動します。



insertモード - テキストを追加/挿入

i -カーソル位置で挿入モードを開始

I -行の先頭で挿入モードを開始

a -カーソル位置の直後で挿入モードを開始

A -行の末尾で挿入モードを開始

o -現在の行の下に空白行を追加して挿入モードを開始

O -現在の行の上に空白行を追加して挿入モードを開始

ea -単語の末尾で挿入モードを開始

ESC -挿入モードを終了


編集

r -単一の文字を置き換える(挿入モードを使用しません)

J -現在の行と次の行を統合する

cc -現在の行を削除して挿入モードを開始

cw -カーソル位置の単語を削除して挿入モードを開始

c$ -カーソル位置から行末までを削除して挿入モードを開始

s -カーソル位置の文字を削除して挿入モードを開始

S - 現在の行を削除して挿入モードを開始(CCと同じ)

xp -カーソル位置と次の文字を入れ替える(技術的にはカットしてペースト)

u -元に戻す(アンドゥ)

CTRL+r -やり直し(リドゥ)

. - 最後に使ったコマンドを行う


テキストの選択(ビジュアルモード)

v - ビジュアルモード開始。移動すると選択してその後にコマンドを実行できる(例えばY-ヤンク)

V -行単位のビジュアルモードを開始

o -選択範囲の反対側に移動する

Ctrl+v -ビジュアルブロックモード(矩形選択)を開始

O -ブロックの他のコーナーに移動する

aw -単語をマーク

ab -()ブロックを選択(括弧ごと)

aB - {}ブロックを選択(括弧ごと)

ib -()ブロックを選択(括弧を除く)

iB - {}ブロックを選択(括弧を除く)

ESC -ビジュアルモード終了


ビジュアルモードでのコマンド

> - 選択範囲を右シフト

< - 選択範囲を左シフト

y - 選択範囲をヤンク(コピー)

D - 選択範囲を削除する

~ - 大文字と小文字を入れ替える


ヒント

ビジュアルブロックモード(矩形選択)で選択してシフトすると、選択位置からシフトできます。



カット&ペースト

yy - 現在の行をヤンク(コピー)

2yy - 2行をヤンク

yw - カーソル位置の単語をヤンク

y$ - 現在行の行末までヤンク

p - カーソル位置の後にペースト

P - カーソル位置の前にペースト

dd - 現在の行をカット(コピーして削除)

2dd - 2行をカット

dw - カーソル位置の単語をカット

D - カーソル位置から行末までカット

d$ - カーソル位置から行末までカット(Dと同じ)

X - 現在の文字をカットする


終了

:w - 終了せずに保存

:wq - 保存して終了

:x - 保存して終了

:q - 保存せずに終了(変更点がある場合は終了できない)

:q! - 保存せずに終了(変更点がある場合は破棄される)


検索/置換

/文字列 - 文字列を検索

?文字列 - 文字列を逆方向に検索

n -同じ方向に再検索

N -逆方向に再検索

:%s/old/new/g - ファイル全体でoldをnewに置き換える

:%s/old/new/gc - ファイル全体でoldをnewに置き換える(確認あり)


複数のファイルでの作業

:e ファイル名 - 新しいバッファでファイルを編集

:bname または:bn - 次のバッファに移動

:bprev または:bp - 前のバッファへ移動

:bd -バッファを削除(ファイルを閉じる)

:sp ファイル名 - 新しいバッファおよび分割ウィンドウでファイルを編集

:vsp ファイル名 - 新しいバッファおよび垂直分割ウィンドウでファイルを開きます

Ctrl+ws - スプリットウィンドウ

Ctrl+ww - ウィンドウを切り替える

Ctrl+wq - ウィンドウを終了します

Ctrl+wv - 垂直分割ウィンドウ


補足

当方環境ではCtrl+ws,Ctrl+wqが機能しませんでした。



タブ

:tabnew ファイル名 - 新しいタブで(ファイル名)を開く

:tabn ファイル名 - 同上

Ctrl+wt -独自のタブに現在の分割ウィンドウを移動

gt - 次のタブに移動する

:tabnext - 同上

:tabn - 同上

gT - 前のタブに移動する

:tabprev - 同上

:tabp - 同上

(n)gt - タブ番号(n)への移動

:tabmove(n) - 位置(n)番目に移動(左端が0)

:tabclose - 現在のタブを閉じる

:tabc - 同上

:tabonly - 現在の1を除く他のすべてのタブを閉じる

:tabo - 同上


補足

当方環境ではCtrl+wtが機能しませんでした。