Vim 操作方法

右クリック :ペースト

Shift+Insert :ペースト

ZZ :上書き保存

"○:レジスタを登録、変更

"○p:レジスタの内容をペースト

:reg  :レジスタを一覧表示

yy :行をコピー

2yy:2行をコピー

yy5p :行をコピーして5回貼り付け

u: undo

:num  :num行へ移動

numG :num行へ移動

 

m○ :カーソル位置に○のマークをつける

y'○ :○のマークからカーソル位置までをコピー

`○ :マークの場所へ移動

 

q○ コマンド q : ○にマクロコマンドを登録 ※記録終了はq

num@○ : num回マクロを実行

@@:前回と同じマクロを実行

 

Ctr+A:インクリメント

Ctr+X:デクリメント

 

f○ : 行の中で次の○を検索

F○: 行の中で前の○を検索

 

g* : カーソル位置の単語の次の位置を検索

g# : カーソル位置の単語の前の位置を検索

Ctr + o : ジャンプ履歴の前の箇所へ移動

Ctr + i : ジャンプ履歴の次の箇所へ移動

 

 

 

/検索文字  :文字検索

?検索文字  :前側に文字検索

n : 次の検索文字へ

N : 前の検索文字へ

 

zz: 画面をカーソル位置が中央になるよう移動

 

*:カーソル位置の単語を下に走査

#:カーソル位置の単語を上に走査

:s/検索文字/置換後文字  :(選択範囲内で)sed置換

:s/検索文字/置換後文字/c :(選択範囲内で)個別に確認しながらsed置換

:%s/ward/ward2 :作業中のファイルのすべてのward1をward2へ置換 (sed)

:%s/ward/ward2/c :作業中のファイルのすべてのward1を確認しながら置換

:s/ward1/ward2 :選択している行の最初のward1をward2へ置換

:s/ward1/ward2/g :選択している行のすべてのward1をward2へ置換

 

%s/\/\/.*/     : ファイル内の//でコメントアウトされた行すべてを削除(\バックスラッシュでエスケープ)

 

%: タグのペア位置に移動

a :カーソルの後ろにインサート

Shift+a : 行末にインサート

i :カーソルの前にインサート

Shift+i:  行頭にインサート

s :一文字削除してインサート

 

Shift+v → Shift+i  :複数行の先頭に入力

 

gp: 文末にペースト

nyw :n個の単語をコピー

x :一文字削除

cst[タグ][タグ]' : [タグ]を[タグ]'に変更 (scopetag)

cs [カッコ][カッコ]' : カッコの種類を変更 (Change Surround)

ds[タグ] : タグを削除

ysiw[タグ]: 単語を[タグ]で囲む //You Srround (iwはVim Text Objects)

ysas[タグ]: 文(.ピリオドまで)をタグで囲む//All Sentence

yss[タグ]: 行をタグで囲む

dw :以降の単語部分を削除

daw :単語全体を削除

di[タグ] ;[タグ]で囲まれた範囲を削除

dd :行を削除

da[タグ] : [タグ]全体を削除

5dd :5行削除

:sp  :画面分割

:sp xxxx.cpp :画面を分割してxxxx.cppファイルを編集

:e xxxx.cpp :xxxx.cppファイルを編集

u :アンドゥ

Ctr+r  :リドゥ

gg :ファイルの先頭へ移動

G :ファイルの最後へ移動

^  :行頭へ移動

$ :行末へ移動

+ :1行上の文頭に移動

- :1行下の文頭に移動

w :次の単語

b :前の単語

e : 次の単語の末尾

ge : 前の単語の末尾

 

m[バッファ文字] :バッファ文字でカーソル位置をマーク

`[バッファ文字] :マークしたカーソル位置へ移動

d`[バッファ文字] :マーク位置から現在位置までを削除

y`[バッファ文字] :マーク位置から現在位置までをコピー

:marks :マークしたリストを表示 

. :直前のコマンドを繰り返す

 

 

 

y + s + i + w + 囲い文字 or タグ // 囲文字で囲う

※you surrounded inneer word

^ : 行の先頭へ移動

$ : 行の末尾へ移動

 

 Ctr+V :矩形選択モード

Shift + i :(矩形選択モードで)編集

 

 

Ctr+W2回 :操作画面切り替え

:set hidden  :設定変更>保存せずに画面を閉じる ※バッファを使用して画面切り替えする場合に必要

:ls :バッファのファイル名リストを表示

:b ファイル名 :バッファにあるファイルを編集 

 

dw

 

dt;

 

di{

 

 

:wq (Write Quit)

:w !sudo tee %

 

 

//参考URL

https://qiita.com/takeharu/items/9d1c3577f8868f7b07b5

https://qiita.com/colorrabbit/items/755cfbb0e97d48280775

https://qiita.com/shukan0728/items/2789754347be7b589cba