Vim 简单操作
删除相关
删除光标处的单个字符
x
删除光标所在的行
dd
删除当前字符到单词尾包括空格的所有字符
dw
删除所有不包含字符的空行(空格也不包含)
:g/^\s*$/d
删除包含1的所有行
:g/1/d
删除不包含1的行
:v/1/d
删除不包含1或2或3或4的行
:v/1\|2\|3\|4/d
删除M(M要用ctrlv ctrlm来输入)
:%s/^M$//g
复制相关
命令复制当前整行的内容到vi缓冲区
yy
复制当前光标所在位置到单词尾字符的内容到vi缓存区,相当于复制一个单词
yw
复制光标所在位置到行尾内容到缓存区
y$
搜索替换
复制光标所在位置到行首内容到缓存区
y^
搜索,敲n向下搜索
/
搜索,敲n向上搜索
?
当前行将1替换成2
:s/1/2
用2替换所有的1
:g/1/s//2/g
全文搜索1并替换成2
:%s/1/2
跳转相关
跳转到行首
0
跳转到行尾
$
向下卷动一屏
C-f (forward)
向上卷动一屏
C-b (backward)
向下半屏
C-d (down)
向上半屏
C-u (up)
跳转到第一行
gg
跳转到最后一行
G
跳转到n行
:n
窗口操作
窗口间切换
^w w
跳转到左边窗口
^w h
跳转到下面窗口
^w j
跳转到上面窗口
^w k
跳转到右边窗口
^w l
跳转到最顶上窗口
^w t
跳转到最底下窗口
^w b
增大或缩小当前窗口
^w + -
上面打开新窗口
:split
上面打开窗口编辑新文件
:new
关闭当前窗口
:close
关闭除当前的所有窗口
:only
左边打开新窗口
:vsplit
左边打开窗口编辑新文件
:vnew
其他
设置bom格式
:set bomb
设置无bom格式
:set nobomb
撤销上一步的操作
u
恢复上一步被撤销的操作
ctrl_r