1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
<?php
/**
* Define various types of modes used by the parser - they are used to
* populate the list of modes another mode accepts
*
* @todo these should be moved to class constants or a generator method
*/
global $PARSER_MODES;
$PARSER_MODES = [
// containers are complex modes that can contain many other modes
// hr breaks the principle but they shouldn't be used in tables / lists
// so they are put here
'container' => ['listblock', 'table', 'quote', 'hr'],
// some mode are allowed inside the base mode only
'baseonly' => ['header'],
// modes for styling text -- footnote behaves similar to styling
'formatting' => [
'strong', 'emphasis', 'underline', 'monospace', 'subscript', 'superscript', 'deleted', 'footnote'
],
// modes where the token is simply replaced - they can not contain any
// other modes
'substition' => [
'acronym', 'smiley', 'wordblock', 'entity', 'camelcaselink', 'internallink', 'media', 'externallink',
'linebreak', 'emaillink', 'windowssharelink', 'filelink', 'notoc', 'nocache', 'multiplyentity', 'quotes', 'rss'
],
// modes which have a start and end token but inside which
// no other modes should be applied
'protected' => ['preformatted', 'code', 'file'],
// inside this mode no wiki markup should be applied but lineendings
// and whitespace isn't preserved
'disabled' => ['unformatted'],
// used to mark paragraph boundaries
'paragraphs' => ['eol'],
];
|