mdoc is the Mono documentation system. It's currently a disparate set of command-line and GUI programs used to create, update, validate, transform, and display assembly documentation.
See also: http://www.mono-project.com/Generating_Documentation
- monodocer, a command-line program similar to Sandcastle which generates XML documentation from an assembly. It is also capable of importing C# XML documentation (/doc comments). The generated documentation forms the underpinning for all other programs.
- monodoc, a Gtk# GUI app to display documentation.
- mod, a command-line program to display documentation.
- mdassembler, a command-line program to convert monodocer XML into a set of files for display by monodoc.
- mdvalidator, a command-line app which validates monodocer XML files against an XSD.
- monodocs2html, a command-line app which converts monodocer XML into HTML
- monodocs2slashdoc, a command-line app which converts monodocer XML into C# XML documentation.
- An ASP.NET front-end for display; see http://www.go-mono.com/docs/ for an example.
Future changes (planned for the week of February 11) include bringing many of these disparate programs under a single program to simplify documentation and make it more obvious that they're actually related. The umbrella program will be `mdoc', so that 'mdoc update' is 'monodocer', 'mdoc export-html' is 'monodocs2html', etc.
Source is stored within a Subversion repository:
Mailing list: http://lists.ximian.com/mailman/listinfo/mono-docs-list
The one downside is that the mdoc tools are oriented toward a Mono/Unix audience, in that autoconf is assumed, etc. It would be useful to create Visual Studio project to build these repositories, especially if MonoDevelop can also be used with those project files. (MonoDevelop has some support of the VS2005 project format.)