[/home/brimmer/src]$ ctags -R “-R”表示递归创建,也就包括源代码根目录下的所有子目录下的源程序。“tags”文件中包括这些对象的列表: l 用#define定义的宏 l 枚举型变量的值 l 函数的定义、原型和声明 l 名字空间(namespace) l 类型定义(typedefs) l 变量(包括定义和声明) l 类(class)、结构(struct)、枚举类型(enum)和联合(union) l 类、结构和联合中成员变量或函数 VIM用这个“tags”文件来定位上面这些做了标记的对象,下面介绍一下定位这些对象的方法: 1) 用命令行。在运行vim的时候加上“-t”参数,例如: [/home/brimmer/src]$ vim -t foo_bar 这个命令将打开定义“foo_bar”(变量或函数或其它)的文件,并把光标定位到这一行。 2) 在vim编辑器内用“:ta”命令,例如: :ta foo_bar 3) 最方便的方法是把光标移到变量名或函数名上,然后按下“Ctrl-]”。用“Ctrl-o”退回原来的地方。 注意:运行vim的时候,必须在“tags”文件所在的目录下运行。否则,运行vim的时候还要用“:set tags=”命令设定“tags”文件的路径,这样vim才能找到“tags”文件。快速改正错误 在VIM编辑器的环境下用“:make”就可以编译程序,当然其前提是在当前目录下有Makefile文件。运行完“:make”之后,如果程序中有错误,就会显示出来。这时候,光标会自动指向第一个出现错误的地方,而且你还可以看到错误的提示。然后,你就可以改正错误,而不用手工找到出错的那一行。记住下面几个有用的命令: l “:cl”列出错误 l “:cn”让光标指向下一个错误 l “:cp”让光标指向上一个错误 l “:cnew”从头开始 你甚至可以让VIM识别出其它编译器而不是gcc的错误提示。这对一些开发嵌入式系统的程序员这很有用,因为他们很可能用的不是gcc而是其它编译器。通过设置“errorformat”的值,可以让VIM识别出编译器的出错提示。因为不同的编译器的出错提示是不同的,所以如果用的不是gcc就要重新设置。 “errorformat”的值是一个字符串,它的格式和C语言的scanf的字符串格式相识。 gcc的“errorformat”的值为:%f:%l:%m。其中“%f”表示文件名,“%l”表示行号,“%m”表示出错信息。 用“:h errorformat”查看详细的帮助信息。 用“:h quickfix”、“:h make”、“:h makeprg”、“:h errorfile”查看其它的信息。有用的快捷键 下面的这些快捷键对程序员很有帮助:在函数中移动光标 [[ 转到上一个位于第一列的“{”