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