我正在尝试使用doxyqml通过doxygen生成QML文档,但是未创建文档页面。
根据doxyqml文档,我已经在*.qml
中添加了FILE_PATTERNS
条目,并在*.qml=doxyqml
中添加了FILTER_PATTERNS
(doxyqml可从/usr/bin
获得,因此只需在命令行上调用doxyqml
就可以启动它)。
从doxygen输出中,我可以看到*.qml
文件模式正在工作,因为文件出现在输出的“读取”阶段-而不是解析阶段。如果我在文件中添加#define
或其他一些非QML语句,则doxygen输出中会出现doxyqml错误,因此我知道doxyqml被正确调用了。
我也知道doxyqml的输出是正确的,因为如果我直接复制其中一个qml文件调用doxyqml的输出,然后将其粘贴到*.h
文件中,则doxygen将为其构建文档。
好像doxygen只是不读取doxyqml的输出。有没有其他人有这种经验?我正在使用doxygen 1.8.8和最新的doxyqml代码库(2014年7月7日)。
最佳答案
似乎是因为Doxygen使用文件扩展名来确定要使用哪个解析器来分析文本,并且由于*.qml
是它的新功能,所以猜测是错误的(尽管我不知道它尝试使用的是哪个) 。
解决方案是告诉Doxygen QML文件使用哪个解析器,所以我只需要在qml=c++
中添加EXTENSION_MAPPING
,然后一切都按预期工作。