ctags入门大全

ctags是什么

用于为源码工程中的变量,函数等各种标识符建立索引关系工具软件,windows中就是ctags.exe。很明显,这个对于查看代码非常好(比如sourceInsight等代码阅读软件),但是代码编辑时候的自动补全就不够了,还需其它工具软件的协同支持,比如cscope等支持。但是,更加智能好用的代码补全等功能,还是用clang,ccls等专业的语言服务器工具吧 (可能性能比ctags差一些,但是功能非常全)C/C++语言的服务器LS调研 (Language Server 实现代码索引 跳转定义 智能提示等功能)_标biao的博客-CSDN博客

ctags发展过程

最初的ctag(也叫传统ctags)非常简单,大多数 Unix 系统都能找到。只支持 C。只有基本的功能。

然后Exuberant Ctags (e-ctags) 改进了传统ctags的多语言支持,用户定义通过正则表达式搜索的新语言的能力。但是该项目,已经不更新了。官网:Exuberant Ctags 下载:Exuberant Ctags download | SourceForge.net

然后Universal Ctags(u-tags)的目标是继续开发 Exuberant Ctags,进一步做了发展,但是好像改动也不大。官网:Home · Universal Ctags 下载:Releases · universal-ctags/ctags-win32 · GitHub

所以现在我们下载到的ctags.exe,其实指的就是u-tags了,只是我们习惯简称了。比如我们可以看看版本信息:

ctags的命令行选项官网详细介绍:ctags — Universal Ctags 0.3.0 documentation

ctags相关名称

ctags可以在vim,emacs等编辑器(这两编辑器在Linux中使用最为广泛)中使用,ctags在emacs中叫做etags。

还有个叫做RTags的,利用了clang基础库,使得对c++的索引效果好很多,还能实时进行,但是仍然没有具备代码补全等语言服务器的功能。估计比ctags更好用一些(对于c++语言而言),但是应该复杂很多了,性能也下降了。这个工具知道的人少,应该用得不广泛。

参考博客

关于具体的一些使用,除了看官网,还可以看看这些博客

Universal Ctags使用 - 知乎

exuberant ctags、ctags、ptags等标签工具介绍_白 杨的博客-CSDN博客

VIM/EMACS编辑器及cscope/ctags/etags | 三言

VIM 利用ctags实现自动补齐功能-bluedrum-ChinaUnix博客

ctags使用详解(转载) - 走看看

VIM 除了ctags , clangcomplete 之外,还有哪些更好用的补全和代码浏览插件呢? - 知乎

【转】ctags使用详解 - 百度文库

vi代码智能提示功能及相关配置 - 走看看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值