[Mono-docs-list] Help Browser extensibility.

Miguel de Icaza miguel@ximian.com
17 Apr 2003 15:46:53 -0400


   Our Help browser was designed to be extensible.  My focus so far has
been on making the help browser usable for browsing our ECMA-based
documentation, but we will need more providers in the future.  For
example one to handle the simpler compiler generated help files, one for
HTML documents, and one for the C# language spec.

   Anyways, today I checked in some more notes into monodoc/browser in
the file NOTES that explains how a provider works, and I also wrote a
simple provider as a reference example.

   The simple provider is only used to demostrate how it can be used,
and it is very simple.  The provider "packages" up a directory and any
of its children directories for being browsed.  It creates a node for
each directory, and children nodes for files.

   To "compile" a set of files and directories, do:

	mono assembler.exe --out test --simple /cvs/mono/doc

   That will traverse "/cvs/mono/doc" and store all the files in the
couple `test.tree' and `test.zip'.   Now, you have to put those two
files in your sources directory, together with a test.sources file, the
contents of test.sources should be:

<?xml version="1.0"?>
  <source provider="simple" basefile="test" path="various"/>

    That will attach your experiment to the "various" node (the various
insertion points are defined in monodoc.xml).

    Now, launch your browser, and you should be able to browse the files
that were packaged up for distribution.