日期 | 修订版本 | 描述 | 作者 |
2009-05-11 | 0.0.1 | 初稿 | 温陵布衣 |
1 概述
1.1 简介
本节以Doxygen-1.6.2为例,介绍该工具的概貌。
Ø 功能:将源码中的注释提取出来,形成各种输出格式的文档;
Ø 支持的编程语言:完全支持 C、C++、Java、IDL、Objective-C、Python、PHP、C#、Fortran、VHDL,部分支持D;
Ø 输出格式:直接支持 HTML、Latex、RTF、manpage、Qt help project、XML,间接支持 chm、Qt Compressed Help、Postcript和PDF;
Ø 兼容 JavaDoc、Qt-Doc、KDOC等类似工具;
Ø 支持平台:Unix(包括Linux)、MacOs、Windows等;
邮件列表:
doxygen-user@lists.sourceforge.net
doxygen-develop@lists.sourceforge.net
Ø 作者:Dimitri van Heesch (dimitri@stack.nl) ;
Ø 参考手册:Doxygen 安装目录下的参考手册;
1.2 能完成的工作
Ø 它能从一系列源文件中生成在线浏览文档(HTML形式)或离线参考手册(LATEX形式)。还支持RTF(MS-Word),PostScript,带超链接的PDF,压缩的HTML和Unix man页。文档是直接从源文件中提取出来的,这使得文档与源代码很容易保持同步;
Ø 通过配置doxygen,你可以从未文档化的源文件中提取出代码结构。这对于从大的源码包中快速理清头绪是非常有用的。它还能自动产生出包含关系图、继承图和协作图,使你能直观地看出各种元素间的关系;
Ø 你甚至可以“滥用“doxygen来创建平常的文档,Doxygen的手册(manual)即是这么产生的。
1.3 功能框图
功能框图,描述了Doxygen的信息流,见下图。
2 如何使用
2.1 首次使用
Doxygen具有 图形化 和 命令行 两种操作模式。对于初学者,前者非常容易上手。
Ø 打开 bin/ doxywizard.exe,在向导中设置各项参数。主要是设置 Wizard->Project页面下的内容,其他页面可以保持默认值。这一标签页主要是设置欲读取源码的地址以及输出文档的地址。特别注意的是:必须勾上 “Scan recursively”选项;
Ø 在 doxywizard.exe 里,打开 Run 标签页,选择工作目录后,点击 Run doxygen 按钮,则自动在上面设置的目标目录下产生各种输出:html、Latex等;
2.1.1 中文乱码的解决方法
这边有个要特别注意的地方------字符集的问题:假如你欲读取的文档中的中文注释中采用的是GB2312(如 Source insight、记事本等编辑工具,默认的中文字符集即为GB2312),那么生成的文档中中文将是乱码。这是因为 Doxygen 默认 输入字符集 为UTF-8。我们只需将 Expert->Input->INPUT_ENCODING 修改为GB2312 即可解决该问题。
2.2 命令行方式
本节介绍 命令行操作的三个步骤。
2.2.1 新建配置文件
有两种方法。
第一种:通过如下命令产生默认配置文件,而后根据需要编辑 配置文件。
doxygen -g
第二种:通过上节说到的 doxywizard.exe 工具配置,而后保存配置文件。
配置文件的说明,参考 Doxygen 手册的 Configuration 一节。
2.2.2 运行doxygen
运行如下命令以生成文档。
doxygen -g
2.2.3 文档化代码
本节和上一节介绍了 doxygen 的GUI 和 Command 两种操作方式。大家根据上面的介绍生成的文档往往觉得没有人家 Doxygen 的手册好看。这就是缺少 文档化 的缘故。什么叫“文档化“,其实就是讨论怎么把你的注释恰当地放在代码中,以产生美观的文档。文档化也就是告诉我们:你要用好 Doxygen 的话,应该怎么写源码的注释。
显而易见,虽然这一节放在第三个步骤,但在一个新的项目中,这显然应该是第一个步骤。
3 入门文章
写到这边,突然在网上查到了 参考文献[2-4] 这几篇文章。觉得没必要再写了,人家已经写得相当好了。
就入门而言,先读参考文献[4],再读参考文献[3]。
4 配置文件
参考 doxygen manual 和 参考文献[2]。
5 如何文档化源码
参考 doxygen manual 和 参考文献[2]。
6 进阶
参考 doxygen manual 和 参考文献[5]。
参考文献[5] 提供了一种在Vim中自动输入Doxygen 注释的方式。
7 参考文献
1. doxygen_manual-1.6.2.chm:位于Doxygen的根目录
2. 学习用 doxygen 生成源码文档 主要学习该文对配置参数的讨论
3. Doxygen介绍 里面的几个注释示例比较好
4. 快速上手 快速上手 Doxygen
5. doxygen+VIM文档实用指南 vim 中增加一些写 doxygen注释 的宏
8 联系方式
希望这份文档对您有所帮助,若您发现任何问题或有任何更好的建议,欢迎与我联系!
温陵布衣:
MSN: sikinzen@hotmail.com
Mail: sikinzen @yahoo.com.cn
QQ: 526679213