Mac OS X上大量CTAG的问题
我试图使用丰富的Ctags 5.8为C标准库生成标记,但是似乎没有完全解析标题。。。例如,当我为/usr/include/string.h生成标记时,我得到如下结果:Mac OS X上大量CTAG的问题,c,macos,ctags,C,Macos,Ctags,我试图使用丰富的Ctags 5.8为C标准库生成标记,但是似乎没有完全解析标题。。。例如,当我为/usr/include/string.h生成标记时,我得到如下结果: !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ !_TAG_PROGRAM_AUTHOR D
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
NULL /usr/include/string.h /^#define NULL /;" d
_SIZE_T /usr/include/string.h /^#define _SIZE_T$/;" d
_SSIZE_T /usr/include/string.h /^#define _SSIZE_T$/;" d
_STRING_H_ /usr/include/string.h /^#define _STRING_H_$/;" d
size_t /usr/include/string.h /^typedef __darwin_size_t size_t;$/;" t
ssize_t /usr/include/string.h /^typedef __darwin_ssize_t ssize_t;$/;" t
strerror /usr/include/string.h /^char *strerror(int) __DARWIN_ALIAS(strerror);$/;" v
显然,缺少了很多函数(strcpy、strlen、strcmp等)。下面是指向实际头文件的链接:
我刚刚运行了
ctags/usr/include/string.h
我做错什么了吗?非常感谢您的帮助……我在这里找到了一些相关信息:
值得注意的是:
默认情况下,ctags仅为函数原型生成标记
对于实际的函数定义。有关详细信息,请参阅文档
---ctags中的种类选项(1)
因此,我必须添加
--c-kinds=+p
标志,以便解析函数原型。我不知道为什么默认情况下它不解析原型 我认为默认情况下CTAG不包括函数原型,只包括函数实现
如果您将其命名为ctags--c-kinds=+px/usr/include/string.h
,那么您是否也得到了声明
(根据手册页面,您可以调用
ctags−−列表−种类=c
以了解您可以获得哪些CTAG输出。)感谢您的回答!我们几乎是同时回答的,所以我选择了你的答案,因为它更详细!我也有同样的问题。但这个答案没有帮助。strcmp和其他功能被忽略。。