HTML::WikiConverter version 0.60
================================

HTML::WikiConverter is an HTML to wiki converter capable of converting
HTML source into a variety of wiki dialects. It's aimed at folks who
are converting vanilla HTML websites into wikis.

The following dialects are supported:

  DokuWiki
  Kwiki
  Markdown
  MediaWiki
  MoinMoin
  Oddmuse
  PbWiki
  PhpWiki
  PmWiki
  SnipSnap
  TikiWiki
  UseMod
  WakkaWiki
  WikkaWiki

INSTALLATION

The HTML::WikiConverter module is just an interface; to actually
perform HTML-to-wiki conversion, you can either install individual
dialect modules (see below) or install Bundle::HTMLWikiConverter to
get all of the dialect modules in one shot:

  % perl -MCPAN -e 'install Bundle::HTMLWikiConverter'

For just the HTML::WikiConverter interface:

  % perl -MCPAN -e 'install HTML::WikiConverter'

Individual dialects can be installed separately; for example:

  % perl -MCPAN -e 'install HTML::WikiConverter::MediaWiki'
  % perl -MCPAN -e 'install HTML::WikiConverter::PhpWiki'

SYNOPSIS

Converting HTML to wiki markup is easy:

  use HTML::WikiConverter;
  my $wc = new HTML::WikiConverter( dialect => 'MediaWiki' );
  print $wc->html2wiki( $html );

The included html2wiki utility converts on the command line:

  % html2wiki --dialect MediaWiki input.html > output.mw

There's also a web interface if you're so inclined:

  http://diberri.dyndns.org/wikipedia/html2wiki/

PREREQUISITES

  * Test::More
  * HTML::TreeBuilder
  * HTML::Tagset
  * HTML::Entities
  * URI and URI::Escape
  * Class::Data::Inheritable
  * Params::Validate

CHANGES IN VERSION 0.60

  * Add CSS-to-HTML normalization so, for example,
    '<font style="font-weight:bold">text</font>' will be interpreted
    as '<b>text</b>' before conversion to wiki markup. This can be
    disabled by passing the 'normalize' attribute a false value.
  * Non-semantic tags with no attributes can be replaced with their
    content by enabling the 'passthrough_naked_tags' attribute.
  * Rules are now loaded on demand so they can respond to attribute
    modification events.
  * The new "UNKNOWN" rule acts as a catch-all for unknown tags.
  * HTML can now be fetched from a URI by passing a 'uri' argument to
    the html2wiki() method.
  * The user agent used to fetch content from a URI can be specified
    in the 'user_agent' attribute.
  * Dialect authors may now use the 'passthrough' subrule for replacing
    tags with their contents at conversion time.
  * The 'remove_empty' attribute is now called 'strip_empty_tags' for
    consistency with other attributes. It behaves slightly different
    too, considering elements empty if they contain only whitespace.

BUGS

I made the mistake of packing too many changes into the 0.60 release,
so there will likely be some bugs. Please report them to rt.cpan.org.

THANKS TO

  * Tatsuhiko Miyagawa for suggestions and code
  * Dave Schaefer for the PbWiki dialect and for the idea behind the
    new C<attributes()> implementation.
  * Martin Kudlvasr for fixing a bug in how 'wrap_in_html' was applied to
    HTML read from files

COPYRIGHT

Copyright (c) 2004-2006 David J. Iberri <diberri@cpan.org>

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html
