Wiki::Toolkit::Formatter::Default.3pm

Langue: en

Version: 2008-05-17 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Wiki::Toolkit::Formatter::Default - A formatter for Wiki::Toolkit.

DESCRIPTION

A formatter backend for Wiki::Toolkit.

SYNOPSIS

   my $store     = Wiki::Toolkit::Store::SQLite->new( ... );
   # See below for parameter details.
   my $formatter = Wiki::Toolkit::Formatter::Default->new( %config );
   my $wiki      = Wiki::Toolkit->new( store     => $store,
                                       formatter => $formatter );
 
 

METHODS

new
   my $formatter = Wiki::Toolkit::Formatter::Default->new(
                  extended_links  => 0,
                  implicit_links  => 1,
                  allowed_tags    => [qw(b i)],  # defaults to none
                  macros          => {},
                  node_prefix     => 'wiki.cgi?node=' );
 
 

Parameters will default to the values shown above (apart from "allowed_tags", which defaults to allowing no tags).

macros - be aware that macros are processed after filtering out disallowed HTML tags. Currently macros are just strings, maybe later we can add in subs if we think it might be useful.

Macro example:
   macros => { qr/(^|\b)\@SEARCHBOX(\b|$)/ =>
               qq(<form action="wiki.cgi" method="get">
                    <input type="hidden" name="action" value="search">
                    <input type="text" size="20" name="terms">
                    <input type="submit"></form>) }
 
 
format
   my $html = $formatter->format( $content );
 
 

Escapes any tags which weren't specified as allowed on creation, then interpolates any macros, then calls Text::WikiFormat::format (with the config set up when new was called) to translate the raw Wiki language supplied into HTML.

SEE ALSO

Wiki::Toolkit::Formatter::WikiLinkFormatterParent Wiki::Toolkit

AUTHOR

Kake Pugh (kake@earth.li).
      Copyright (C) 2002-2003 Kake Pugh.  All Rights Reserved.
      Copyright (C) 2006 the Wiki::Toolkit team. All Rights Reserved.
 
 

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