Re: Confused about Synopsis
"David Piepgrass" <[email protected]> Wed, 5 Sep 2007 10:44:28 -0600
| Newsgroups | gmane.comp.documentation.synopsis |
|---|---|
| Message-ID | <[email protected]> |
> > Where is the documentation for Synopsis's documentation generator?
> http://synopsis.fresco.org/docs/
It looks like only a couple of pages talk about Synopsis as a
documentation extractor:
http://synopsis.fresco.org/docs/Tutorial/documenting.html
http://synopsis.fresco.org/docs/Tutorial/parsing.html
http://synopsis.fresco.org/docs/Tutorial/comments.html
Is there any more information than this?
> Let me know whether you need more info to get started,
> Stefan
Yes, thanks. Here's my situation. I have a C++ project and I'm planning
to use SWIG to produce a C# wrapper for it with a very similar
interface. So the challenge I have is that I only want to write the
documentation once for both languages, in much the same way as Microsoft
only has to write one version of their documentation but it shows the
syntax of several languages (C#, VB, etc.)
I envision writing doc comments like this (fyi, it's a mapping library):
/// Retrieves the index of the specified road segment within
/// the route.
/// @param loc location on a road segment to search for.
/// @return the index of 'loc' within the route, or -1 if the road=20
/// segment is not present in the route.
/// @csharp int IndexOf(RoadLocationBase loc);
int IndexOf(const RoadLocationBase& loc) const {=20
...=20
}
I would then have the option of producing output documents that use
either C++ or C# syntax.=20
How can this be done?
BTW, another problem with Doxygen is that it is file-centric. Doxygen
requires a file comment like
/*! \file foo.h
\brief A Documented file.
*/
And then the output file says "foo.h File Reference" at the top, which
is obviously not something C# programmers should see. Luckily, it looks
like Synopsis documentation at=20
http://synopsis.fresco.org/docs/Manual/cxx/index.html
isn't file-centric, except for the "File Tree" in the top left corner.
Another problem is that my C# version is within a namespace but the C++
version is not... but I suppose I could solve that by putting the C++
code in a namespace that has the same name as the C# version.