Normal mode
- * search word
 - n next search word
 - . repeart
 
- vitu vs guit (replace Uppercase to lowercase)
 
- 
dip p is Paragraph
 - 
dis s is sentence
 - 
m{a-zA-A} as mark lowcase is this file Uppecase is global
 - 
`{a-zA-A} as mark lowcase is this file Uppecase is global
 - 
:jumps
 - 
o previous  - 
i next  - 
:changes
 - 
g; previous chane list
 - 
g, next change list
 - 
`. latest change point
 - 
^. latest insert point
 - 
gf jump file
 - 
[ previous  - 
] next  - 
_d{motion} black hall rgister
 - 
ad{motion} ap{motion} ap use “a” register
 - 
“+p paste clip board
 - 
“%p current file name
 - 
”%# altanative file name
 - 
“.p latest insert text
 - 
“:p latest exec command
 - 
”/ latest search word
 - 
q{register} Start macro
 - 
q end macro
 - 
visual mode + “normal @a ” paralel exec
 - 
:argsdo normal @a paralel exec
 - 
/a.k.a.
b{ackwoar}d a.k.a  - 
/a.k.a.
a.k.a  - 
/\Va.k.a.
a.k.a  - 
/\V(%(And|D)rew) (Neil) register 1 = andrew or drew , register 2 = Neil
 - 
:%s//\2, \1/g
 - 
:%s/before/after first mach
 - 
:%s/before/after/g in line
 - 
:%%s/before/after/g global
 - 
:%%s/before/after/gc global and prompt
 - 
/ latest serch word  - 
:%%s/
r//after/gc global and prompt  - 
/\V(
| )  - 
:%%s//={“dog”:“man”,“man”:“dog”}[sub-match(1)]/g
 - 
:grep word * make quick list
 - 
:cnext / :cprev jump to source
 - 
:vim /
r// ** vimgrep  
Global command
// Delete html tag
- /\v</?\w+>
 - :g//d
 
// delete donsn’t contain href
- 
:v/href/d
 - 
:g/word display lines contain word
 - 
:g/word/yank A lines contain word regist register A(uppercase is append, lowercase is over write)
 - 
:g/word/t$ Paste buttom line contain word
 
Insert mode
r 0 paste register 0 r -p {registar} past register r = calc - gv latest selected area
 h delete left char w delete left word u delete to line first 0 onetime normal mode r+ paste clip board 
Visual mode
- o toggle cursol in selected area
 - gu lowwer case
 - gU upper case
 - : command for selected area
 - S’ Sorround vim
 - S” Sorround vim
 - S[ Sorround vim
 - cs”’ Sorround vim change ’ to ”
 
Command mode
- 
/pattern
search for forward  - 
?pattern
search for backward  - 
:s/target/replacer
replace  - 
:s/target/replacer/g
replace global  - 
:[range]delete [x] to register
 - 
:[range]yank [x] to register
 - 
:[range]put [x] to register
 - 
:[range]copy [address]
 - 
:[range]t [address] equal copy
 - 
:[range]move [address]
 - 
:[range]m[address] equal move
 - 
:[range]join
 - 
:[range]normal {command}
 - 
:[range]substitute/{Pattern}/{string}/[flag] replace word first word
 - 
:[range]global/{pattern}/[cmd] replace global
 - 
:1 to head
 - 
:$ to bottom
 - 
:3p to line numbe 3 and print
 - 
:2.5p print between line number 2 to 5
 - 
:%s//
r w/g Replace  - 
r w is select word to comman window  - 
r a is select WORD to comman window  - 
r 0 paste register 0 to command window  - 
q: history
 - 
:2,$!sort -t ’,’ -k2 sort for selected area
 - 
:e shell
 - 
:!{cmd} :l
 - 
:[rang]!{filter}
 - 
:bd buffer delete
 - 
:%% active path
 - 
:cd %%
 - 
:lcd %%
 - 
:!mkdir -p %%
 
Pattern
/#\([0-9a-fA-F]\{6}\|[0-9a-fA-F]\{3}\)
/#\([0-9a-fA-F]\{6}\)
↓
/\v#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})
/\v#([0-9a-fA-F]{6})
↓
/\v#(\x{6}|\x{3})重複
/\v<(\w+)\_s+\1>
* \_s は空白文字 改行文字境界
/\vthe
↓
/\v<the>入れ替え
/\v(%(And|D)rew) (Neil)
%s//\2, \1/g強調表示の絞り込み
* ""の中を強調表示
/\v"\zs[^"]+\ze"カーソル上の単語をコマンドラインへ
<C-r><C-w>Match Count
:%s///gn単語の末尾へ
/word/e単語の末尾へ変更
//eシングルコーテーション内選択
/\v'([^']|'\w)+'
/\v'(([^']|'\w)+)'ダブルコーテーションへ変更
:%s//"\1"/g統合
:%s/\v'(([^']|'\w)+)'/"\1"/g確認
:%s/\v'(([^']|'\w)+)'/"\1"/gch2, h3, h4 -> h1, h2, h3
/\v\<\/?h\zs\d
:%s//\=submatch(0)-1/g複数ワード入れ替え
/\v(<man>|<dog>)
%s//\={"dog":"man","man":"dog"}[submatch(1)]/gPlugin abolish
:%S/{man,dog}/{dog,man}/gBuffer 全部に実行
*Pragmatic Vim <- 対象
*Pragmatic bookshelf  <- 非対称
/Pragmatic\ze Vim
:vimgrep /<C-r>// **/*.txt
:argsdo %s//Practical/geQuickfix に実行
:cdoファイルなの{}内のソート
:g/{/ .+1,/}/-1 sortNerdtree
- ” File node mappings~
 - ” double-click,
 - ” o: open in prev window
 - ” go: preview
 - ” t: open in new tab
 - ” T: open in new tab silently
 - ” middle-click,
 - ” i: open split
 - ” gi: preview split
 - ” s: open vsplit
 - ” gs: preview vsplit
 - ” 
: custom open  - ”
 - ” ----------------------------
 - ” Directory node mappings~
 - ” double-click,
 - ” o: open & close node
 - ” O: recursively open node
 - ” t: open in new tab
 - ” T: open in new tab silently
 - ” 
: custom open  - ” x: close parent of node
 - ” X: close all child nodes of
 - ” current node recursively
 - ” middle-click,
 - ” e: explore selected dir
 - ”
 - ” ----------------------------
 - ” Bookmark table mappings~
 - ” double-click,
 - ” o: open bookmark
 - ” go: preview file
 - ” go: find dir in tree
 - ” t: open in new tab
 - ” T: open in new tab silently
 - ” i: open split
 - ” gi: preview split
 - ” s: open vsplit
 - ” gs: preview vsplit
 - ” 
: custom open  - ” D: delete bookmark
 - ”
 - ” ----------------------------
 - ” Tree navigation mappings~
 - ” P: go to root
 - ” p: go to parent
 - ” K: go to first child
 - ” J: go to last child
 - ” 
: go to next sibling  - ” 
: go to prev sibling  - ”
 - ” ----------------------------
 - ” Filesystem mappings~
 - ” C: change tree root to the
 - ” selected dir
 - ” u: move tree root up a dir
 - ” U: move tree root up a dir
 - ” but leave old root open
 - ” r: refresh cursor dir
 - ” R: refresh current root
 - ” m: Show menu
 - ” cd:change the CWD to the
 - ” selected dir
 - ” CD:change tree root to CWD
 - ”
 - ” ----------------------------
 - ” Tree filtering mappings~
 - ” I: hidden files (off)
 - ” f: file filters (on)
 - ” F: files (on)
 - ” B: bookmarks (on)
 - ”
 - ” ----------------------------
 - ” Custom mappings~
 - ”
 - ” ----------------------------
 - ” Other mappings~
 - ” q: Close the NERDTree window
 - ” A: Zoom (maximize-minimize)
 - ” the NERDTree window
 - ” ?: toggle help
 - ”
 - ” ----------------------------
 - ” Bookmark commands~
 - ” :Bookmark [
]  - ” :BookmarkToRoot 
 - ” :RevealBookmark 
 - ” :OpenBookmark 
 - ” :ClearBookmarks [
]  - ” :ClearAllBookmarks
 - ” :ReadBookmarks
 - ” :WriteBookmarks
 - ” :EditBookmarks
 
