Difference between revisions of "chm"
From Free Pascal wiki
Jump to navigationJump to searchLine 32: | Line 32: | ||
* Binary indexes. Might make files slightly slower, but more importantly, is said to tremendously speed up loading of files with large indexes (like LCL) | * Binary indexes. Might make files slightly slower, but more importantly, is said to tremendously speed up loading of files with large indexes (like LCL) | ||
− | |||
== See also == | == See also == |
Revision as of 16:34, 5 September 2009
Package CHM is a set of units distributed with FPC 2.2.2 and newer that allow to read/write .chm compressed html help files on multiple platforms. There are two projects that read these, the textmode IDE ( 2.2.2 not yet), and the Lazarus chmhelp package (which features a separate helpsystem, connected over TCPIP). The original author is Andrew Haines, but some parts are by others (specially Lars/z505).
It is expected that in the next FPC release, chm will replace the doc-html archive with its thousands of separate htmls.
The package is pure pascal, and thus portable in principle (and seems to have had endianess fixes). 64-bit status not known yet.
Units
- chmbase - some structures, constants and helper funcs (compare and compression streaming helpers)
- chmfiftimain - the unit that is responsible for reading and writing the search index of chms (TChmSearchReader, TChmSearchWriter)
- chmfilewriter - TChmProject, a class that describes a CHM project in the form of a XML description. Can be used to generate CHMs easily.
- chmreader - the base CHM Reader
- chmsitemap - Support for sitemaps (toc and index, the unit helps transforming these xml files to collections)
- chmspecialfiles - Streaming helpers for special index files in the chm
- chmtypes - CHM helper class types.
- chmwriter - the base CHM Writer.
- fasthtmlparser - Base skeleton of a html parser.
- htmlindexer - Contains classes that TChmWriter uses to parse and index the contents of html files for searching
- htmlutil - helperfunctions. Mostly getting info out of html/xml tags.
- paslznonslide - (de)compression routines
- paslzxcomp - (de)compression routines
- paslzx - (de)compression routines
Files
Besides the library units, there are also two endprograms:
- chmls - lists contents of a chm
- chmcmd - creates a CHM using a XML file made with the TCHMProject class
Missing features
- Binary indexes. Might make files slightly slower, but more importantly, is said to tremendously speed up loading of files with large indexes (like LCL)
See also
- chm backend for fpdoc
- Textmode IDE development#Chm Support
- Lazarus chmhelp component
Go to back Packages List