Forum: PC-Programmierung Doxygen docu mit \incude oder\includedoc


von Thomas (Gast)


Lesenswert?

Ich habe damit begonnen bei einem schon bestehendes Programm die 
Funktionskommentare  auf doxygen umzustellen. Das klappt eigentlich ganz 
gut  Für eine Einführung habe ich mit \page \tableofcontents und 
\section eine mehrseitige Beschreibung angelegt die auch Code Schnipsel 
enthält.
Das wird soweit auch alles korrekt dargestellt Auf die Dauer ist es mir 
aber zu unübersichtlich diesen Teil im Quellcode zu halten. Ich habe 
deshalb diese Page in ein extra File ausgelagert und dieses mit 
\includedoc ins c File eingebunden.
Das funktioniert nicht so wie ich mir das vorstelle. Nach dem ersten tag 
(in meinem Fall \tableofcontents) wird der Rest des Texts ignoriert. Es 
scheint so zu sein das in include Files
Die doxygen formatieren nicht funktionieren. Auch andere Varianten von 
\include erzeugen nicht das gewünschte Ergebnis.
Gibt es einen anderen Weg umfangreiche doxygen Kommentare in externe 
Files auszulagern?
Ist das überhaupt der richtige Weg files per\include so einzubinden?

Vielleicht hab ich auch nur was übersehen.

Thomas

von Rolf M. (rmagnus)


Lesenswert?

Also \include parst den Inhalt nicht, sondern geht davon aus, dass es 
Beispiel-Code ohne eigene Doxygen-Kommentare ist, bzw. dessen Kommentare 
nicht weiter geparst werden sollen.
\includedoc sollte aber laut Handbuch eigentlich das tun, was du willst. 
Hast du mal ein kurzes Beispiel für etwas, das deiner Meinung nach tun 
sollte, aber nicht tut?

von W.A. (Gast)


Lesenswert?

Thomas schrieb:
> Gibt es einen anderen Weg umfangreiche doxygen Kommentare in externe
> Files auszulagern?

#include <xxx.xxx> wird immer funktionieren.

von tictactoe (Gast)


Lesenswert?

Wozu \includedoc? Lagere es in eine .h-Datei aus, die von keiner 
Source-Datei inkludiert wird, aber von INPUT und FILE_PATTERN in 
Doxyfile erfasst wird.

von Vincent H. (vinci)


Lesenswert?

Einige Features von Doxygen verlangen, dass jede Datei via
1
/// \file  filename.h

dokumentiert wird. Ich glaub ein reines \file geht auch, da bin ich mir 
aber grad nicht sicher. Innerhalb jener Datein lässt sich dann wie du 
bereits erkannt hast via \page eine neue Seite anlegen.

Um die erstellten Seiten in der Leftbar nach meinen Vorstellungen zu 
sortieren nutze ich dann meist \subpage. Dabei erstell ich eine Page die 
in einem Table eine Übersicht aller Subpages enthält. Die Reihenfolge im 
Table forciert dann die Reihenfolge in der Leftbar.
1
/// \page page_contents Contents
2
/// | Page           | Content |
3
/// | -------------- | ------- |
4
/// | \subpage page0 | Page0   |
5
/// | \subpage page1 | Page1   |
6
/// | \subpage page2 | Page2   |

von Thomas (Gast)


Lesenswert?

tictactoe schrieb:
> Wozu \includedoc? Lagere es in eine .h-Datei aus, die von keiner
> Source-Datei inkludiert wird, aber von INPUT und FILE_PATTERN in
> Doxyfile erfasst wird.

Danke aber das ist die Lösung. Ich habe einfach zu kompliziert gedacht.
Obwohl mir immer noch nicht klar ist warum  \includedoc nicht 
funktioniert.
Aber egal die Hilfestellungen hier sind einfach toll man muss nur das 
Problem richtig formulieren.

Thomas

von Thomas Z. (usbman)


Lesenswert?

Da mich das Thema in anderem Zusammenhang wieder mal gebissen hat hab 
ich es mal näher untersucht. Es ist tatsächlich so das /includedoc nicht 
wie erwartet funktioniert. Ich hatte per Markup ein paar Tabellen gebaut 
diese wurden genauso wenig korrekt bearbeitet wie alle anderen doxygen 
comands.
Das einzige was geholfen hat war im include File alles auf HTML 
umzustellen. Die Dokumentation sagt ja dass einige Comands nicht gehen, 
das ist allerdings stark untertrieben. Nur HTML geht und dort auch nicht 
alles. <li> </li> geht zum Beispiel innerhalb von Tabellen auch nicht.

Thomas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.