xxx2lout version 1.13 SUMMARY The following little perl programs are included: * html2lout - Converts HTML to lout * pod2lout - Converts pod to lout * txt2lout - Converts plain text to lout * perl2lout - Converts perl programs to lout * lout2html - Converts a subset of lout to HTML (alpha!) * mkall - Wrapper for lout They are supported by two modules which can be used by perl programmers doing their own lout processing: * Lout.pm - this provides the txt2lout function used by the first three converters, and a supporting set_option function; it also provides htmlentity2lout used by html2lout. Its also used by lout2html. * HTML/LoutParser.pm - this provides the routines for the hooks in the HTML/Parser.pm module. txt2lout can be used as a nice filter, say in vi, with ".,$!txt2lout -w 0" for example. html2lout (i.e. HTML/LoutParser.pm) now does tables - its very crude and simple and you'll probably have to hand tweak, but its a start. lout2html is very crude - it doesn't do tables, diagrams, graphics, macros, definitions, etc. - but for lots of text and lists it will do the bulk conversion, but you'll need to hand fix. I'd really only recommend this for the desperate! Even if they don't give you exactly the results you want they may be enough to knock your text into a usable form. CHANGES 0.01 First version. 0.02 Added some code to handle html tables in html2lout; also made LoutParser a first class object with some parameters to influence its behaviour. 0.03 Improved html2lout - if multiple fonts given, choses just the last one and inserts Base. Insert empty objects {} in front of @B, @I etc to ensure they don't collide with preceeding words. Corrections to smart quotes applied. Now use Text::Wrap to wrap long lines. Added code to handle more tags. 1.00 First documented version. Improved html2lout - better table handling (but still very basic). No longer puts @LP's all over the place, so everything comes out better, including lists. Now &entity;'s are converted to {@Char entity}'s. More options added to control commenting of handled and unhandled tags. More tags handled. Parser object data bugs sorted. All files now have their own pod documentation. 1.01 Added @CNP as an option '-cnp' for

and

's which is on by default. Thanks to David Duffy for this suggestion. 1.02 Added non-standard tags =title, =head3 and =head4 to pod2lout. pod2lout can now be used on perl scripts and modules without formality to produce lout from their pod alone. 1.10 Added lout2html (suggested by David Duffy). 1.11 Improved lout2html, now handles lout comments, and more tags. Still very alpha though. 1.12 Improved lout2html, more tags, slightly better at braces, but still very alpha. 1.13 Licence changed to GPL for programs and LGPL for modules. 1.14 Added mkall lout wrapper. INSTALLING As for installing just create a directory somewhere and unzip and untar the lot, e.g. tar xvfz xxx2lout-VERSION.tar.gz or gunzip xxx2lout-VERSION.tar.gz tar xvf xxx2lout-VERSION.tar then either put this directory in your PATH or create some soft links from somewhere on your path to the xxx2lout scripts you want. Note: You must have Perl 5.004 or later; and to use html2lout you must have HTML::Parser and to use lout2html you must have HTML::Entities both of which come in the libwww-perl library; you'll also need Text::Wrap which comes with Perl. LICENCE These are quick scripts, but if you have comments, improvements etc send them to with 'xxx2lout' in the subject line. Copyright (c) 1999 Mark Summerfield. All Rights Reserved. May be used/distributed under the GPL or LGPL as per the licence in each component, or under the GPL where not specified.