GIMP Manual Future Decisions

Posted on July 6, 2008

[wp_caption id=“attachment_24” align=“alignleft” width=“300” caption=“GIMP Help Browser using webkit.”]GIMP Help Browser using webkit.[/wp_caption]

Help Browser Improvements I’m very happy about Svens changes for the next stable version of GIMP (2.6). The help browser uses now webkit to render the manual and can even now load the manual from the net if the user have an internet connection. I think that’ll make the access to our manual more easier for the most of GIMP users.

Manual switches to gettext The user manual is written using DocBook/XML. The translation is seperated by ‘lang’ attributes. There is no reference language. Therefore the manual is written in various languages, seperated by ‘lang’ attributes.

We’re currently working hard to figure out a possible migration strategy of the current manual to gettext. Our build system need to be customized to manage the translations hold in *.po files. There are currently two possible candidates for this:

Publican provides a lot of the functionality we need to update/manage the translations. So has a very specific purpose. It uses the automake/autotool build system, we’re using as well. It is written by people at Red-Hat and can compile hundreds of manuals in the row. Ulf D. Ehlert and I elaborated a possible migration to publican and we figured a few pros and cons:

Pro:
  • provides all the functionality needed to manage and build documentation using gettext
Contra:
  • complete switch to Publican and be dependant from it
  • feels like we won’t need most of the functionality implemented to compile all (other manuals)
WAF though is a build system written in Python. It’s ment to replace the currently widely automake/autotools toolchain, which is currently widely in use by a lot of open source projects. Pro:
  • It’s easier to understand and can better handle the complex process of building and installing our manual. I find it sometimes very cumbersome to express what the autotools/automake should do using bash expressions. I find it much easier to do this in Python or any other high level language than bash (don’t misunderstand me: bash is fine for batch processing).
Contra:
  • WAF uses tools to provide configuring/building software. There seems to be no such tool available which provides the functionality to build our manual. We probably need to write our own tool. Not a problem though, but we need to do it and it will cost time.
  • “Not compatible” to our GIMP/GNOME (modules) which use automake/autotools.

I will try to write a build script for our purpose using WAF and I also want to communicate more with the publican people. I think this will sort out our current “problems” choosing a system.

Well, could be, that I overlooked or misunderstood something elaborating those tools. I’m sorry if something is not correct, while I was checking.

Update: Ulf sent me already a patch based on autotools/automake, which uses a bit of the publican infrustructure. Think that points out the direction where we’re heading now :)
Blogged with the Flock Browser