普段使いはAtomでVimmerではない。

だけど開発環境やサーバーでちょこっとファイルを修正したい時があります。

いちいちAtomで開くのは面倒なのでviエディタでスマートにできたらいいな。

という私のためのチートシートをこのページで少しずつまとめることにしました。

 

モードの切り替え

esc … ノーマルモード

i, a, oなど… インサートモード

esc の後に: … コマンドモード

ctrl + v … ビジュアルモード

 

基本の操作

カーソルの移動

h j k l を使う。

h … 左

j … 下

k … 上

l … 右

 

もっと大雑把なカーソル移動

数字の 0 … カーソル行の行頭へ移動

$ … カーソル行の行末へ移動

w … 次の単語の先頭へ移動

b … 前の単語の先頭へ移動

gg … ファイル先頭へ移動

G … ファイル末尾へ移動

 

コピー・貼り付け・削除・切り取り

単語・範囲を選択してコピー

yw … 単語をコピー

ctrl + v して範囲を選択後に y … 範囲を選択してコピー

 

文字・単語を削除

x … カーソル位置の文字を1文字削除

s … カーソル位置の文字を1文字削除してインサートモードに入る

dw … カーソル位置の単語を削除

cw … カーソル位置の単語を削除しつつインサートモードに入る

 

括弧やダブルクォーテーション(”)内の単語を削除

di" … ダブルコーテーションの中身を削除

di( … 括弧の中身を削除

da" … 括弧も含めて削除

da( … ダブルクオーテーションも含めて削除

 

行ごと削除・コピー

dd … カーソル行を行ごと削除

yy … カーソル行をコピー(ヤンク)

 

複数行の削除・コピー

複数行の削除・コピーを行い時は先頭に数字をつける。

例えば下記で、カーソル行から数えて3行分をまとめて削除

3dd

3ddj … カーソル行と下3行を削除

3ddk … カーソル行つ上3行を削除

yy も同上

 

全ての行の削除・コピー

dd や yy の前に10000 とかめちゃくちゃでかい数字を入力する。

10000dd … カーソル行から10000行を削除

 

貼り付け

p … カーソル行の下に空白行を挿入し、貼り付ける。

P … カーソル行の上に空白行を挿入し、貼り付ける。

 

切り取り

dd や dw などで削除した行や単語は自動的にヤンクされるので、そのままp or P で貼り付ければOK。

 

検索

/hoge … 単語「hoge」をカーソルより後方へ向かって検索

?hoge …単語「hoge」をカーソルより前方へ向かって検索

n または N を押下すると次の単語を続けて検索できる。

 

置換

:%s/置換前/置換後/ … ファイル全体を対象に全て置換する

% はファイル全体を、 s はsubstitution(置換)を表す。

 

:%s/置換前/置換後/g … ファイル全体を対象に、カーソル行の文字列の置換を行う

 

:%s/置換前/置換後/c … ファイル全体を対象に、確認しながら置換する

確認が表示された時の操作は次のようなものがある。

y … 置換する

n … 置換しない

a … 全て置換する

q … 置換終了

 

ファイルの上書き保存・終了

:w … 上書き保存

:q… 保存せずに終了

:wq … 上書き保存して終了

:q! … 変更分があったとしても保存せずに強制終了

 

指定の行番号へジャンプ

:n … n行目へジャンプ

例えば :10 とすると10行目へジャンプする。

 

行頭に行番号をつける/表示する

:set number … 全ての行頭に行番号を表示する

 

行番号をデフォルトで表示する設定

ホームディレクトリに .vimrc ファイルを作成し、

vi ~/.vimrc

set number を記入して保存

その後 source コマンドで.vimrcを実行する

source ~/.vimrc

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*