Extension:HighlightJS

MediaWiki extensions manual
HighlightJS
Release status: unmaintained
Implementation Parser function
Description A wrapper for the "highlight.js" client-side syntax highlighter
Author(s) Aran Dunkley (Nadtalk)
Latest version 1.1.2 (2015-09-04)
MediaWiki 1.25+
Database changes No
License GNU General Public License 2.0 or later
Download external source

This extension is a drop-in replacement for the GeSHi syntax highlighter extension. It does exactly the same thing, but instead of using GeSHi to do the highlighting on the server-side, it uses the client-side JavaScript highlighter from highlightjs.org. I've included a few of the most popular languages in the extension bundle, but you can download more from the main site, it supports over a hundred languages!

Installation

edit
  • Download the code and place the file(s) in a directory called HighlightJS in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'HighlightJS' );
    
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Usage

edit

Code-blocks are created in the same way as the existing SyntaxHighlight one where the code-block is surrounded by a source tag with a language attribute as shown in the following example.

<syntaxhighlight lang="js">
console.log('Some JavaScript code');
</syntaxhighlight>

The colour theme can be set using the $wgHighlightJsStyle global variable which by default is empty which means to use the Organic Design code colours. You can set this to any of the sixty or so styles that you can see in the highlight/styles directory (don't include the ".css" in the setting).

Some wikis including this one now use the syntaxhighlight tag instead, so if your wiki already has existing code-blocks that use a different tag, you can set the tag that the HighlightJS extension uses with the $wgHighlightJsMagic global variable.

Example configuration options:

wfLoadExtension( 'HighlightJS' );
$wgHighlightJsMagic = 'syntaxhighlight';
$wgHighlightJsStyle = 'tomorrow-night-bright';

See also

edit