[Lazarus] Building help files: the nitty-gritty

Mark Morgan Lloyd markMLl.lazarus at telemetry.co.uk
Fri Jul 13 10:58:38 CEST 2012

Mark Morgan Lloyd wrote:
> Graeme Geldenhuys wrote:
>>> [Nod] I suspect that we're not the only people asking for guidance.
>> And it seems everybody is reluctant to give an answer. I guess LCL
>> based applications simply don't ship with help? Well, for the few LCL
>> based apps I have tried (excluding Lazarus IDE), that sure was the
>> case.
>> I just remembered form years ago when I still used Delphi 5 & 7, we
>> used to use a product called HelpScribble to author our .HLP help
>> files. HelpScribble now supports .CHM authoring too. So I guess that
>> answers my own question. You need to purchase a proprietary CHM help
>> authoring tool to generate your own CHM help, and you'll probably be
>> limited to author those help files under Windows only.
> I didn't make a note of the URL, but I noticed a Debian bugtracker entry 
> yesterday where somebody was requesting that chmcmd/chmls be packaged 
> separately since they're the only free tools that do the job.
> The bottom line appears to be: generate either XML or HTML files, make a 
> list of their names, and run the lot through chmcmd to produce a single 
> indexed file. In principle, it should be possible to postprocess 
> something like a .pdf to generate very simple context help entries (take 
> any heading prefixed by e.g. ยง as a help keyword, and the following 
> paragraph as the associated text).

OK, I can extract marked text from (plaintext derived from) a .pdf, save 
entries as individual html files with a title tag in the header, and 
build a .chm. Running chmls on the .chm produces sensible output.

So how do I integrate the .chm with a minimal Lazarus project to prove 
it works?

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the Lazarus mailing list