[fpc-pascal] fpdoc is broken for LINK'ed documentation

Graeme Geldenhuys graemeg.lists at gmail.com
Fri Mar 2 09:45:25 CET 2012


I've been trying to figure this out all morning, and after 2 hours I
still can't see why fpdoc doesn't work correctly.

I have linked documentation in descendant classes - so as not to
duplicate documentation in the XML description files. I currently use
the IPF linear output writer, and DO specify the --duplinkeddoc
parameter (which I originally implemented myself).

It used to work, but now with FPC 2.6.1 and FPC 2.7.1 I can't get it
to work at all. The nodes that have linked documentation doesn't even
appear inside fpdoc as a TPasElement instance?? Thus putting a
breakpoint inside TLinearWriter.WriteProperty() looking for a specific
property name (eg: HelpFile) for example, is never reached.for the
TfpgApplication class. This makes no sense.

Here is a snippet of the XML description file.

--------------------[ fpg_main.xml]----------------------------
<element name="TfpgApplication">
<short>A concrete class that encapsulates a fpGUI application</short>

<element name="TfpgApplication.InvokeHelp"

<element name="TfpgApplication.HelpFile"

The fpg_base.xml file does contain the documentation for the HelpFile
and InvokeHelp topics. I can see them in the final IPF help output
under the TfpgApplicationBase class. But the TfpgApplication class
documentation doesn't contain either of those.

What I have tried:
  * I changed the 'link' value by removing the package name, then by
removing the unit name. Neither makes any difference.
  * I first had no 'short' description tags in the TfpgApplication
elements, so add them to think that it might help fpdoc
    find those documentation elements. It made no difference.
  * I implemented a fpdoc project file, instead of using a script.
That made no difference.
  * I tied various fpdoc output formats (HTML, TXT, RTF, IPF etc).
That made no difference.

Anybody got a clue what is going on? Is there some obvious (to others)
that I am doing wrong?

If you wanted to test this, all the fpdoc description files are in the
fpGUI repository. You can pull it from the git repository, or if you
don't have git installed, you can download a tarbal of the latest code
from GitHub. Here is the direct link for the tarbal download:


I also attached my test script I used to generate the IPF documentation.

  - Graeme -

fpGUI - a cross-platform Free Pascal GUI toolkit
-------------- next part --------------
A non-text attachment was scrubbed...
Name: runme2.sh
Type: application/x-sh
Size: 3593 bytes
Desc: not available
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20120302/dc6f4178/attachment.sh>

More information about the fpc-pascal mailing list