Pod::Simple::Wiki(3pm) | User Contributed Perl Documentation | Pod::Simple::Wiki(3pm) |
NAME¶
Pod::Simple::Wiki - A class for creating Pod to Wiki filters.
SYNOPSIS¶
To create a simple filter to convert from Pod to a wiki format:
#!/usr/bin/perl use strict; use warnings; use Pod::Simple::Wiki; my $parser = Pod::Simple::Wiki->new('kwiki'); if ( defined $ARGV[0] ) { open IN, $ARGV[0] or die "Couldn't open $ARGV[0]: $!\n"; } else { *IN = *STDIN; } if ( defined $ARGV[1] ) { open OUT, ">$ARGV[1]" or die "Couldn't open $ARGV[1]: $!\n"; } else { *OUT = *STDOUT; } $parser->output_fh( *OUT ); $parser->parse_file( *IN ); __END__
To convert Pod to a wiki format using the installed "pod2wiki" utility:
pod2wiki --style mediawiki file.pod > file.wiki
DESCRIPTION¶
The "Pod::Simple::Wiki" module is used for converting Pod text to Wiki text.
Pod (Plain Old Documentation) is a simple markup language used for writing Perl documentation.
A Wiki is a user extensible web site. It uses very simple mark-up that is converted to Html. For an introduction to Wikis see: <http://en.wikipedia.org/wiki/Wiki>
METHODS¶
new('wiki_format')¶
The "new" method is used to create a new "Pod::Simple::Wiki" object. It is also used to set the output Wiki format.
my $parser1 = Pod::Simple::Wiki->new( 'wiki' ); my $parser2 = Pod::Simple::Wiki->new( 'mediawiki' ); my $parser3 = Pod::Simple::Wiki->new(); # Defaults to 'wiki'
The currently supported formats are:
wiki kwiki usemod twiki tiddlywiki textile wikipedia or mediawiki markdown moinmoin confluence
Other methods¶
Pod::Simple::Wiki inherits all of the methods of "Pod::Simple". See Pod::Simple for more details.
Supported Formats¶
The following wiki formats are supported by "Pod::Simple::Wiki":
- wiki
- This is the original Wiki format as used on Ward Cunningham's Portland repository of Patterns. See <http://c2.com/cgi/wiki>.
- kwiki
- This is the format as used by Brian Ingerson's Kwiki: <http://www.kwiki.org>.
- usemod
- This is the format used by the Usemod wikis. See: <http://www.usemod.com/cgi-bin/wiki.pl>.
- twiki
- This is the format used by TWiki wikis. See: <http://twiki.org/>.
- tiddlywiki
- This is the format used by the TiddlyWiki. See: <http://www.tiddlywiki.com/>.
- textile
- The Textile markup format as used on GitHub. See: <http://textile.thresholdstate.com/>.
- wikipedia or mediawiki
- This is the format used by Wikipedia and MediaWiki wikis. See: <http://www.mediawiki.org/>.
- markdown
- This is the format used by GitHub and other sites. See: <http://daringfireball.net/projects/markdown/syntax>.
- moinmoin
- This is the format used by MoinMoin wikis. See: <http://moinmo.in/MoinMoinWiki>.
- muse
- Emacs Muse (also known as "Muse" or "Emacs-Muse") is an authoring and publishing environment for Emacs.
- confluence
- This is the format used by Confluence. See: <http://www.atlassian.com/software/confluence/>.
If no format is specified the parser defaults to "wiki".
Any other parameters in "new" will be passed on to the parent "Pod::Simple" object. See Pod::Simple for more details.
Porting New Wiki Formats¶
If you are interested in porting a new wiki format have a look at Pod::Simple::Wiki::Template.
The "Pod::Simple::Wiki" git repository is: <http://github.com/jmcnamara/pod-simple-wiki/>.
SEE ALSO¶
This module also installs a "pod2wiki" command line utility. See "pod2wiki --help" for details.
TODO¶
- •
- Fix some of the "=over" edge cases. See the TODOs in the test programs.
ACKNOWLEDGEMENTS¶
Thanks to Sean M. Burke for "Pod::Simple". It may not be simple but sub-classing it is. ":-)"
Thanks to Zoffix Znet for various pull requests and fixes.
Thanks to Sam Tregar for TWiki support.
Thanks Tony Sidaway for Wikipedia/MediaWiki support.
Thanks to Daniel T. Staal for Markdown support.
Thanks to Michael Matthews for MoinMoin support.
Thanks to Christopher J. Madsen for several MediaWiki additions and tests.
Thanks Tim Bunce for the TiddlyWiki prod and Ron Savage for the port.
Thanks to Olivier 'dolmen' Mengué for various TiddlyWiki patches.
Thanks to David Bartle, Andrew Hobbs and Jim Renwick for confluence patches.
Thanks to Peter Hallam for MediaWiki enhancements.
Thanks to Marco Pessotto for the Muse format.
DISCLAIMER OF WARRANTY¶
Because this software is licensed free of charge, there is no warranty for the software, to the extent permitted by applicable law. Except when otherwise stated in writing the copyright holders and/or other parties provide the software "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the software is with you. Should the software prove defective, you assume the cost of all necessary servicing, repair, or correction.
In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who may modify and/or redistribute the software as permitted by the above licence, be liable to you for damages, including any general, special, incidental, or consequential damages arising out of the use or inability to use the software (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the software to operate with any other software), even if such holder or other party has been advised of the possibility of such damages.
LICENSE¶
Either the Perl Artistic Licence <http://dev.perl.org/licenses/artistic.html> or the GPL <http://www.opensource.org/licenses/gpl-license.php>.
AUTHOR¶
John McNamara jmcnamara@cpan.org
COPYRIGHT¶
MMIII-MMIV, John McNamara.
All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself.
2022-10-13 | perl v5.34.0 |