]> gitweb.factorcode.org Git - factor.git/commitdiff
add orderd lists to farkup
authorDoug Coleman <doug.coleman@gmail.com>
Tue, 23 Sep 2008 01:05:06 +0000 (20:05 -0500)
committerDoug Coleman <doug.coleman@gmail.com>
Tue, 23 Sep 2008 01:05:06 +0000 (20:05 -0500)
basis/farkup/farkup-tests.factor
basis/farkup/farkup.factor

index 571d33335950adb867cde6b8f2419f055bbd10aa..1a0ab23af5033cb1ee6647ca28c44b7e3f80a802 100644 (file)
@@ -35,6 +35,14 @@ link-no-follow? off
 
 [ "<ul><li>foo</li>\n</ul><p>bar\n</p>" ] [ "-foo\nbar\n" convert-farkup ] unit-test
 
+[ "<ol><li>a-b</li></ol>" ] [ "#a-b" convert-farkup ] unit-test
+[ "<ol><li>foo</li></ol>" ] [ "#foo" convert-farkup ] unit-test
+[ "<ol><li>foo</li>\n</ol>" ] [ "#foo\n" convert-farkup ] unit-test
+[ "<ol><li>foo</li>\n<li>bar</li></ol>" ] [ "#foo\n#bar" convert-farkup ] unit-test
+[ "<ol><li>foo</li>\n<li>bar</li>\n</ol>" ] [ "#foo\n#bar\n" convert-farkup ] unit-test
+
+[ "<ol><li>foo</li>\n</ol><p>bar\n</p>" ] [ "#foo\nbar\n" convert-farkup ] unit-test
+
 
 [ "\n\n" ] [ "\n\n" convert-farkup ] unit-test
 [ "\n\n" ] [ "\r\n\r\n" convert-farkup ] unit-test
index cc56f48949dbb93cdb50c1cde6c6a21cfa58bb91..acd52f3cf87a077c977ec99c47991e01f24a3c94 100644 (file)
@@ -20,8 +20,10 @@ TUPLE: superscript child ;
 TUPLE: subscript child ;
 TUPLE: inline-code child ;
 TUPLE: paragraph child ;
-TUPLE: list-item child ;
-TUPLE: list child ;
+TUPLE: unordered-list-item child ;
+TUPLE: unordered-list child ;
+TUPLE: ordered-list-item child ;
+TUPLE: ordered-list child ;
 TUPLE: table child ;
 TUPLE: table-row child ;
 TUPLE: link href text ;
@@ -108,10 +110,19 @@ paragraph = ((paragraph-item nl => [[ first ]])+ nl+ => [[ first ]]
              | paragraph-item)
     => [[ paragraph boa ]]
 
-list-item      = '-' (cell | inline-tag)*
-    => [[ second list-item boa ]]
-list = ((list-item nl)+ list-item? | list-item)
-    => [[ list boa ]]
+list-item     = (cell | inline-tag)*
+
+ordered-list-item      = '#' list-item
+    => [[ second ordered-list-item boa ]]
+ordered-list = ((ordered-list-item nl)+ ordered-list-item? | ordered-list-item)
+    => [[ ordered-list boa ]]
+
+unordered-list-item    = '-' list-item
+    => [[ second unordered-list-item boa ]]
+unordered-list = ((unordered-list-item nl)+ unordered-list-item? | unordered-list-item)
+    => [[ unordered-list boa ]]
+
+list = ordered-list | unordered-list
 
 code       =  '[' (!('{' | nl | '[').)+ '{' (!("}]").)+ "}]"
     => [[ [ second >string ] [ fourth >string ] bi code boa ]]
@@ -176,8 +187,10 @@ M: emphasis (write-farkup) [ child>> (write-farkup) ] "em" in-tag. ;
 M: superscript (write-farkup) [ child>> (write-farkup) ] "sup" in-tag. ;
 M: subscript (write-farkup) [ child>> (write-farkup) ] "sub" in-tag. ;
 M: inline-code (write-farkup) [ child>> (write-farkup) ] "code" in-tag. ;
-M: list-item (write-farkup) [ child>> (write-farkup) ] "li" in-tag. ;
-M: list (write-farkup) [ child>> (write-farkup) ] "ul" in-tag. ;
+M: unordered-list-item (write-farkup) [ child>> (write-farkup) ] "li" in-tag. ;
+M: unordered-list (write-farkup) [ child>> (write-farkup) ] "ul" in-tag. ;
+M: ordered-list-item (write-farkup) [ child>> (write-farkup) ] "li" in-tag. ;
+M: ordered-list (write-farkup) [ child>> (write-farkup) ] "ol" in-tag. ;
 M: paragraph (write-farkup) [ child>> (write-farkup) ] "p" in-tag. ;
 M: link (write-farkup) [ href>> ] [ text>> ] bi write-link ;
 M: image (write-farkup) [ href>> ] [ text>> ] bi write-image-link ;