X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=tests%2Ftibdoc.g;h=b3b107eb01a52e48a89e53ebdef0b148172a7b1c;hp=072c62501f3d7ac241399ad23e42298860c5756f;hb=22a2ca7685dcf29e9ddcc6e26443ea0277385fca;hpb=d948b6363742aa34d9269cb4a49407e439ee896d diff --git a/tests/tibdoc.g b/tests/tibdoc.g index 072c625..b3b107e 100644 --- a/tests/tibdoc.g +++ b/tests/tibdoc.g @@ -63,7 +63,7 @@ Body = { Section } */ws Section = SectionHeader ws! Paragraph* SectionHeader = "==" SectionHeaderBody "==" SectionHeaderBody = "=" SectionHeaderBody "=" - > ws! alphanum++ ws! + > ws! text ws! sp = " "** blank = sp! "\n" sp! "\n" ws! @@ -74,7 +74,8 @@ num = [0-9]++ Paragraph = { Blockquote:: "\"\" " text } > HR:: { "---" "-"* } - > P:: { text } + > { OL:: (text &~ (text! ws! {oli}+)) ws! {oli}+ } + > P:: { text } onums = nums (". "|") ")! any = ~[]* @@ -87,15 +88,13 @@ text = Item Item*/ws = blockquote // > ^"#" ws! { ~[]* } - > { UL:: uli+/ws } - | { OL:: oli+/ws } > Verbatim > InlineGrammar > link > structured > styled > (Chars:: alphanum++) - > "\"" text "\"" + > Quotes:: "\"" text "\"" > (Symbol:: sym++) > { Block:: text } @@ -123,7 +122,8 @@ styled = Underline:: "__" text "__" block = { text } -link = text:({ text }|word) "->" href:(url|email) +link = text:({ text }|word) "->" ws! href:href +href = url | email | {href} structured = command & "\\" ([a-zA-Z0-9]++)! block? > glyph @@ -140,6 +140,7 @@ glyph = euro:: "(e)" command = "\\" [a-z]++ + // URLs ////////////////////////////////////////////////////////////////////////////// // interesting opportunity to show off boolean grammars here: define other @@ -161,7 +162,8 @@ url = Mailto:: "mailto" ":" email -> ~urlv host:host port:(":" nums)? path:("/" urlpath)? - -> ~urlv + ref:("#" urlpath)? + -> ~(urlv|[\#]) url_login = Login:: username:username password:(":" password) "@" method = [+\-.a-z0-9]+ domain = (part +/ ".") -> ~"."