Use the README.md file as main page in Doxygen

MarkdownDoxygenDoxywizard

Markdown Problem Overview


The documentation of Doxygen states, that I can use PHP Markdown Extra title labelling in a markdown file, but neither

# Main Page # {#mainpage}

nor

# Main Page # {#index}

works, but the label is not present in the output as plain text either. This is the very first line BTW.

Also I cannot reference to that page neither with the above labels, neither with the name of the file.

I also have a main.dox file that contains a \mainpage special command, but I also tried all the above with removing one slash before them (to make it only two).

I'm using Doxygen 1.8.2 (downloaded) and 1.8.1.1 (from MacPorts) for the task.

How can I achieve this then?

Also, how can I mark a markdown file as part of a specific language?

EDIT: i have enabled markdown support, and the file appears in the referenced pages.

Markdown Solutions


Solution 1 - Markdown

In the next release of doxygen (1.8.3) I plan to introduce a new configuration option USE_MDFILE_AS_MAINPAGE which can be used to specify a markdown page that is to be used as the main page. Then you can configure doxygen as follows:

INPUT                  = README.md other_sources
USE_MDFILE_AS_MAINPAGE = README.md

and it will work regardless of page's headings.

Solution 2 - Markdown

Try the following instead to mark the title as a level 1 header:

Main Page {#mainpage}
=========

With doxygen 1.8.2, this makes the page as the index.html page for me.

The doxygen document does state that starting a line with a single # declares a level 1 header, but it seems to be not working for me either.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAdam L. S.View Question on Stackoverflow
Solution 1 - MarkdowndoxygenView Answer on Stackoverflow
Solution 2 - MarkdownMasked ManView Answer on Stackoverflow