PerlPoint::Package 0.36 released

[email protected] ((Jochen Stenzel)) Tue, 11 Dec 2001 23:18:24 +0100
Newsgroups perl.perlpoint
Message-ID <[email protected]>
Hello,

it has been quiet silent here for a while, so I assume everything works
well ;-) Nevertheless, there's an update of the package, I just
released version 0.36.

The roots of this release lay in the talk we had with Johand Vromans
and Mark Overmeer at the 3rd German Workshop. Mark pointed out that it
would be fine if projector software could work directly on the stream
the parser produces, without an additional format conversion. We
discussed an enhanced stream format as a base of necessary operations
like page navigation. 

On the converter side, we talked about a converter to PPresenters XML
interface (written by Johan).

Both topics are addressed by 0.36. And as things went, there are a lot
of other changes built into it. See Changelog for a full detailed list.
Regardless of the number of changes, all existing documents should pass
the new parser, and all existing converters should continue to work
after the package update.

Here is a list of highlights, just to to make you curious:

 Visible changes (implemented for users):

   * Make tags and macros optional by Active Content passed
     via pseudo option _cnd_:

       \IMAGE{_cnd_="$illustrate" src=...}


   * Apply filters to paragraphs to transform them as you want,
     this is another new Active Contents usage:

       ||numLines||<<EOE

         # this is an example
         
       EOE

     Those filters can even be chained:

       ||higlightPerlSyntax|numLines||<<EOE

         # this is an example
         
       EOE

     Filter results are reparsed.

   * New basic tags: \LOCALTOC includes a list of
     subchapters, which can be formatted in various
     ways. \SEQ lets you include autonumerated items.
     \REF provides a very general link facility,
     which is widely configurable (one can pass a list
     of alternative anchor names, for example). \FORMAT
     generalizes passing of formatting settings and is
     initially used to build in paragraph alignment.
     \HIDE makes its body disappear, and \STOP makes
     the parser fail in handling the document - both
     are most useful in conjunction with the tag
     conditions mentioned above.

   * As said before, the first XML converter is there,
     addressing Marks PPresenter. This is still a demo,
     but it basically works.

   * Makros can take default values for their options.

   * Improved error messages point to the source which
     was detected to contain an error.


 Internal changes (implemented for converter authors):

   * Modified stream format. This is transparently
     handled by the backend module.

   * Enhanced backend: methods to navigate through
     the stream in various ways, e.g. jumping from
     chapter to chapter or processing the stream
     entry by entry.

   * Get subchapter lists or a complete TOC by
     calling the new method toc().

   * Tag definitions: complete tag processing when
     the sources are parsed completely, e.g. to
     store informations about a linked item.

   * Cause the parser to ignore the tag or to remove it
     (including its body) by passing new return codes
     back to the parser.

   * Use hooks declared by another tag definition
     module for your own tags, e.g. to continue
     support for an old tag interface while using
     a new implementation.

   * Use the parsers offer to (partially) relieve
     you from anchor management. This could reduce
     the need for special anchor management code
     in various converters.

As everytime, feedback is highly appreciated.

Enjoy!

        Jochen