Sign in Join
Wiki copytemporary

htmlhelp compiler: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1-## Contents
2-
3- * 1 Overview
4- * 2 History
5- * 3 Missing features
6- * 4 Performance
7- * 5 Download
8-
91## Overview
102
113The htmlhelp compiler chmcmd is a GPL licensed htmlhelp1 (CHM) helpfile compiler.
124
135The help file compiler's main program only performs command line handling. All other functionality (including .hhp loading functionality and HTML scanning) is done by FPC's [[chm]] package, which is licensed under a more permissive license (LGPL with static linking exception)
146
157Two formats are supported:
168
179 * HTML help .hhp help projects (similar to those from the old Microsoft HTML Help workshop)
1810 * a superset that stores all information (including context data) in one .XML.
1911
2012## History
2113
2214While the primary target of the [[chm]] package is the documentation tool [[FPDoc Editor|fpdoc]], a small commandline utility chmcmd was added for testing purposes. This utility simply created a TCHMProject instance, would load the .xml, and called the "writechm" method. The XML format had to list all files to be included (including .css and image files).
2315
2416In 2010, basic .hhp support was added, and the project was expanded to scan input files for extra files.
2517
2618## Missing features
2719
2820See [[chm]]
2921
3022## Performance
3123
3224The performance probably won't be great. Mostly because the program is written in a portable manner.
3325
3426The chm package has some support for doing the compression using multiple cores, but this has not been enabled by default for two reasons:
3527
3628 1. on Linux/FreeBSD this pulls in libpthread and libc which makes the binary distribution dependent (on FreeBSD and Linux, basic FPC binaries are fully static and use syscalls)
3729 2. the savings are not that great (think 25% faster on a dual core)
3830
3931A Win32 binary is currently about 420k (uncompressed, but stripped).
4032
4133## Download
4234
4335The HTML compiler is not available as a separate download, but is included in most FPC releases and snapshots.
4436
4537---
4638*From the Free Pascal wiki, page "chmcmd", as the Internet Archive kept it on 2025-05-14, last changed on 2015-10-24. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history