第1章 Vim解决问题的方式

技巧1 认识 . 命令

 1 # . 
 2 #   重复上一次操作
 3 # x
 4 #    删除当前位置的字符
 5 # dd
 6 #    删除当前行
 7 # >G
 8 #    光标位置及以向下所有行向未尾处缩进
 9 # j
10 #    光标位置移到下一行对就的位置
11 # . 可以重复以上所有命令,除了j以外。只重复改变文本内容的操作?

技巧2 不要自我重复

 1 # 在第一行未尾处添加 ;
 2 #    A;
 3 #    ESC退出插入模式
 4 #    j.
 5 #    j.
 6 #.....
 7 
 8 # $
 9 #    光标移动到行的最后一个字符上
10 # ^
11 #    光标移动到行的第一个字符上
12 # a
13 #    光标后插入字符
14 # k
15 #    与j相反,移动到上一行相同位置
16 
17 # 一箭双雕
18 # $a 等价于 A
19 # C 等价于 c$
20 #    删除光标位置至行未字符,并进入插入模式
21 # s 等价于 cl
22 #    删除光标位置处字符,并进入插入模式
23 # S 等价于 ^C
24 #    光标回到行首,并删除整行字符和进入插入模式
25 # I 等价于 ^i
26 #    回到行尾,并进入插入模式
27 # o 等价于 A<ER>
28 #    跳到行尾,插入模式,Enter回车
29 # O 等价于 ko
30 #    与o相反,向上插入一行,并进入插入模式

技巧3 以退为进

 1 # h j k l
 2 #   左 下 上 右 光标移动操作
 3 
 4 # f{char}
 5 #    查找下一处指定字符出现的位置
 6 # ;
 7 #    到下一个目标字符上
 8 
 9 # var foo = "method("+argument1+","+argument2+")";
10 # 将以上的js代码按规范拼接
11 # f+ s 空格+空格 ;. ;.

技巧4 执行、重复、回退

1 # 目的            操作            重复            回退
2 # 做出一个修改            {edit}            .            u
3 # 在行内查找下一指定字符            f{char}/t{char}            ;            ,            
4 # 在行内查找上一指定字符            F{char}/T{char}            ;            ,
5 # 在文档中查找下一处匹配项            /pattern<CR>            n            N
6 # 在文档中查找上一处匹配项            ?pattern<CR>            n            N
7 # 执行替换            :s/target/repalcement            &            u
8 # 执行一系列修改            qx{changes}q            @x            u

技巧5 查找并手动替换

 1 # *
 2 #    跳转到下一个相同的单词   
 3 # cw
 4 #    删除由光标至单词尾处(特殊字符不删除)
 5 
 6 # 将文档中的content 修改为 copy
 7 # 方法1: 一个个修改
 8 #    光标定位到第一个content==》*==》cw==>copy==>Esc==>n.==>n.
 9 # 方法2:
10 #    :%s/content/copy/g

技巧6 认识 . 范式

     对上面所使用的.进行了一次总结

posted @ 2018-01-24 23:22  KD-VS-WB  阅读(103)  评论(0)    收藏  举报