Text::WikiFormat::Blocks - blocktypes for Text::WikiFormat
None. Use Text::WikiFormat as the public interface, unless you
want to create your own block type.
This module merely creates subclasses of Text::WikiFormat::Block,
which is the interesting code. A block is a collection of related lines,
such as a code block (text to display verbatim in a monospaced font), a
header, an unordered list, an ordered list, and a paragraph (text to display
in a proportional font).
Every block extends
"Text::WikiFormat::Block".
The following methods exist:
- •
- new( %args )
Creates and returns a new block. The valid arguments are:
- "text"
The text of the line found in the block.
- "args"
The arguments captured by the block-identifying regular
expression.
- "level"
The level of indentation for the block (usually only useful
for list blocks).
- "tags"
The tags in effect for the current type of wiki
formatting.
- "opts"
The options in effect for the current type of wiki
formatting.
Use the accessors of the same names to retrieve the values of the
attributes.
- add_text( @lines_of_text )
Adds a list of lines of text to the current text for the
block. This is very useful when you encounter a block and want to merge
it with the previous block of the same type
- add_args( @arguments )
Adds further arguments to the block; useful when merging
blocks.
- formatted_text()
Returns text formatted appropriately for this block. Blocks
don't have to have formatters, but they may.
- formatter( $line_of_text )
Formats the $line using
Text::WikiFormat::format_line(). You can add
your own formatter here; this is worth overriding.
- merge( $next_block )
Merges the current block with
$next_block (the next block encountered) if
they're of the same type and are at the same level. This adds the text
and args of $next_block to the current block.
It's your responsibility to remove $next_block
from whatever your code iterates over.
- nests()
Returns true if this block should nest (as in lists and
unordered lists) for the active wiki formatting.
- nest( $next_block )
Nests $next_block under this block if
the both nest and if $next_block has a level
greater than the current block. This actually adds
$next_block as a text item within the current
block. Beware.
chromatic, "chromatic at wgz dot
org"
Copyright (c) 2006, chromatic. Some rights reserved.
This module is free software; you can use, redistribute, and
modify it under the same terms as Perl 5.8.x.