Technical documentation writing
I’m about to write the technical documentation for the current project. I’ve already tried serveral formats for storing documents, but every one has disadvantages. What I need from the tool is:
- Have a WYSIWYG editor, because of the pointy-haired who needs to just open the file and see it.
- Allow collaboration over a Subversion code repository.
- Generate a PDF file.
- Generate a table of contents (TOC)
- If there’s no WYSIWYG, then it should allow easy code editing.
I considered many formats, but each of them has serious drawbacks. Here’s the lattice that shows it:
(Lattice created with conexp)
Tools
The perfect fit would be DocBook with a WYSIWYG editor. It has form of a repository-friendly XML code and it allows creation of nice looking PDF documents.
There are some tools for DocBook authoring, some of them tagged as WYSIWYG.
XXE
I checked XXE which was close to what I wanted, but I have doubts if it’s easy enough for the pointy-haired. Editing DocBook in XXE feels much like filling a form, and this is nice. What isn’t that nice is that it’s not that easy to add more fields to this form. There should a very straigh-forward way to add a new chapter or section, and maybe change order of sections. Unfortunately, XXE makes it confusing.
AbiWord
I don’t know why isn’t AbiWord listed there, because is able to read and write DocBook documents. It doesn’t support all of the DocBook features, but that’s OK. It allows to create headings, paragraphs and fragments of code. It’s able to write a valid DocBook document and then read it back.
So far, AbiWord seems to be the best fit. It is a WYSIWYG editor and it supports DocBook.
There’s only one thing I dislike about AbiWord’s DocBook support. A single paragraph of the document becomes a single line of the XML code and therefore is a single atom for the cource code repository. Should the paragraph be splitted into more lines, the code repository would allow nicer changes tracking. XXE does that, AbiWord doesn’t.