doxygen не производит вывод из входного фильтра (doxyqml)

Я пытаюсь использовать doxyqml для создания документации QML через doxygen, но страницы документации не создаются .

В соответствии с документацией doxyqml я добавил запись *.qml в FILE_PATTERNS и добавил *.qml=doxyqml в FILTER_PATTERNS (doxyqml доступен из /usr/bin, поэтому для его запуска достаточно просто вызвать doxyqml в командной строке).

Из вывода doxygen я вижу, что шаблон файла *.qml работает, поскольку файлы появляются на этапе «Чтение» вывода, но не на этапе синтаксического анализа. Если я добавлю в файлы #define или какой-либо другой оператор, отличный от QML, то в выводе doxygen появится ошибка doxyqml, поэтому я знаю, что doxyqml вызывается правильно.

Я также знаю, что вывод doxyqml правильный, потому что если я скопирую вывод вызова doxyqml напрямую с одним из файлов qml и вставлю его в файл *.h, doxygen создаст для него документацию.

Как будто doxygen просто не читает вывод doxyqml. У кого-нибудь еще был такой опыт? Я использую doxygen 1.8.8 и последнюю кодовую базу doxyqml (7 июля 2014 г.).


person cmannett85    schedule 10.09.2014    source источник


Ответы (1)


Похоже, это потому, что Doxygen использует расширение файла, чтобы определить, какой синтаксический анализатор использовать для анализа текста, и поскольку *.qml является новым для него, он угадал неправильно (хотя я не знаю, какой он пытался использовать).

Решение состояло в том, чтобы сообщить Doxygen, какой синтаксический анализатор использовать для файлов QML, поэтому мне просто нужно было добавить qml=c++ к EXTENSION_MAPPING, и тогда все заработало, как и ожидалось.

person cmannett85    schedule 11.09.2014