Release status: stable
|Description||Provides syntax highlighting in wikitext editor|
|Author(s)||Pavel Astakhov (pastakhovtalk)|
|Compatibility policy||Snapshots releases along with MediaWiki. Master is not backward compatible.|
|License||GNU General Public License 2.0 or later|
|Translate the CodeMirror extension if it is available at translatewiki.net|
|Issues||Open tasks · Report a bug|
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.
The colors used in this extension have been optimised to provide higher contrast, accessibility and better readability.
This feature allows highlighting of the closest matching pair of surrounding brackets while navigating through wikitext code using the cursor. Bracket matching will be active in both editors when syntax highlighting is turned on, in any namespace using these editors.
In the wikitext edit mode line numbers are automatically displayed in both editors.
All browsers supported by MediaWiki are supported.
- If using Vagrant, install with
vagrant roles enable codemirror --provision
- Manual installation
- Install either the WikiEditor extension or the VisualEditor extension, as instructed on their pages; at least one of these is required for this extension to work.
- Download and place the file(s) in a directory called
- 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.
Add the following code at the bottom of your LocalSettings.php.
# Enables use of CodeMirror by default but still allow users to disable it $wgDefaultUserOptions['usecodemirror'] = 1;
To try out the new features mentioned above in your local installation, add the following lines as well. Please note though, that these features are meant to become default features. The settings might not have an effect any more then.
# Enable bracket matching in CodeMirror $wgCodeMirrorEnableBracketMatching = true; # Enable accessible colors in CodeMirror $wgCodeMirrorAccessibilityColors = true; # Enable line numbering in CodeMirror # defaults to the template namespace `[ NS_TEMPLATE ]` # `null` enables it for all namespace #  for disabling everywhere $wgCodeMirrorLineNumberingNamespaces = null;
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.
The following front-end hooks are used in this extension:
||boolean||Whether the CodeMirror editor is now shown|
|jQuery object||The current "editor", which is either the normal |
- highlighting definition lists ( ;foo :bar ) (phab:T170042)
- auto-completion (phab:T95100)
- code folding T166098
- highlighting inside gallery tag (<gallery> foo | bar </gallery>)
- Overview of missing features and bugs: MediaWiki-extensions-CodeMirror
- User:Remember the dot/Syntax highlighter
- Community Tech/Wikitext editor syntax highlighting (includes information on customizing the colors)
- c:Category:MediaWiki extension CodeMirror
|This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page.|