NAME
Mediawiki::POD::HTML - a subclass to catch X keywords and =head lines
SYNOPSIS
use Mediawiki::POD::HTML;
my $parser = Mediawiki::POD::HTML->new();
my $html = $parser->parse_string_document($POD);
DESCRIPTION
Turns a given POD (Plain Old Documentation) into HTML code.
This subclass of Pod::Simple::HTML catches =head
directives, and then allows you to assemble a TOC (table of contents) from the captured headlines.
In addition, it supports graph-common
and graph
subsections, these will be turned into HTML graphs.
GRAPH SUPPORT
Mediawiki::POD::HTML allows you to write graphs (nodes connected with edges) in Graph::Easy or http://www.graphviz.org|Graphviz format and turns these portions into HTML "graphics".
The following represents two graphs:
=for graph [ Single ] --> [ Line ] --> [ Definition ]
=begin graph
node { fill: silver; }
[ Mutli ] --> [ Line ]
=end graph
In addition, a graph-common
section can be used to set a common text for all following graphs. Each graph-common
section resets the common text section:
=for graph-common node { fill: red; }
=for graph [ Red ]
=for graph [ Red too ]
=for graph-common node { fill: blue; }
=for graph [ Blue ]
=for graph [ Blue too ]
The attribute output
for graphs is not yet used, eventually it should result in different output formats like SVG, or PNG rendered via dot.
METHODS
get_headlines()
Return all the captured headlines as an ARRAY ref.
keyword_search_url()
# Set external search engine to search for "Foo+Bar"
$parser->keyword_search_url('http://search.cpan.org/perldoc?');
# Generate URLs like "Foo_Bar", perfect for relative wiki links:
$parser->keyword_search_url('', '_');
Get/set the URL that is used to link keywords defined with X<>
to a search engine.
If the URL contains a text ##KEYWORD##
, then this text will be replaced with the actual keyword. Otherwise, the keyword is simple appended to the URL.
The default search URL is:
http://cpan.uwinnipeg.ca/search?query=##KEYWORD##
Optionally set the character that replaces a space in generated URLs. The default space replacement character is undef, this means the character is dependend on the search URL:
For URLS with ##KEYWORD##, it is '+'
For URLS without a ##KEYWORD##, it is '_'
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms of the GPL.
See the LICENSE file for information.
AUTHOR
(c) Copyright by Tels http://bloodgate.com/wiki 2007