Extension:SyntaxHighlight/VisualEditor

SyntaxHighlight nodes in VisualEditor (WIP)
SyntaxHighlight nodes are made editable via VisualEditor  module. Although the module is related to SyntaxHighlight GeSHi, it doesn't use the extension for editing  blocks. Rather, the module only displays and manipulates parsed  block, provided by Parsoid, with it's own language highlighting and validating rules. A more straightforward relationship graph: SyntaxHighlight GeSHi <--> Parsoid <--> syntaxhighlight module The module's language rules are stored as JSON files, which will be described in detail below. All files mentioned below are under the module's folder, except where specified.

Language rules
Language rules are located under. The file name should match the language name used by SyntaxHighlight GeSHi extension's. For example, JavaScript is, plus the file extension  , therefore. For a certain language, highlighting and validating rules are stored in the same JSON file, with highlighting rules defined in, and validating rules in.

Highlighting rules
Example: Each highlighting rule consists of a regex object, and a css class name.

Validating rules
Example: