По умолчанию" домашний " текст и содержимое для JSDoc

после запуска базовой компиляции/рендеринга JSDoc из узла.js:

jsdoc file1.js file2.js

Я получаю хорошо отформатированный документ, используя шаблон по умолчанию внутри каталога "out". Почти все, как и ожидалось!

но при открытии документа он всегда говорит "Домой" в индексе.html-страница, не имеет содержимого на этой начальной странице и имеет "Home" в навигации боковой панели.

как и где я могу указать название проекта, чтобы он заменил "Home"? Я тоже хочу см. описание проекта, а также сведения об авторе и авторском праве.

это кажется самым основным из вещей, которые нужно сделать в JSDoc, но я не могу найти информацию! Я попробовал следующее, основываясь на какой-то случайной статье, которую я нашел в интернете:

/** 
 * This JavaScript file contains foo bar baz...
 * 
 * @projectname Project Name
 * @version 0.1
 * @author Greg Pettit
 * @copyright 2015
 * 
 */

но я не получаю любви.

[отредактированный, чтобы добавить:]

обнаружена директива @file / @fileOverview / @overview (все синонимы), которая несколько полезна, поскольку теперь я могу описать и установить авторское право / авторская информация для каждого файла:

/** 
 * @file Project description which renders below the individual filename and therefore isn't a real overview blurb.
 * 
 * @version 0.1
 * @author Greg Pettit
 * @copyright 2015
 * 
 */

это оставляет 2 "проблемы" для решения еще:

  1. обзорное описание; я думаю, что @file заботится о большинстве моих потребностей, но поскольку это каждый файл, я все равно хотел бы абзац типа "введение" или обзорный абзац, который появляется перед описаниями включенных файлов.

  2. замена этого" домашнего " текста пользовательским текстом

4 ответов


создать домашнюю страницу

создать файл уценки README.md

генерация jsdoc:

$ jsdoc path/to/js path/to/readme/README.md

чтобы узнать больше об этом визите официальная документация

изменить' Home ' текст

Я не думаю, что это правильный способ сделать это, но это работает.

если у вас установлен jsdoc в файле шаблона поиска проекта в вашем рабочем каталоге, мой был:

./node_modules/jsdoc/templates/default/publish.js

затем найдите "Home" с помощью команда поиска и заменить текстом, следующий шаг-указать шаблон при создании jsdoc:

 $ jsdoc ./src/scripts/ ./README.md -t node_modules/jsdoc/templates/default/

я не могу комментировать, поэтому я добавлю Примечание здесь, чтобы уточнить, как сделать все вещи в исходном вопросе, не изменяя шаблон по умолчанию, на основе направлений в файле, найденном в папке "\npm\node_modules\jsdoc\templates", в котором объясняется, как создать свои собственные шаблоны. Шаги по изменению заголовков "главная" в сгенерированной документации js для конкретных заголовков проекта (например," MyDescription") и включают обзорную кляксу в верхней части главной страницы под.

шаги

  1. во-первых, чтобы получить общий обзор в верхней части главной страницы документации js, вы бы сделали простой текстовый файл с именем README.md написано в Markdown в соответствии с ответом и ссылкой выше. Весь текст отображается в верхней части страницы, если путь к этому файлу включен в командную строку, как показано выше, или ссылка добавлена в файл с именем conf.JSON, в этом случае вы можете использовать jsdoc -c pathTo\conf.json для командной строки (см. пример в пункт 4 ниже). (Как объясняет ссылка, вы можете сделать файл с любым именем или расширением, пока он находится в Markdown, и вы скажете jsdoc, где его найти).
  2. скопируйте папку и содержимое шаблона по умолчанию (\npm\node_modules\jsdoc\templates\default) в новый каталог, переименовав новую папку в что-то вроде myTemplate.
  3. используя совет сверху для изменить' Home ' текст найдите файл с именем publish.js внутри myTemplate папка и заменить "главная" на "MyDescription". Здесь следует отметить два момента: имя файла должно оставаться publish.js, а " дом "появился в двух местах в моей оригинальной "публикации".в JS", в строке
    var nav = '<h2><a href="index.html">Home</a></h2>';
    и начало строки generate('Home',....
  4. сообщите генератору jsdoc, где найти пользовательский шаблон (myTemplate папка) и ваш обзорный файл ("README.md"). Вы можете добавить -t pathTo\myTemplate в командной строке, или вы можете использовать очень короткую командную строку,jsdoc -c pathTo\conf.json Если вы создаете файл с именем conf.json в текстовом редакторе, то как и файл ниже, который указывает источник, назначение и т. д. для документации. Этот файл помещает обзор на главную страницу, сообщая генератору doc использовать README.md в разделе "источник" и изменяет заголовки с "главная" на новый заголовок "MyDescription", используя новый myTemplate папка в разделе "opts".

    {
        "tags": {
            "allowUnknownTags": true,
            "dictionaries": ["jsdoc","closure"]
        },
        "opts": {
            "template": "pathTo/myTemplate",
            "destination": "pathTo/myJScriptDocs",
            "recurse": true
        },
        "source": {
            "includePattern": ".+\.js(doc)?$",
            "excludePattern": "(^|\/|\\)_",
            "include": ["pathTo/myJSSources", "pathTo/README.md"]
        },
        "plugins": [],
        "templates": {
            "cleverLinks": false,
            "monospaceLinks": false
        }
    }
    

вы также можете добавить @file (или @fileOverview) к одному или нескольким исходным файлам.

все разделы обзора файлов будут включены на домашней странице JSDoc. Если вы также передадите README в JSDoc, обзоры файлов будут размещены после содержимого Readme.

пример:

/**
 * @file index.js is the root file for the example.
 * It kicks things off.
 * @author Your name goes here
 * @see <a href="https://developers.docusign.com">DocuSign Developer Center</a>
 */

'Home' - это harcoded (передается как title при создании индекса) в шаблоне по умолчанию, поэтому нет переменной или конфигурации, которые вы могли бы установить для изменения этого заголовка.

если несколько человек генерируют / редактируют документы, редактируя node_modules - это очевидный отказ.

достаточно создать макет.tmpl (или полный пользовательский шаблон, если вы используете один), укажите на него JSDoc (параметр CLI или файл конфигурации) и замените <?js= title ?> С <?js= title==='Home' ? 'Your Title' : title ?>.