I finally waive the angle tax imposed on me by the Microsoft XML documentation format (and what's the point, since the MSVC environment still doesn't do anything interesting for C ++ projects) and switches my current project to using Doxygen with syntax Javadoc style.
It is fantastic. The built-in documentation is much easier to read and print, and the generated output is much more useful and versatile. In particular, I have the MULTILINE_CPP_IS_BRIEF parameter MULTILINE_CPP_IS_BRIEF , which allows me to write the βshortβ description as long as I want, and then break my βdetailedβ documentation into paragraphs using blank lines. In other words:
This gives me exactly the result that I want, while preserving the number of noisy meta-commands, such as @brief and \details , that I should use.
The problem occurs when I try to include the second paragraph in the Remarks section, just like I (implicitly) for the Details section. For example:
The generated output does not interpret the second paragraph in the @remarks section as part of the comments. I can say because it does not have padding at the same level in the HTML output file, and this is not under the <simplesect kind="remark"> in the XML output.
I tried to add a @par command at the beginning of the second paragraph, but that did not do what I wanted. The new paragraph is still not a child of the Remarks section. In the XML output, it is placed inside the new <simplesect kind="para"> , which is native to the original <simplesect kind="remark"> .
During the research, I saw that someone else duplicated the @remarks command:
This gives the result that I desire. Both paragraphs are embedded in the <para> tags under the <simplesect kind="remark"> in the XML output file, and the visual relationships are correct in the HTML output. But this is ugly and looks like a mistake to me.
Is there a standard way to do this that I am missing? Of course, I'm not the first person who wants a few paragraphs in the "notes" section of my documentation ... And this is not limited to @remarks ; the same thing happens with @internal , for example.
I have the latest version of Doxygen (1.8.2) installed, but I very much doubt that it depends on the version.