Overview
Plugin-aware text-to-XHTML converter based on Markdown.
This package is ported from John Gruber's » Markdown script in Perl, with many thanks to Michel Fortin for his » PHP Markdown port to PHP 4. Be sure to read up on » Markdown syntax as well.
Unlike Markdown and PHP Markdown, Solar_Markdown is plugin-aware. Every processing rule is a separate class, and classes can be strung together in a manner largely independent of each other (although the order of processing still matters a great deal). The plugin architecture is based on Paul's work from » Text_Wiki.
While the Text_Wiki package is capable of converting to any rendering format, Solar_Markdown only converts to XHTML. If you need to render to something other than XHTML, you may wish to try a two-step output process: from Markdown to XHTML, then from XHTML to your preferred format.
Configuration Keys
tab_width: Number of spaces per tab. Default 4.tidy: If empty/false/null, do not use Tidy to post-process the transformed output. If true or a non-empty array, is a set of config options to pass to Tidy when rendering output. See also » http://php.net/tidy. Default false.plugins: An array of plugins for the parser to use, in order.
Constants
None.
Public Properties
The Solar_Markdown class has no public properties; try the list of all properties.
Public Methods
These are all the public methods in the Solar_Markdown class.
You can also view the list of all public, protected, and private methods.
-
__construct() -
Constructor.
-
__destruct() -
Default destructor; does nothing other than provide a safe fallback for calls to parent::__destruct().
-
cleanup() -
Runs the processed text through each plugin's cleanup() method.
-
dump() -
Convenience method for getting a dump the whole object, or one of its properties, or an external variable.
-
encode() -
Encodes special Markdown characters so they are not recognized when parsing.
-
escape() -
Escapes HTML in source text.
-
getLink() -
Returns the href and title of a named link reference.
-
getLinks() -
Returns an array of all defined link references.
-
getPlugin() -
Returns an internal Markdown plugin object for direct manipulation and inspection.
-
getTabWidth() -
Returns the number of spaces per tab.
-
isHtmlToken() -
Is a piece of text a delimited HTML token?
-
locale() -
Looks up class-specific locale strings based on a key.
-
prepare() -
Prepares the text for processing by running the prepare() method of each plugin, in order, on the source text.
-
processBlocks() -
Runs the source text through all block-type plugins.
-
processSpans() -
Runs the source text through all span-type plugins.
-
render() -
Returns a final rendering of the processed text.
-
reset() -
Resets Markdown and all its plugins for a new transformation.
-
setLink() -
Sets the value of a named link reference.
-
toHtmlToken() -
Saves a pieces of text as HTML and returns a delimited token.
-
transform() -
One-step transformation of source text using plugins.
-
unEncode() -
Un-encodes special Markdown characters.
-
unHtmlToken() -
Replaces all HTML tokens in source text with saved HTML.