我试图在 C++项目的 README 内写明项目特性。 实际上,我只需要把.cpp 文件内的注释搬运到 README 内,就几乎可以解决问题。
但我找不到(或者不知道)提取注释的工具。
具体来说,我希望能从如下的代码:
/*
指出函数特性的注释
*/
int process(const char* str)
{
xxxxxxx
//只有当满足某个条件,才能为真
if( func(A) == true )
{
xxxxxxx
}
}
提取出这样的信息:
/*
指出函数特性的注释
*/
int process(const char* str)
//只有当满足某个条件,才能为真
if( func(A) == true )
我找不到现成的工具,因此只能自己写了一个小工具,勉强满足了自己的需求。
但我仍然好奇: 有无更简单直接的方法提取出.cpp 文件中的注释,以便于 README 的撰写呢?
我的工作环境是 unix + vscode (有时候是 vim )
1
wnpllrzodiac 14 天前
doxygen
有现成的轮子。 从代码生成帮助文档的。可以看看。 有空交流哈。我没用过,看别人用过。 |
2
yolee599 13 天前 via Android
楼上正解,doxygen 自动提取注释生成文档
|
3
bfdh 13 天前
doxygen +1
|
4
guyeu 13 天前
doxygen 确实正解,楼主想 diy 的话也可以考虑直接用 `clang++ -ast-dump=json` 这样的方式把语法树导出成结构化的文本,然后自己处理。
|
5
iOCZS 13 天前
文档生成工具能处理代码内部的注释吗?
|
6
jamesdd 13 天前
lex + yacc ?
|
7
sin41018 OP 谢谢各位的解答,doxygen 确实是好用且直接的工具。
我的小工具是一个 150 行代码的纯文本处理工具,由于不涉及到编译器组件,无论我怎么设置解析规则,这个工具实在是效果有限。 我个人得出了如下的结论: 1.doxygen 是第一选择。 2.如果要自己 DIY ,应当从编译器组件入手。纯文本分析效果非常有限,总有一些场合不适用。 |