Extension:SyntaxHighlighterAndCodeColorizer
![]() | This extension is currently not actively maintained! Although it may still work, any bug reports or feature requests will more than likely be ignored. Please see the following alternatives that you may wish to install instead of this extension: |
![]() Release status: unmaintainedCategory:Unmaintained extensions |
|
---|---|
Implementation | VariableCategory:Variable extensions |
Description | Highlight Syntax and Color Code using JavaScript |
Latest version | 3.0.83 (2010-07-02) |
MediaWiki | Category:Extensions without MediaWiki version |
Database changes | No |
License | GNU Lesser General Public License 3.0 |
Download | GitHub: Note: |
Example | <pre class="brush:[code-alias]"> …Your Code Here </pre> |
Introduction
Highlight syntax and color code using JavaScript. This plugin integrates Alex Gorbatchev’s Syntax Highlighter Tool.
Supported languages
Example
See it in action:
Usage
Just surround your code like this (note that your code must be HTML escaped):
<pre class="brush:[code-alias]"> ...Your Code Here... </pre>
or like this:
<script type="syntaxhighlighter" class="brush: js"><![CDATA[ ...Your Code Here... ]]></script>
Replace the [code-alias]
segment with the type of code you have. For a list of all available brush aliases, see here. There's some pros and cons for each of the above options here.
Admins can provide additional aliases (like <plsql> your code </plsql>) by adding to the extension file code like this:
// This is a comment. Comments are not displayed in the browser //
$wgHooks['ParserFirstCallInit'][] = 'syntaxHighlightingExtension';
function syntaxHighlightingExtension( &$parser ) {
$parser->setHook( 'PLSQL', 'syntaxHighlightingRenderHtml' );
return true;
}
function syntaxHighlightingRenderHtml($input, $args, $parser, $frame){
return "<pre class=\"brush:sql\">\n" . $input . "</pre>";
}
Installation
- Download the latest version of SyntaxHighlighter and extract the files in a directory called
Syntax
in yourextensions/
folder. - Add the code from the files under #Code section on this page to this directory.
- Add the following to LocalSettings.php:
require_once("{$IP}/extensions/SyntaxHighlighter/SyntaxHighlighter.php");
Alternative installation
Alternatively, you could handle the installation of the appropriate files and the generation of this content all with a script. An example of this can be seen here.