|
1 | 1 |
|
2 | 2 |
|
3 | 3 |
|
4 | | -#vim 使用 |
5 | | - |
6 | | -###命令行模式: |
7 | | -| 提示符 | 说明 | |
8 | | -| :------ | :---------- | |
9 | | -| : | 执行一条Ex命令 | |
10 | | -| / | 执行正向查找 | |
11 | | -| ? | 执行反向查找 | |
12 | | -| = | 对一个vim 脚本表达式求值,在插入模式下安<C-r>=才能进入,只能计算加减乘 | |
13 | | -| :s/target/repl | 执行行内替换 (&重复做、u撤销) | |
14 | | - |
15 | | - |
16 | | -###普通模式: |
17 | | -| 命令 | 说明 | |
18 | | -| :------------- | :--------------- | |
19 | | -| . | 重复上一个操作 | |
20 | | -| C 等效 c$ | 向后删除 | |
21 | | -| s 等效 cl | 删除当前光标下的字符,并进入插入模式 | |
22 | | -| S 等效 ^C | 从当前行的行首删除整行内容,并进入插入模式 | |
23 | | -| I 等效 ^i | 将光标移到当前行行首,并进入插入模式 | |
24 | | -| A 等效 $a | 将光标移到当前行行尾,并进入插入模式 | |
25 | | -| o 等效 A<CR> | 向下新增一行,并进入插入模式 | |
26 | | -| O 等效 ko | 向上新增一行,并进入插入模式 | |
27 | | -| vit | 选中一对html标签之间的文本 | |
28 | | -| >G | 缩进光标所在行及以下的所有行 | |
29 | | -| daw | 删除当前光标所在的整个单词 (delete a word) | |
30 | | -| cit | 删除HTML标签里的内容 | |
31 | | -| \<C-a>/\<C-x> | 对当前数字加1/减1 | |
32 | | -| zz | 显示当前所在行的上下文 | |
33 | | -| r | 替换当前字符 | |
34 | | -| p/P | 向光标后/前粘贴内容 | |
35 | | -| R | 进入替换模式,可以连续替换 | |
36 | | -| # | 高亮与当前光标所在单词相同的所有单词 | |
37 | | -| * | 选中当前光标所在单词一样的单词 | |
38 | | -| U | 将当前选中的字符转为大写 | |
39 | | -| u | 将当前选中的字符转为小写 | |
40 | | -| `. | 回到上次修改的地方 | |
41 | | -| mk | 把当前光标所在位置,设置一个名字为k的标记,使用`k可以跳回这里,最多26个标记。 | |
42 | | -| mB | 把当前文件,设置一个名字为B的标记,在其他文件下使用`B可以跳到这个文件来,最多26个标记。 | |
43 | | -| {/} | 跳到上一段/下一段的开头 | |
44 | | -| H/M/L | 跳到屏幕的上/中/下 | |
45 | | -| "+yy | 复制光标所在行到系统剪贴板 | |
46 | | -| "+p | 将系统剪贴板的内容粘贴到vim来 | |
47 | | - |
48 | | - |
49 | | -###插入模式下: |
50 | | -| 命令 | 说明 | |
51 | | -| :----- | :------ | |
52 | | -| \<C-h> | 删除前一个字符 | |
53 | | -| \<C-w> | 删除前一个单词 | |
54 | | -| \<C-u> | 删除至行首 | |
55 | | -| \<C-[>/\<C-o> | 替代ESC | |
56 | | -| \<C-v>u{1234} | 插入特殊字符,例如:\<C-v>u00bf | |
57 | | - |
58 | | - |
59 | | -###可视化模式: |
60 | | -| 命令 | 说明 | |
61 | | -| :----- | :------ | |
62 | | -| viw | 选中当前单词 | |
63 | | -| v | 激活面向字符的可视模式 | |
64 | | -| V | 激活面向行的可视模式 | |
65 | | -| \<C-v> | 激活面向列块的可视模式 | |
66 | | -| vb | 以-个单词为单位,往前选中,如:vbbb,选中前3个单词 | |
67 | | -| ve | 以-个单词为单位,往后选中,如:vee,选中前2个单词 | |
68 | | -| o | 在上面三种操作中,移动光标到选中区域的首或尾 | |
69 | | -| gv | 重选上次的高亮选区 | |
70 | | -| \<C-v> j j $ A ; \<ESC> | 在长短不一的行后都加上一个;号 | |
71 | | - |
72 | | - |
73 | | -###操作符: |
74 | | -| 命令 | 说明 | |
75 | | -| :----- | :------ | |
76 | | -| c | 修改 | |
77 | | -| d | 删除 | |
78 | | -| y | 复制到寄存器 | |
79 | | -| g~ | 反转大小写 | |
80 | | -| gu | 转换为小写 | |
81 | | -| gU | 转换为大写 | |
82 | | -| > | 增加缩进 | |
83 | | -| < | 减小缩进 | |
84 | | -| = | 自动缩进 | |
85 | | -| ! | 使用外部程序过滤动作命令所跨越的行 | |
86 | | - |
87 | | -###动作命令:(配合操作符c,d,y,v使用) |
88 | | -| 命令 | 说明 | |
89 | | -| :----- | :------ | |
90 | | -| iw | 当前单词 | |
91 | | -| iW | 当前字符串(以空格为分界) | |
92 | | -| is | 当前句子 | |
93 | | -| ip | 当前段落 | |
94 | | -| aw | 当前单词 + 一个空格 | |
95 | | -| aW | 当前字符串 + 一个空格(以空格为分界) | |
96 | | -| as | 当前句子 + 一个空格 | |
97 | | -| ap | 当前段落 + 一个空行 | |
98 | | - |
99 | | - |
100 | | - |
101 | | -###命令行模式: |
102 | | -| 命令 | 说明 | |
103 | | -| :----- | :------ | |
104 | | -| :3d | 删除第三行 | |
105 | | -| :2,5p | 2~5行 | |
106 | | -| :.,$p | 当前行到最后一行 | |
107 | | -| :%p | 所有行 | |
108 | | -| :ls | 查看在缓冲区的所有文件 | |
109 | | -| :buffer N | 结合:ls 使用,调到指定的文件进行编辑 | |
110 | | -| :e. | 打开当前路径的文件目录 | |
111 | | -| :g/andy/d | 删除有"andy"字符的行 | |
112 | | -| :v/andy/d | 只保留有"andy"字符的行 | |
113 | | -| :sort | (vi{,:sort) 对css的属性按字母排序 | |
114 | | - |
115 | | - |
116 | | - |
117 | | -###其他: |
118 | | -vim 中提到的 `缓冲区` 就是vim在编辑某个文件时,实际上是在编辑.swap文件,保存时才被写入到实际的文件中的。 |
119 | | - |
120 | | - |
121 | | -vim -u NONE -N 以出厂配置来使用vim |
122 | | - |
123 | | -操作符号 + 动作命令 = 操作 |
124 | | - |
125 | | - |
126 | | - |
127 | 4 | 我正在使用的vim ,自己加入了多个主题供候选。 |
128 | 5 |
|
129 | 6 | ## install |
|
0 commit comments