一、快捷键

1.1 代码折叠/展开

在刚开始用zsh的时候,我就参考了池建强老师博客中的一篇vim文章,对vim进行了一定的配置,包括自动代码折叠。例如我写了如下一段代码:

void reverse(char *s,int from,int to)
{
	while(from < to)
	{
		char t = s[from];
		s[from++] = s[to];
		s[to--] = t;
	}
}

在vim编辑器里会被如下折叠起来:

4 --- 8 lines: {----------------}

在vim非编辑模式下,将光标停留在折叠行上,相应的折叠/展开的命令如下:

  • zo 展开
  • zc 收起
  • zn 全部展开
  • zN 全部折叠

1.2 插入

  1. 字符位置插入
    • i 在光标之前插入
    • a 在光标之后插入
  2. 行位置插入
    • A 在一行的结尾处追加
    • I 在一行的开头处插入
    • o 在光标所在位置的下一行打开新行插入
    • O 在光标所在位置的上一行打开新行插入

1.3 查找替换

vim全局替换命令为:

[addr]s/源字符串/目的字符串/[option]

其中,[addr]表示搜索范围,省略时表示当前行。如:“1,20”表示从第1行到第20行;“%”表示整个文件,效果同“1,$”;“.,$”表示从当前行到文件尾。

[option]表示操作类型。如 g 表示全局替换;c 表示进行确认;p 表示替代结果逐行显示;省略option时仅对每行第一个匹配串进行替换;如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义。