Text::MediawikiFormat::Blocks3pm
Blocktypes for text::mediawikiformat
Usage
None. Use Text::MediawikiFormat as the public interface, unless you want to create your own block type.
Overview
This module merely creates subclasses of Text::MediawikiFormat::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::MediawikiFormat::Block".
Methods
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
$lineusing"Text::MediawikiFormat::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_blockto the current block. It's your responsibility to remove$next_blockfrom 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_blockunder this block if the both nest and if$next_blockhas a level greater than the current block. This actually adds$next_blockas a text item within the current block. Beware.
Releases
7 releases since Debian 6.0 (Squeeze); the text changed 3 times.