MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Documentation build in Workbench

  • To: mathgroup at smc.vnet.net
  • Subject: [mg110916] Re: Documentation build in Workbench
  • From: Simon <simon.rochester at gmail.com>
  • Date: Sun, 11 Jul 2010 06:20:30 -0400 (EDT)
  • References: <i13tto$7k5$1@smc.vnet.net>

Ok, I think I've got it. The build is controlled by Mathematica code
contained in an xml file listed under "Script: " in the build log. In
my installation the file is

C:\Users\UserName\.eclipse\1678130227\configuration\org.eclipse.osgi
\bundles\10\1\.cp\MathematicaSource\DocumentationBuild\SystemFiles\ant
\Build\notebook.xml

I basically had to add some code to this file that looks like

	AntLog["Input file time stamp: " <> DateString@FileDate@inFile];
	If[FileType[outFile]===File, AntLog["Output file time stamp: " <>
DateString@FileDate@outFile]];
        If[FileType[outFile]===File &&
AbsoluteTime@FileDate@inFile<AbsoluteTime@FileDate@outFile,
	     AntLog["Input older than output, skipping."],
             << Existing build code >>
        ];

Then in the docbuild.xml file in the project directory, I removed the
depends="clean" attribute from the call to "main" at the end of the
file, to stop it from deleting the previously built files. Keeping the
original and modified copies of the docbuild file under different
names, I can do an update build or a clean build by switching the
documentation build file as desired in the project properties dialog.

Only the files that are built in a given run are indexed, so one needs
to do a clean build before publishing a release. I noticed that the
names of the index files can change between the partial build and the
complete build, meaning that during a deploy operation there can be
leftover index files from old runs remaining. I'm just deleting the
old files before the final deployment.

I saw someone mention that Workbench was used internally at Wolfram.
With the problems that I've seen, I don't see how it could be their
primary development environment. Maybe the version that they're using
is different from the public version?

Another problem I was having was in trying to produce documentation
that is compatible with both Mathematica 6 and 7. Writing the
documentation using version 7 and then building using version 6 mostly
worked, but some problems with graphics were showing up. Trying to
create the documentation directly in version 6 was producing errors
and crashes. However, I managed to fix this by modifying the
DocumentationTools package and palettes to make them compatible with
Mathematica 6. If anybody's interested I can describe what I did.

My next project is to figure out how to add a banner image to
documentation pages other than guide pages...

Simon

On Jul 8, 12:15 am, "David Park" <djmp... at comcast.net> wrote:
> I don't think so, but would be happy to learn otherwise.
>
> David Park
> djmp... at comcast.nethttp://home.comcast.net/~djmpark/ 
>
> From: Simon [mailto:simon.roches... at gmail.com]
>
> It appears that Wolfram Workbench builds all of the documentation
> pages during a documentation build, not just the ones that have
> changed. Is there a way to change this behavior?
>
> Thanks,
> Simon



  • Prev by Date: Re: Pattern: x_List with conditions on elements
  • Next by Date: Re: How to *really* remove a symbol?
  • Previous by thread: Re: Documentation build in Workbench
  • Next by thread: hello group