2014-09-10 63 views
4

我试图使用doxyqml通过doxygen生成QML文档,但文档页面没有被创建。doxygen没有生成输入过滤器的输出(doxyqml)

由于每doxyqml文档,我添加了一个*.qml进入FILE_PATTERNS,并添加*.qml=doxyqmlFILTER_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日)。

回答

6

这似乎是因为Doxygen使用文件扩展名来计算出什么语法分析器来分析文本,并且由于*.qml对它来说是新的,所以它猜测是错误的(尽管我不知道它尝试着哪个使用)。

解决方案是告诉Doxygen哪个解析器用于QML文件,所以我只需要将qml=c++添加到EXTENSION_MAPPING,然后一切按预期工作。