星期五, 二月 14, 2020

VIM学习笔记 生成标签文件(Generates Tags File)

本节将介绍如何使用Ctag工具,来扫描代码库并生成包含关键词索引的标签文件(Tags File)。基于标签文件,Vim可以在标签之间快速跳转,并可以针对标签自动补全

Ctags

Ctags是一个开源的命令行工具,用于从代码中索引标签(比如method, class, function等)并生成tags文件。

目前Ctags支持包括Vim在内的41种编程语言。对于vimscript脚本,其中的functions, class, commands, menu, map, variable等语法,将会作为关键字被索引至tags文件中。

对于Mac操作系统,您可以使用包管理器Homebre进行安装:

$ brew install ctags

对于Linux操作系统,您可以使用相应的包管理器进行安装:

$ sudo yum install ctags

对于Windows操作系统,您可以直接将可执行文件放置在 PATH 环境变量指定的目录之内;也可以使用包管理器Chocolatey进行安装:

$ choco install ctags

您可以在操作系统的命令行中使用以下命令,来验证ctags是否安装成功,并获得相关的帮助信息:

$ ctags --help

在Vim中使用以下命令,可以针对指定的文件生成tags文件:

:!ctags filename

你也可以针对当前目录及其子目录中的所有文件生成tags文件:

:!ctags -R .

标签文件(Tags File)

默认生成的标签文件,是名为tags的文本文件。其开头包含若干行元数据,之后每行包含一个关键字以及与之匹配的文件名和位置信息。其中的关键字,按字母排序;并且以正则表达式作为定位信息。

The Anatomy of a tags File

你可以使用:help tags-file-format命令,查看标签文件的格式说明。

自动生成标签文件

利用自动命令(autocmd),可以在保存文件时自动更新tags文件:

:autocmd BufWritePost * call system("ctags -R")

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

没有评论:

发表评论