Extension:MarkdownExtraParser

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manual
Crystal Clear action run.png
MarkdownExtraParser

Release status: beta

Implementation Parser function
Description A quick MediaWiki hook for using a Markdown parser
Author(s) Trevor N. Suarez (Rican7talk)
MediaWiki 1.20+
PHP >= 5.3
Database changes No
License MIT License
Download
README
Parameters

$MarkdownExtraParserOptions

Hooks used
ParserBeforeStrip

InternalParseBeforeSanitize
InternalParseBeforeLinks

Translate the MarkdownExtraParser extension if it is available at translatewiki.net

Check usage and version matrix; code metrics

The MarkdownExtraParser extension allows for hooking MediaWiki's parser to use Michael Fortin's PHP Markdown Extra library.

It works additonal to the out of box Mediawiki Markup spec beside some conflicts.

Download[edit | edit source]

Clone the GitHub repo or download the zip

Installation[edit | edit source]

  1. Create a folder in your "$IP/extensions" directory called "MarkdownExtraParser"
    Note: $IP is your MediaWiki install directory
    You should have something like this: $IP/extensions/MarkdownExtraParser/
  2. Clone the GitHub repo into your new directory (or download the zip)
  3. Download Michael Fortin's PHP Markdown Extra library
  4. Extract and copy the "markdown.php" file into your new "$IP/extensions/MarkdownExtraParser/" directory
  5. Enable the extension by adding the following line to your "LocalSettings.php" file:
    require_once "$IP/extensions/MarkdownExtraParser/MarkdownExtraParser.php";
    

Configuration[edit | edit source]

Before "requiring" the extension, you can set an array variable to hold some configuration settings for MarkdownExtraParser, like so:

// MarkdownExtraParser
$MarkdownExtraParserOptions = array(
    'use_raw_html' => true,
);
Available Options
  • 'use_raw_html' - Allows for more advanced markdown-to-HTML conversions, such as image tags, etc.

Conflicts[edit | edit source]

You can mix MediaWiki markup (wikitext) and Markdown markup except for some logical and programmatical tags:

  • # are used in MediaWiki as numbered lists, but here it is a heading
  • MediaWiki Definition list ; defines terms : description will only work inline. Not with a newline before :.
  • Magic words (like __NOEDITSECTION__) are not supported
  • If you want an [edit section] link, you have to use MediaWiki headings (== Heading ==)

Differences[edit | edit source]

Next to the different but mostly more usable syntax from markdown, there are several differences regarding MediaWiki-Syntax:

  • Markdown has no internal links and images. So you can use [[MediaWiki]] and [[File:Markdown-mark.svg]]. Only the order of title in titled links like [[MediaWiki|Mainpage]] is inverted to Markdown[Mainpage](https://www.mediawiki.org/wiki/MediaWiki).
  • Extension:Cite which creates references as footnotes on a page (used <ref>lorem ipsum itigur</ref>) is not needed. Markdown Extra has built in footnotes ([^book] and [^book]: lorem ipsum itigur). You don't have to mess up your continuous text with the long content. You can shift it to the bottom of paragraph or page, sense and purpose of a footnote.

See also[edit | edit source]