Difference between revisions of "chm"
From Free Pascal wiki
Jump to navigationJump to search (New page: 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, t...) |
|||
Line 8: | Line 8: | ||
# chmbase - some structures, constants and helper funcs (compare and compression streaming helpers) | # 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) |
− | # chmreader - the base CHM | + | # 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) | # 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 | # chmspecialfiles - Streaming helpers for special index files in the chm | ||
# chmtypes - CHM helper class types. | # chmtypes - CHM helper class types. | ||
+ | # chmwriter - the base CHM Writer. | ||
# fasthtmlparser - Base skeleton of a html parser. | # 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. | # htmlutil - helperfunctions. Mostly getting info out of html/xml tags. | ||
# paslznonslide - (de)compression routines | # paslznonslide - (de)compression routines |
Revision as of 23:22, 15 November 2008
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 CHM starting from a XML (TCHMProject class) (?)
See also
- chm backend for fpdoc
- Textmode IDE development
- Lazarus chmhelp component