Как сгенерировать документацию в RTF из Javascript - PullRequest
0 голосов
/ 29 мая 2018

В настоящее время я пытаюсь сгенерировать RTF-документацию для файлов HTML, JavaScript и CSS в проекте, как я могу это сделать из Doxygen в части проекта Java.

Файлы Javascript комментируются JSDoc, ноЯ могу легко изменить это на другой формат.

Мне известны JSDoc, ESDoc и YUIDoc.Все они генерируют HTML, хотя не все они работают хорошо, например, YUIDoc пропустил много файлов из-за проблем с именами файлов.Кажется, что ни один из них не имеет дело с файлами CSS (или HTML).

Я также знаю о pandocs.Я полагаю, что возможно использовать JSDoc или ESDoc для генерации HTML, и они конвертируются в RTF через Pandoc, но пока не удалось это сделать.

Какие-нибудь другие решения?Кто-нибудь уже сделал это?

Даже частичное решение, такое как только Javascript, поможет.

1 Ответ

0 голосов
/ 30 мая 2018

Вы можете поддерживать рабочий процесс с помощью Doxygen и по-прежнему документировать файлы javascript, используя надлежащий фильтр и незначительные изменения в файле конфигурации.

В руководстве по Doxygen цитируется js2doxy.pl в качестве сценария Perl, который помогает в документации js, нотакже предупреждает, что оригинальная страница автора в настоящее время недоступна.

Справку по фильтру вы найдете по этой ссылке: https://gist.github.com/sarnold/d6294abab8fb573fc49069de62fc549a

Если вы решите использовать фильтр этой ссылки, выдля запуска потребуется файл node.js.Но вы можете разработать собственный фильтр.

После того, как вы выберете свой фильтр, вам нужно изменить конфигурационный файл Doxygen, чтобы найти и обработать файлы javascript.

Найдите тег управления FILE_PATTERNS в своем оригиналеКонфигурационный файл и настройте его значение:

FILTER_PATTERNS =*.js=doxygen.js

Где doxygen.js должен быть путем к желаемому фильтру JavaScript.

Найдите тег управления FILE_PATTERNS ивключите * .js в список завершений.

Измените тег INPUT, чтобы он указывал на вашу исходную папку.

Наконец, закомментируйте файл js, используя шаблоны, подходящие для фильтра.Фильтр doxygen.js использует стиль \\\ @ перед функциями и пространствами имен, как в следующем примере:

/// @file Sync.js
/// @namespace Sync
/// Module for loading and storing data

var Sync = {
    /// @function Sync.load
    /// Loads an resource
    /// @param {String} id the GUID of the resource
    /// @param {Function} success callback to be executed with the data on suceess
    /// @param {Function} error callback to be executed with error description in case of failure
    /// Loads an resource
    load : function (id, success, error) {
    },
}

После этого вы можете запустить Doxygen и сгенерировать RTF, как в части Java вашего проекта

...