Checkpoint: working parsing
This commit is contained in:
@@ -1,27 +1,27 @@
|
||||
var mediawiki = {
|
||||
'b': [rr.Literal("'''"), rr.Ref('wikichunk'), rr.Literal("'''")],
|
||||
'del': [rr.Literal('<strike>'), rr.Ref('wikichunk'), rr.Literal('</strike>')],
|
||||
'h2': [rr.StartOfLine(), rr.Literal('== '), rr.SingleLineText(), rr.Literal(' =='), rr.EndOfLine()],
|
||||
'h3': [rr.StartOfLine(), rr.Literal('=== '), rr.SingleLineText(), rr.Literal(' ==='), rr.EndOfLine()],
|
||||
'h4': [rr.StartOfLine(), rr.Literal('==== '), rr.SingleLineText(), rr.Literal(' ===='), rr.EndOfLine()],
|
||||
'h5': [rr.StartOfLine(), rr.Literal('===== '), rr.SingleLineText(), rr.Literal(' ====='), rr.EndOfLine()],
|
||||
'h6': [rr.StartOfLine(), rr.Literal('====== '), rr.SingleLineText(), rr.Literal(' ======'), rr.EndOfLine()],
|
||||
'hr': [rr.StartOfLine(), rr.Literal('----'), rr.EndOfLine()],
|
||||
'i': [rr.Literal("''"), rr.Ref('wikichunk'), rr.Literal("''")],
|
||||
'nowiki': [rr.Literal('<nowiki>'), rr.MultiLineText(), rr.Literal('</nowiki>')],
|
||||
'text': [rr.MultiLineText()],
|
||||
'wikichunk': [rr.Or(
|
||||
// 'b',
|
||||
// 'del',
|
||||
// 'h2',
|
||||
'h3',
|
||||
// 'h4',
|
||||
// 'h5',
|
||||
// 'h6',
|
||||
// 'hr',
|
||||
// 'i',
|
||||
// 'nowiki',
|
||||
'text'
|
||||
)],
|
||||
'wikidoc': [rr.ZeroOrMore('wikichunk')],
|
||||
'b': rr.Node('b', rr.Sequence(rr.Literal("'''"), rr.Ref('wikichunk'), rr.Literal("'''"))),
|
||||
'del': rr.Sequence(rr.Literal('<strike>'), rr.Ref('wikichunk'), rr.Literal('</strike>')),
|
||||
'h2': rr.Sequence(rr.StartOfLine(), rr.Literal('== '), rr.SingleLineText(), rr.Literal(' =='), rr.EndOfLine()),
|
||||
'h3': rr.Node('h3', rr.Sequence(rr.StartOfLine(), rr.Literal('=== '), rr.SingleLineText(), rr.Literal(' ==='), rr.EndOfLine())),
|
||||
'h4': rr.Sequence(rr.StartOfLine(), rr.Literal('==== '), rr.SingleLineText(), rr.Literal(' ===='), rr.EndOfLine()),
|
||||
'h5': rr.Sequence(rr.StartOfLine(), rr.Literal('===== '), rr.SingleLineText(), rr.Literal(' ====='), rr.EndOfLine()),
|
||||
'h6': rr.Sequence(rr.StartOfLine(), rr.Literal('====== '), rr.SingleLineText(), rr.Literal(' ======'), rr.EndOfLine()),
|
||||
'hr': rr.Sequence(rr.StartOfLine(), rr.Literal('----'), rr.EndOfLine()),
|
||||
'i': rr.Sequence(rr.Literal("''"), rr.Ref('wikichunk'), rr.Literal("''")),
|
||||
'nowiki': rr.Sequence(rr.Literal('<nowiki>'), rr.MultiLineText(), rr.Literal('</nowiki>')),
|
||||
'text': rr.MultiLineText(),
|
||||
'wikichunk': rr.Or(
|
||||
rr.Ref('b'),
|
||||
rr.Ref('del'),
|
||||
rr.Ref('h2'),
|
||||
rr.Ref('h3'),
|
||||
rr.Ref('h4'),
|
||||
rr.Ref('h5'),
|
||||
rr.Ref('h6'),
|
||||
rr.Ref('hr'),
|
||||
rr.Ref('i'),
|
||||
rr.Ref('nowiki'),
|
||||
rr.Ref('text')
|
||||
),
|
||||
'wikidoc': rr.Node('wikidoc', rr.ZeroOrMore(rr.Ref('wikichunk'))),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user