用vim很熟练了,想转emacs,写点lisp之类的代码,就把自己常用的vim命令整理了出来。
/ 表示或者
- 不松手Ctrl按
-> 松手后按
hjkl 左下上右
Ctrl-f 向下翻页
Ctrl-b 向上翻页
u undo
Ctrl-r redo
0 回到一行开头
^ 回到一行第一个不是blank字符处
$ 回到一行末尾
g_ 回到一行最后一个不是blank字符处
dd 删除本行
dw / cw 删除从光标处到单词结尾处, cw 后会变成insert模式
db / cb 删除光标前到单词开头处,cb 后会变insert 模式
3dd 删除3行
D / d$ 删除光标位置到本行结尾的内容
d0 删除光标位置到本行开头的内容
d 剪切选中区域
y 复制选中区域
p / P 在当前光标的 下/前 一个字母处,粘帖复制或剪切内容
r 替换当前光标字母
R 替换本行从当前光标字母开始,直到按Esc键处结束
:37 / 37G 跳到文件第37行
gg 跳到文件第1行
G 跳到文件最后一行
{ 跳到上一段代码,python代码段以空行识别
} 跳到下一段代码,python代码段以空行识别
% 跳到当前括号 -- (, [, {, ), ], } 配对的另一半
dgg 从当前行删除到第一行
dG 从当前行删除到最后一行
Ctrl-[ Esc
ZZ 保存并退出
gd / # 高亮本文件所有这个单词,并跳到单词定义处
`` 跳回刚才的位置
V 上下移动 选中某些行
Ctrl-v 选中一片区域
Ctrl-v 上下移动 I -> # 选中第一列的若干行,I,#,注释掉这些行,可以用//代替#来注释c++
Ctrl-v 上下左右移动 d 选中一片矩形区域,删除
~ 选中区域后,~ 会把小写变大写,大写变小写
/word 向后搜索本文件word单词,并高亮所有匹配单词,n寻找下一个
?word 向前搜索本文件word单词,并高亮所有匹配单词,n寻找下一个
:vs filename 水平左右分屏,打开filename文件
:sp filename 垂直上下分屏,打开filename文件
Ctrl-w-w 在分屏的页面间切换
:2,10s/a/b/gc 2~10行所有a替换成b,s表示substitute,g表示全局替换,c表示进行确认
:1,$s/a/b/g / :%s/a/b/g 全文所有行a替换成b
:.,$s/a/b/g 从当前行到文件尾把a替换成b
阅读(1607) | 评论(0) | 转发(0) |