The CodeMirror extension provides syntax highlighting in MediaWiki's wikitext editor. It adds a button with the icon to the editing toolbar that allows for switching syntax highlighting on and off. It supports the 2010 WikiEditor toolbar as well as the VisualEditor toolbar.

By default it is switched off. When switching on, it will replace the standard textarea with the editor provided by CodeMirror library. When switching off, it will be the opposite effect.

You can use your own styles for wikitext highlighting. Used styles available here. You should place your own styles to common.css. If you have found better styles please let me know.

Browser support [ edit ]

It is not fully tested yet!

All browsers supported by MediaWiki are supported. Modern mobile browsers tend to partly work.

Screenshots [ edit ]

Live demo.

Installation [ edit ]

If using Vagrant vagrant roles enable codemirror --provision

Manual installation

Install either the WikiEditor extension VisualEditor extension

VisualEditor extension Download and place the file(s) in a directory called CodeMirror in your extensions/ folder.

in your folder. Add the following code at the bottom of your LocalSettings.php: wfLoadExtension ( 'CodeMirror' );

Configure as required.

Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration [ edit ]

# Enables use of CodeMirror by default but still allow users to disable it $wgDefaultUserOptions [ 'usecodemirror' ] = 1 ;

Add the above code at the bottom of your LocalSettings.php .

For color and style customization, see Meta help page.

Extension integration [ edit ]

If your MediaWiki extension adds a new tag and you want to make sure CodeMirror properly highlights the content within it, you can add CodeMirror support to your extension. Here are two examples: Cite extension and PhpTags extension.

To do [ edit ]

highlighting definition lists ( ;foo :bar ) (phab:T170042)

auto-completion (phab:T95100)

brace matching (phab:T15302)

code folding T166098

highlighting inside gallery tag (<gallery> foo | bar </gallery>)