X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=tests%2Ftibdoc.g;h=218274b0649717a0e7844c602aff49d619d0d0d5;hb=f22d53e6ae3581e6c2dc096fd0cf93c18e2d2538;hp=216a77ce647dd9ac70a67f31e8eadb87a4667073;hpb=2177e4743ea680e24f0cc0525185e8f95d0dd41b;p=sbp.git diff --git a/tests/tibdoc.g b/tests/tibdoc.g index 216a77c..218274b 100644 --- a/tests/tibdoc.g +++ b/tests/tibdoc.g @@ -56,46 +56,46 @@ nw = ~[\r\n\ ] s = Doc -Doc = Doc:: head:{Header} body:Body /ws -Header = Header:: "header" attrs:{ kv */ ws } /ws -Body = Body:: sections:(Section*/ws) -Section = { Section:: header:SectionHeader paragraphs:Paragraph* /ws } +Doc = head:{Header} body:Body /ws +Header = "header" attrs:{ KeyVal */ ws } /ws +Body = {Section}*/ws +Section = SectionHeader Paragraphs /ws SectionHeader = "==" SectionHeaderBody "==" SectionHeaderBody = "=" SectionHeaderBody "=" - > !ws (Chars:: text:alphanum++) !ws + > !ws alphanum++ !ws sp = " "** blank = !sp "\n" !sp "\n" !ws - -kv = kv:: key:word "=" val:text /ws +KeyVal = key:word "=" val:text /ws wp = w++ num = [0-9]++ -Paragraph = Blockquote:: { "\"\" " text } - > HR:: { "---" "-"* } - > { P:: t:text } +Paragraphs = "[]":: { Blockquote:: "\"\" " text } Paragraphs + > "[]":: { HR:: "---" "-"* } Paragraphs + > "[]":: { P:: text } Paragraphs + > () onums = nums !(". "|") ") any = ~[]* -uli = "* " (!ws text &~ any (oli|uli)) -oli = !("# "|onums) (!ws text &~ any (oli|uli)) +uli = "* " (!ws text &~ any !(oli|uli)) +oli = !("# "|onums) (!ws text &~ any !(oli|uli)) text = Item Itemx = !ws Item | () Item = blockquote - > "[]":: { UL:: uli+/ws } Itemx - | "[]":: { OL:: oli+/ws } Itemx - > "[]":: pre Itemx - > "[]":: link Itemx - > "[]":: structured Itemx - > "[]":: styled Itemx - > "[]":: (Chars:: text:alphanum++) Itemx - > "[]":: "\"" text "\"" Itemx - > "[]":: symbol Itemx - > "[]":: (Symbol:: sym++) Itemx - > "[]":: Paragraph Itemx + > "[]":: { UL:: uli+/ws } Itemx + | "[]":: { OL:: oli+/ws } Itemx + > "[]":: pre Itemx + > "[]":: link Itemx + > "[]":: structured Itemx + > "[]":: styled Itemx + > "[]":: (Chars:: text:alphanum++) Itemx + > "[]":: "\"" text "\"" Itemx +// > "[]":: symbol Itemx + > "[]":: (Symbol:: sym++) Itemx +// > "[]":: Paragraph Itemx blockquote = Blockquote:: "\"\"" text "\"\"" | Blockquote:: "\"\"" block @@ -116,15 +116,15 @@ styled = Underline:: "__" text "__" block = { text } -link = Link:: text:({ text }) "->" href:(url|email) - > Link:: text:alphanum++ !ws "->" href:(url|email) +link = Link:: text:({ text }) "->" href:(url|email) + > Link:: text:alphanum++ !ws "->" href:(url|email) -structured = command & "\\" [a-zA-Z0-9]++ block? +structured = command & "\\" !([a-zA-Z0-9]++) block? > glyph > email > url -glyph = Euro:: "(e)" | "(r)" | "(c)" | "(tm)" | "--" | "..." +glyph = Euro:: "(e)" | "(r)" | "(c)" | "(tm)" | emdash:: "--" | "..." command = Today:: "\\today" | LineBreak:: "\\br"