[Lazarus] CHM help package (Marco van de Voort)

Sergey Bodrov serbod at gmail.com
Sun Dec 10 11:25:59 CET 2017


>
> On Fri, Dec 08, 2017 at 03:23:06PM +0300, Sergey Bodrov via Lazarus wrote:
> > There is too many changes in many files, and that can't be posted as
> simple
> > diff patch.
>
> Then layer them. Make patches for the most essential bits, and then
> reallign
> your sources.
>

I change code formatting, many private names, add many comments and embrace
whole blocks of code into try..finally. And now can't tell, which parts is
most essential.


> > 1. FPC package 'chm' contain file fasthtmlparser.pas, that used in some
> > non-CHM packages and projects. May be better move that file to some
> generic
> > package - fcl-base, for example?
>
> Afaik this was meant as a copy of that parser dedicated for chm that could
> evolve with the package.  So if you need it more general, whip up a
> suitable
> general version.
>

It's just fast and simple SAX-like tags parser, no more. It not rely on any
external libs/units and not dedicated to CHM.


> > 2. FPC package 'chm' contain LZX compression routines in some files
> > - paslzx.pas, paslzxcomp.pas, paslznonslide.pas, lzxcompressthread.pas.
> > They not depends on other files in 'chm' and can be maintained as
> separate
> > package.
>
> What does that make possible that currently is not possible? Do we really
> have to spin each unit into a separate package? I don't see the point.
>
> Note also that iirc CHM lzx and e.g. CAB lzx vary in some ways. (headers?)
>

LZX in CHM use non-sliding window, separated to 64K blocks for fast random
access. It implemented in separate file - paslznonslide.pas


> But even bypassing that, what is the problem of having to instal 10 extra
> units (150kb) to make a CAB decompressor?
>

Naming and linking problems.


-- 
*Bodrov Sergey*
software development, IT consulting
http://www.serbod.com
*Phone (Belarus):* +375(25)794-21-58
*Skype:* sergey.bodrov1
*e-mail:* serbod at gmail.com, oxotnuk at yandex.ru
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20171210/d6849e29/attachment.html>


More information about the Lazarus mailing list