[Development] Towards a Qt 5 beta: Documentation
Lincoln Ramsay
lincoln.ramsay at nokia.com
Fri Apr 13 04:04:07 CEST 2012
Hi.
In general I applaud this effort.
I'm going to talk about some of the doc things Qtopia had. Most of this
came from our (infamous for being unmaintainable) mkdocs script. Given
the reputation that script had I'm not about to suggest we implement
things similarly in Qt but perhaps the ideas are worth something.
In an effort to stop people from ignoring doc errors (by not building
docs), we developed a system that automatically built the docs for a
given directory when running make there. It was very quick (compared to
building all docs) though its output wasn't very useful but we only
cared about the errors anyway. QtSensors (and I guess other Qt modules)
already have a similar-ish system in place where they can build their
docs separately from the rest of Qt. Again, the result isn't very useful
compared to a full doc build but it's very fast and great for reviewing
doc changes as they're happening (though it's not automatic).
We had cross-module links in both directions. We achieved this by
running qdoc twice per module. Once to get the .index (used for
resolving links) and again to build with the other modules' .index
files. The only way to avoid doing things twice would be to have more
intermediate steps in the doc building process (ie. generate indexes,
etc for everything then bring those together into a final product and
resolve all the links then).
> - For cross-linking we need to do a few things (None of this is
> implemented yet):
> 1. We need to add a "depends" qdocconf variable, where you list the
> modules you depend on.
Why?! We already have our dependencies stated in the sync.profile and
module .pro files. Duplicating this information just causes a
maintenance burden. Allowing explicit dependencies on docs (where there
is no dependency between modules) may make sense but dependencies
derived from the build should be extracted from the build.
--
Lincoln Ramsay - Senior Software Engineer
Qt Development Frameworks, Nokia - http://qt.nokia.com/
More information about the Development
mailing list