Erweiterung:CodeMirror

This page is a translated version of the page Extension:CodeMirror and the translation is 30% complete.
MediaWiki-Erweiterungen
OOjs UI icon advanced-invert.svg
CodeMirror
Freigabestatus: stabil
Pride and codemirror.png
Einbindung Benutzer-Schnittstelle
Beschreibung Provides syntax highlighting in wikitext editor
Autor(en) Pavel Astakhov (pastakhovDiskussion)
Letzte Version 4.0.0
Kompatibilitätspolitik Snapshots werden zusammen mit MediaWiki veröffentlicht. Der Master ist nicht abwärtskompatibel.
MediaWiki 1.32+
PHP 5.3+
Datenbankänderungen Nein
Lizenz GNU General Public License 2.0 oder neuer
Herunterladen
  • $wgCodeMirrorLineNumberingNamespaces
Quarterly downloads 404 (Ranked 25th)
Public wikis using 2,702 (Ranked 39th)
Übersetze die CodeMirror-Erweiterung, wenn sie auf translatewiki.net verfügbar ist
Vagrant-Rolle codemirror
Probleme Offene Aufgaben · Einen Fehler melden

The CodeMirror extension provides syntax highlighting in MediaWiki's wikitext editor. It adds a button with the icon Codemirror-icon.png 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 switched on, it will replace the standard textarea with the editor provided by CodeMirror library. When switched off, it will switch back to the standard textarea.

The colors used in this extension have been optimised for higher contrast, accessibility and better readability and now conform to the Web Content Accessibility Guidelines (WCAG 1.4.3 AA). The colors provide better access for people with limited vision as well as for users working in bright daylight conditions. (Weitere Informationen)

Funktionen

Bracket matching

This feature highlights the innermost pair of brackets when the cursor lies between any bracket pair, and when the cursor lies directly next to a bracket, the feature highlights the corresponding matching bracket. Bracket matching is active in both editors when syntax highlighting is turned on in any namespace using these editors.

Zeilennummerierung

In the wikitext edit mode line numbers are automatically displayed in both editors.

This feature is enabled only for the template namespace on most wikis, and on all namespaces on some wikis (see the roadmap and the configuration).


Farbenblind-Modus

For users who have difficulty distinguishing between colors, CodeMirror offers a colorblind-friendly mode. This feature can be activated on wikis with CodeMirror enabled by navigating to the Special:Preferences page.

 


With the colorblind-friendly scheme active, the colors of the following page elements change:

Headings, symbols, signatures, section names, magic words #E4A400
Vorlagen #9C3A00
HTML tags, references, mathematical expressions #56B4E9
Variablen #009E73

In addition, background highlights and colors are removed from all text and objects. Bolding and underlining behavior remains unaffected.


Browserunterstützung

All browsers supported by MediaWiki are supported.

Installation


Vagrant-Installation:

  • Wird Vagrant benutzt, ist mit vagrant roles enable codemirror --provision zu installieren

Konfiguration

For color and style customization, see Meta help page. You can use your own styles for wikitext highlighting. Used styles available here. You should place your own styles to common.css .

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 enable additional features:

# Restrict line numbering to specific namespaces.
# Defaults to null, which enables it for all namespaces.
# Set to [] to disable everywhere.
$wgCodeMirrorLineNumberingNamespaces = [ NS_TEMPLATE ];

Extension integration

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.

JavaScript integration

The following front-end hooks are used in this extension:

Hook Parameter
Typ Beschreibung
ext.CodeMirror.switch boolean Whether the CodeMirror editor is now shown
jQuery-Objekt The current "editor", which is either the normal ‎<textarea /> or the .CodeMirror element.

If you need to interact with the contents of a CodeMirror instance, use jQuery.plugin.textSelection.

Zu erledigen

  • Unfortunately, right-to-left content is not supported. (task T170001)
  • highlighting definition lists ( ;foo :bar ) (task T170042)
  • auto-completion (task T95100)
  • code folding (task T166098)
  • highlighting inside gallery tag (<gallery> foo | bar </gallery>)


Siehe auch