Extension:SyntaxHighlighterAndCodeColorizer
![]() Release status: unmaintained |
|
---|---|
Implementation | Variable |
Description | Highlight Syntax and Color Code using JavaScript |
Latest version | 3.0.83 (2010-07-02) |
MediaWiki | |
Database changes | No |
License | GNU Lesser General Public License 3.0 |
Download | |
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
- ActionScript 3
- Bash/shell
- ColdFusion
- C#
- C++
- CSS
- Delphi
- Diff
- Erlang
- Groovy
- JavaScript
- Java
- JavaFX
- Perl
- PHP
- Plain Text
- PowerShell
- Python
- Ruby
- Scala
- SQL
- Visual Basic
- XML
- Custom languages (several have already been created)
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.