Как сделать начальную страницу при помощи Doxygen



Я сделал документацию для моего SDK, используя Doxygen. Он содержит список файлов, пространства имен, классы, типы и т. д. - все, что я разместил в качестве комментариев Doxygen в коде. Теперь я хочу написать некоторую общую информацию о SDK (своего рода введение), которая не связана напрямую с каким-либо элементом кода. Я хочу это введение на начальной странице документации. Как я могу это сделать?

1323   6  

6 ответов:

посмотреть mainpage.

кроме того, посмотрите этот ответ в другой теме: Как включить пользовательские файлы в Doxygen. В нем говорится, что есть три расширения, которые doxygen классы в качестве дополнительных файлов документации: .dox,.txt и .doc. Файлы с этими расширениями не отображаются в индексе файлов, но могут быть использованы для включения дополнительной информации в окончательную документацию-очень полезно для документации, которая является необходимо, но это не совсем уместно включать в исходный код (например, FAQ)

поэтому я бы рекомендовал иметь mainpage.dox (или с аналогичным именем) файл в каталоге проекта, чтобы представить вам SDK. Обратите внимание, что внутри этого файла вам нужно поместить один или несколько блоков комментариев стиля C/C++.

обратите внимание, что с Doxygen release 1.8.0 вы также можете добавить уценку сформированных страниц. Для этого вам нужно создать страницы с именем .md или .расширение markdown и добавьте в файл конфигурации следующее:

INPUT += your_page.md
FILE_PATTERNS += *.md *.markdown

посмотреть http://www.doxygen.org/markdown.html#md_page_header для сведения.

по состоянию на v1.8. 8 есть также опция USE_MDFILE_AS_MAINPAGE. Поэтому не забудьте добавить свой индексный файл, напримерREADME.md, к INPUT и установить его в качестве значения этого параметра:

INPUT += README.md
USE_MDFILE_AS_MAINPAGE = README.md

добавьте в документацию любой файл, который будет содержать ваш контент, например toc.h:

@ mainpage Manual SDK
<hr/>
@ section pageTOC Content
  -# @ref Description
  -# @ref License
  -# @ref Item
...

и в Doxyfile:

INPUT = toc.h \

пример (на русском языке):

следующий синтаксис может помочь для добавления главной страницы и связанных с ней подстраниц для doxygen:

/*! \mainpage Drawing Shapes
 *
 * This project helps user to draw shapes.
 * Currently two types of shapes can be drawn:
 * - \subpage drawingRectanglePage "How to draw rectangle?"
 *
 * - \subpage drawingCirclePage "How to draw circle?"
 *
 */ 

/*! \page drawingRectanglePage How to draw rectangle?
 *
 * Lorem ipsum dolor sit amet
 *
 */

/*! \page drawingCirclePage How to draw circle?
 *
 * This page is about how to draw a circle.
 * Following sections describe circle:
 * - \ref groupCircleDefinition "Definition of Circle"
 * - \ref groupCircleClass "Circle Class"
 */

создание групп, как показано ниже, также помогает для проектирования страниц:

/** \defgroup groupCircleDefinition Circle Definition
 * A circle is a simple shape in Euclidean geometry.
 * It is the set of all points in a plane that are at a given distance from a given point, the centre;
 * equivalently it is the curve traced out by a point that moves so that its distance from a given point is constant.
 * The distance between any of the points and the centre is called the radius.
 */

пример можно найти здесь

Я пробовал все вышеперечисленное с v 1.8.13 безрезультатно. То, что сработало для меня (на macOS), было использовать тег doxywizard->Expert для заполнения USE_MD_FILE_AS_MAINPAGE настройка.

Он внес следующие изменения в мой Doxyfile:

USE_MDFILE_AS_MAINPAGE = ../README.md
...
INPUT                  = ../README.md \
                         ../sdk/include \
                         ../sdk/src

обратите внимание на завершение строки для INPUT, Я просто через пробел, как указано в документации. AFAICT это единственное изменение между нерабочей и рабочей версией Doxyfile.

Comments

    Ничего не найдено.