2014-09-10 96 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,然後一切按預期工作。