vim的很多指令都还不熟悉,在此做个记录
1,文件打开与模式查找
vim -on file1 file2 ...
小"o"后跟要打开文件的个数,然后是文件列表,此指令用于打开多个文件,各文件上下排列,也称横向分屏
:sp [file]
在已打开文件的命令行输入,file为可选项,如果不输入file,则打开两次当前文件然后可以用":e"打开新文件,如果输入file,则横向分屏的同时打开新文件file
vim -On file1 file2 ...
:vsp [file]
纵向分屏指令
/word
向下查找word,第一次输入后,之后只需要“/”就可以向下查找
?word
向上查找word,第一次输入后,之后只需要"?"就可以向上查找
:vimgrep /pattern/ [% | * | ** | *.c | **/*]
模式查找,选项分别为在当前文件查找 | 在当前目录查找 | 在当前目录和子目录查找 | 在当前目录的c文件中查找 | 仅在子目录查找
cn 查找下一个
cp 查找上一个
copen/cw 打开匹配了查找字符的文件
cclose 关闭查找的文件
2, 文档对比
vim -d fil1 fil2
如果已经打开文件file1,
:vert diffsplit fil2 or :diffsplit fil2
如果已经打开两个文件
:diffthis
文件有更新时,刷新对比文件
:diffupdate
不同点的跳转
[c or ]c
合并差异
:dp 将不同应用于另外文件
:do 将不同应用于本文件
折叠:
zf创建折叠
zo打开折叠
zc关闭当前折叠
zm关闭所有折叠
zr打开所有折叠
zE删除所有折叠
zd删除当前折叠
za若当前打开则关闭,若当前关闭则打开
zj到下一折叠开始处
zk到上一折叠末尾
3,替换
单行替换
:s/xxx/yyy/g
全部替换
:s#xxx#yyy#g
指定行替换
:20,30s#xxx#yyy#g