Extension:SyntaxHighlight GeSHi ParserFunction

Description
This extension is based on Extension:SyntaxHighlight_GeSHi, but implemented using parser functions instead of tags. Please note that actually it is a very simplified version of the original extension.

I´ve created it because tag-based extensions seems to not be easily integrated with Semantic MediaWiki, and I needed to use this extension to output value of highlighted source.

'''Please note that tag-based extensions can be called as parser functions using the workaround described here. This enables Extension:SyntaxHighlight_GeSHi to work without problem with Semantic MediaWiki, and makes this extension desnecessary'''.

Example
To use this extension you need to use the source parser function, which receives two parameters: the first one is the programming language, and the second is the source code.

For example, the following code

would be rendered as

Note you can use this to output semantic properties. If you have, for example, a property javasourcecode defined in a template, it can be rendered as a java source code in any pages that use it if template code includes the following:



Installation
The source code is hosted on github and versioned using the git tool (not SVN, as most of the extensions). So, you'll need git to download ou update the sources.

Once git is installed, you can download the extension issuing the following command in the extensions/ directory:

git clone http://github.com/mgbf/SyntaxHighlight_Geshi_ParserFunction.git

That would create directory SyntaxHighlight_Geshi_ParserFunction/, which contains the needed files, right under extensions/.

After that you just need to include the following line in LocalSettings.php:

require_once("$IP/extensions/SyntaxHighlight_Geshi_ParserFunction/SyntaxHighlight_Geshi_ParserFunction.php");