[Lazarus] Building help files: the nitty-gritty

Graeme Geldenhuys graemeg.lists at gmail.com
Wed Jul 18 20:26:29 CEST 2012


On 18 July 2012 16:10, Marco van de Voort <marcov at stack.nl> wrote:
> Basically the source for a CHM is
> a .hhp file, which is an ini-like format containing
> 1. references to which are the toplevel html files to link
> ....snip....

Thanks, those steps were really helpful. That gave me a good starting
point, and I'll Google .hhp files further.

> I don't think an application call makes sense at all. It should be IPC
> (dbus) like,
> to avoid multiple instances, and to avoid having settings at all.

I agree with this.  fpGUI currently uses TProcess to start up DocView,
but that was just step 1 to get the help system going. I'm working on
step 2 now, which is the IPC communications.

> IOW an IPC call to register helpfiles at startup (and start a small daemon
> if necessary), and then just fire the
> "show help" or "give me index" commands.

Yes, that is how I understood it too. The dbugintf.pas unit and the
various "debug server" apps around are good working examples of this.

>> specific help topics.  The fpgApplication instance has a HelpFile
>> property to specify where an applications specific INF help file is,
> (Only one helpfile per app?)

No, you can concatenate multiple help files, specify a help directory
(instead of a file), specify an environment variable etc... DocView is
very flexible with this.

> I don't ship Lazarus applications.

:-/   Time to speak to your boss then.

> At work I use Delphi, but I don't ship help with those either.  (though I
> have in previous jobs).  We ship latex generated manuals in PDF format for

You guys have it way to easy! :)  All our apps must ship with help
files, and we have a separate installation PDF. Our end-users are not
the most computer literate, but they know everything about Maths and

  - Graeme -

fpGUI - a cross-platform Free Pascal GUI toolkit

More information about the Lazarus mailing list