rpeg-multimarkdown2 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. data/LICENSE +96 -0
  2. data/README.markdown +52 -0
  3. data/Rakefile +167 -0
  4. data/bin/rpeg-multimarkdown2 +128 -0
  5. data/ext/extconf.h +3 -0
  6. data/ext/extconf.rb +15 -0
  7. data/ext/markdown.c +102 -0
  8. data/ext/markdown_lib.c +265 -0
  9. data/ext/markdown_lib.h +33 -0
  10. data/ext/markdown_output.c +2832 -0
  11. data/ext/markdown_parser.c +9091 -0
  12. data/ext/markdown_peg.h +144 -0
  13. data/ext/odf.c +183 -0
  14. data/ext/odf.h +3 -0
  15. data/ext/parsing_functions.c +199 -0
  16. data/ext/utility_functions.c +566 -0
  17. data/lib/multimarkdown2.rb +1 -0
  18. data/lib/peg_multimarkdown.rb +74 -0
  19. data/test/MultiMarkdownTest/BeamerTests/Beamer-Tables.html +76 -0
  20. data/test/MultiMarkdownTest/BeamerTests/Beamer-Tables.tex +64 -0
  21. data/test/MultiMarkdownTest/BeamerTests/Beamer-Tables.text +38 -0
  22. data/test/MultiMarkdownTest/CompatibilityTests/Automatic Labels.html +35 -0
  23. data/test/MultiMarkdownTest/CompatibilityTests/Automatic Labels.text +45 -0
  24. data/test/MultiMarkdownTest/CompatibilityTests/Base Header Level.html +14 -0
  25. data/test/MultiMarkdownTest/CompatibilityTests/Base Header Level.text +16 -0
  26. data/test/MultiMarkdownTest/CompatibilityTests/BibTeX.html +9 -0
  27. data/test/MultiMarkdownTest/CompatibilityTests/BibTeX.text +10 -0
  28. data/test/MultiMarkdownTest/CompatibilityTests/Citations.html +40 -0
  29. data/test/MultiMarkdownTest/CompatibilityTests/Citations.text +42 -0
  30. data/test/MultiMarkdownTest/CompatibilityTests/Definition Lists.html +40 -0
  31. data/test/MultiMarkdownTest/CompatibilityTests/Definition Lists.text +39 -0
  32. data/test/MultiMarkdownTest/CompatibilityTests/Dutch.html +17 -0
  33. data/test/MultiMarkdownTest/CompatibilityTests/Dutch.text +17 -0
  34. data/test/MultiMarkdownTest/CompatibilityTests/Email.html +40 -0
  35. data/test/MultiMarkdownTest/CompatibilityTests/Email.text +31 -0
  36. data/test/MultiMarkdownTest/CompatibilityTests/English.html +17 -0
  37. data/test/MultiMarkdownTest/CompatibilityTests/English.text +17 -0
  38. data/test/MultiMarkdownTest/CompatibilityTests/Errors.html +9 -0
  39. data/test/MultiMarkdownTest/CompatibilityTests/Errors.text +11 -0
  40. data/test/MultiMarkdownTest/CompatibilityTests/Footnotes.html +23 -0
  41. data/test/MultiMarkdownTest/CompatibilityTests/Footnotes.text +25 -0
  42. data/test/MultiMarkdownTest/CompatibilityTests/French.html +17 -0
  43. data/test/MultiMarkdownTest/CompatibilityTests/French.text +17 -0
  44. data/test/MultiMarkdownTest/CompatibilityTests/German.html +17 -0
  45. data/test/MultiMarkdownTest/CompatibilityTests/German.text +17 -0
  46. data/test/MultiMarkdownTest/CompatibilityTests/GermanGuillemets.html +17 -0
  47. data/test/MultiMarkdownTest/CompatibilityTests/GermanGuillemets.text +17 -0
  48. data/test/MultiMarkdownTest/CompatibilityTests/Glossary.html +29 -0
  49. data/test/MultiMarkdownTest/CompatibilityTests/Glossary.text +28 -0
  50. data/test/MultiMarkdownTest/CompatibilityTests/Headers.html +42 -0
  51. data/test/MultiMarkdownTest/CompatibilityTests/Headers.text +51 -0
  52. data/test/MultiMarkdownTest/CompatibilityTests/Line Breaks.html +13 -0
  53. data/test/MultiMarkdownTest/CompatibilityTests/Line Breaks.text +15 -0
  54. data/test/MultiMarkdownTest/CompatibilityTests/Link Attributes.html +35 -0
  55. data/test/MultiMarkdownTest/CompatibilityTests/Link Attributes.text +51 -0
  56. data/test/MultiMarkdownTest/CompatibilityTests/List Parsing.html +13 -0
  57. data/test/MultiMarkdownTest/CompatibilityTests/List Parsing.text +11 -0
  58. data/test/MultiMarkdownTest/CompatibilityTests/MarkdownInHTML.html +13 -0
  59. data/test/MultiMarkdownTest/CompatibilityTests/MarkdownInHTML.text +19 -0
  60. data/test/MultiMarkdownTest/CompatibilityTests/Math.html +14 -0
  61. data/test/MultiMarkdownTest/CompatibilityTests/Math.text +15 -0
  62. data/test/MultiMarkdownTest/CompatibilityTests/MetaData.html +14 -0
  63. data/test/MultiMarkdownTest/CompatibilityTests/MetaData.text +14 -0
  64. data/test/MultiMarkdownTest/CompatibilityTests/NotMetaData.html +3 -0
  65. data/test/MultiMarkdownTest/CompatibilityTests/NotMetaData.text +4 -0
  66. data/test/MultiMarkdownTest/CompatibilityTests/Sanity.html +77 -0
  67. data/test/MultiMarkdownTest/CompatibilityTests/Sanity.text +77 -0
  68. data/test/MultiMarkdownTest/CompatibilityTests/SmartQuotes.html +22 -0
  69. data/test/MultiMarkdownTest/CompatibilityTests/SmartQuotes.text +22 -0
  70. data/test/MultiMarkdownTest/CompatibilityTests/Swedish.html +17 -0
  71. data/test/MultiMarkdownTest/CompatibilityTests/Swedish.text +17 -0
  72. data/test/MultiMarkdownTest/CompatibilityTests/Tables.html +65 -0
  73. data/test/MultiMarkdownTest/CompatibilityTests/Tables.text +71 -0
  74. data/test/MultiMarkdownTest/MarkdownTest.pl +182 -0
  75. data/test/MultiMarkdownTest/MemoirTests/Automatic Labels.html +42 -0
  76. data/test/MultiMarkdownTest/MemoirTests/Automatic Labels.tex +47 -0
  77. data/test/MultiMarkdownTest/MemoirTests/Automatic Labels.text +46 -0
  78. data/test/MultiMarkdownTest/MemoirTests/Base Header Level.html +20 -0
  79. data/test/MultiMarkdownTest/MemoirTests/Base Header Level.tex +19 -0
  80. data/test/MultiMarkdownTest/MemoirTests/Base Header Level.text +16 -0
  81. data/test/MultiMarkdownTest/MemoirTests/BibTeX.html +17 -0
  82. data/test/MultiMarkdownTest/MemoirTests/BibTeX.tex +12 -0
  83. data/test/MultiMarkdownTest/MemoirTests/BibTeX.text +11 -0
  84. data/test/MultiMarkdownTest/MemoirTests/Citations.html +63 -0
  85. data/test/MultiMarkdownTest/MemoirTests/Citations.tex +48 -0
  86. data/test/MultiMarkdownTest/MemoirTests/Citations.text +43 -0
  87. data/test/MultiMarkdownTest/MemoirTests/Definition Lists.html +61 -0
  88. data/test/MultiMarkdownTest/MemoirTests/Definition Lists.tex +58 -0
  89. data/test/MultiMarkdownTest/MemoirTests/Definition Lists.text +40 -0
  90. data/test/MultiMarkdownTest/MemoirTests/Dutch.html +23 -0
  91. data/test/MultiMarkdownTest/MemoirTests/Dutch.tex +18 -0
  92. data/test/MultiMarkdownTest/MemoirTests/Dutch.text +17 -0
  93. data/test/MultiMarkdownTest/MemoirTests/Email.html +48 -0
  94. data/test/MultiMarkdownTest/MemoirTests/Email.tex +61 -0
  95. data/test/MultiMarkdownTest/MemoirTests/Email.text +32 -0
  96. data/test/MultiMarkdownTest/MemoirTests/English.html +23 -0
  97. data/test/MultiMarkdownTest/MemoirTests/English.tex +18 -0
  98. data/test/MultiMarkdownTest/MemoirTests/English.text +17 -0
  99. data/test/MultiMarkdownTest/MemoirTests/Footnotes.html +47 -0
  100. data/test/MultiMarkdownTest/MemoirTests/Footnotes.tex +28 -0
  101. data/test/MultiMarkdownTest/MemoirTests/Footnotes.text +26 -0
  102. data/test/MultiMarkdownTest/MemoirTests/French.html +23 -0
  103. data/test/MultiMarkdownTest/MemoirTests/French.tex +18 -0
  104. data/test/MultiMarkdownTest/MemoirTests/French.text +17 -0
  105. data/test/MultiMarkdownTest/MemoirTests/German.html +23 -0
  106. data/test/MultiMarkdownTest/MemoirTests/German.tex +18 -0
  107. data/test/MultiMarkdownTest/MemoirTests/German.text +17 -0
  108. data/test/MultiMarkdownTest/MemoirTests/GermanGuillemets.html +23 -0
  109. data/test/MultiMarkdownTest/MemoirTests/GermanGuillemets.tex +18 -0
  110. data/test/MultiMarkdownTest/MemoirTests/GermanGuillemets.text +17 -0
  111. data/test/MultiMarkdownTest/MemoirTests/Glossary.html +47 -0
  112. data/test/MultiMarkdownTest/MemoirTests/Glossary.tex +30 -0
  113. data/test/MultiMarkdownTest/MemoirTests/Glossary.text +29 -0
  114. data/test/MultiMarkdownTest/MemoirTests/Line Breaks.html +21 -0
  115. data/test/MultiMarkdownTest/MemoirTests/Line Breaks.tex +16 -0
  116. data/test/MultiMarkdownTest/MemoirTests/Line Breaks.text +16 -0
  117. data/test/MultiMarkdownTest/MemoirTests/Link Attributes.html +40 -0
  118. data/test/MultiMarkdownTest/MemoirTests/Link Attributes.tex +61 -0
  119. data/test/MultiMarkdownTest/MemoirTests/Link Attributes.text +51 -0
  120. data/test/MultiMarkdownTest/MemoirTests/Math.html +22 -0
  121. data/test/MultiMarkdownTest/MemoirTests/Math.tex +16 -0
  122. data/test/MultiMarkdownTest/MemoirTests/Math.text +16 -0
  123. data/test/MultiMarkdownTest/MemoirTests/Memoir Mode.html +24 -0
  124. data/test/MultiMarkdownTest/MemoirTests/Memoir Mode.tex +23 -0
  125. data/test/MultiMarkdownTest/MemoirTests/Memoir Mode.text +20 -0
  126. data/test/MultiMarkdownTest/MemoirTests/MetaData.html +22 -0
  127. data/test/MultiMarkdownTest/MemoirTests/MetaData.tex +14 -0
  128. data/test/MultiMarkdownTest/MemoirTests/MetaData.text +15 -0
  129. data/test/MultiMarkdownTest/MemoirTests/Sanity.html +100 -0
  130. data/test/MultiMarkdownTest/MemoirTests/Sanity.tex +101 -0
  131. data/test/MultiMarkdownTest/MemoirTests/Sanity.text +78 -0
  132. data/test/MultiMarkdownTest/MemoirTests/SmartQuotes.html +26 -0
  133. data/test/MultiMarkdownTest/MemoirTests/SmartQuotes.tex +21 -0
  134. data/test/MultiMarkdownTest/MemoirTests/SmartQuotes.text +19 -0
  135. data/test/MultiMarkdownTest/MemoirTests/Swedish.html +23 -0
  136. data/test/MultiMarkdownTest/MemoirTests/Swedish.tex +18 -0
  137. data/test/MultiMarkdownTest/MemoirTests/Swedish.text +17 -0
  138. data/test/MultiMarkdownTest/MemoirTests/Tables.html +221 -0
  139. data/test/MultiMarkdownTest/MemoirTests/Tables.tex +134 -0
  140. data/test/MultiMarkdownTest/MemoirTests/Tables.text +64 -0
  141. data/test/MultiMarkdownTest/MultiMarkdownTests/Automatic Labels.html +43 -0
  142. data/test/MultiMarkdownTest/MultiMarkdownTests/Automatic Labels.tex +46 -0
  143. data/test/MultiMarkdownTest/MultiMarkdownTests/Automatic Labels.text +45 -0
  144. data/test/MultiMarkdownTest/MultiMarkdownTests/Base Header Level.html +22 -0
  145. data/test/MultiMarkdownTest/MultiMarkdownTests/Base Header Level.tex +19 -0
  146. data/test/MultiMarkdownTest/MultiMarkdownTests/Base Header Level.text +16 -0
  147. data/test/MultiMarkdownTest/MultiMarkdownTests/BibTeX.html +18 -0
  148. data/test/MultiMarkdownTest/MultiMarkdownTests/BibTeX.tex +11 -0
  149. data/test/MultiMarkdownTest/MultiMarkdownTests/BibTex.text +10 -0
  150. data/test/MultiMarkdownTest/MultiMarkdownTests/Citations.html +64 -0
  151. data/test/MultiMarkdownTest/MultiMarkdownTests/Citations.tex +47 -0
  152. data/test/MultiMarkdownTest/MultiMarkdownTests/Citations.text +42 -0
  153. data/test/MultiMarkdownTest/MultiMarkdownTests/Definition Lists.html +57 -0
  154. data/test/MultiMarkdownTest/MultiMarkdownTests/Definition Lists.tex +57 -0
  155. data/test/MultiMarkdownTest/MultiMarkdownTests/Definition Lists.text +39 -0
  156. data/test/MultiMarkdownTest/MultiMarkdownTests/Dutch.html +25 -0
  157. data/test/MultiMarkdownTest/MultiMarkdownTests/Dutch.tex +18 -0
  158. data/test/MultiMarkdownTest/MultiMarkdownTests/Dutch.text +17 -0
  159. data/test/MultiMarkdownTest/MultiMarkdownTests/Email.html +49 -0
  160. data/test/MultiMarkdownTest/MultiMarkdownTests/Email.tex +54 -0
  161. data/test/MultiMarkdownTest/MultiMarkdownTests/Email.text +31 -0
  162. data/test/MultiMarkdownTest/MultiMarkdownTests/English.html +25 -0
  163. data/test/MultiMarkdownTest/MultiMarkdownTests/English.tex +18 -0
  164. data/test/MultiMarkdownTest/MultiMarkdownTests/English.text +17 -0
  165. data/test/MultiMarkdownTest/MultiMarkdownTests/Errors.html +18 -0
  166. data/test/MultiMarkdownTest/MultiMarkdownTests/Errors.tex +11 -0
  167. data/test/MultiMarkdownTest/MultiMarkdownTests/Errors.text +11 -0
  168. data/test/MultiMarkdownTest/MultiMarkdownTests/Footnotes.html +48 -0
  169. data/test/MultiMarkdownTest/MultiMarkdownTests/Footnotes.tex +24 -0
  170. data/test/MultiMarkdownTest/MultiMarkdownTests/Footnotes.text +25 -0
  171. data/test/MultiMarkdownTest/MultiMarkdownTests/French.html +25 -0
  172. data/test/MultiMarkdownTest/MultiMarkdownTests/French.tex +18 -0
  173. data/test/MultiMarkdownTest/MultiMarkdownTests/French.text +17 -0
  174. data/test/MultiMarkdownTest/MultiMarkdownTests/German.html +25 -0
  175. data/test/MultiMarkdownTest/MultiMarkdownTests/German.tex +18 -0
  176. data/test/MultiMarkdownTest/MultiMarkdownTests/German.text +17 -0
  177. data/test/MultiMarkdownTest/MultiMarkdownTests/GermanGuillemets.html +25 -0
  178. data/test/MultiMarkdownTest/MultiMarkdownTests/GermanGuillemets.tex +18 -0
  179. data/test/MultiMarkdownTest/MultiMarkdownTests/GermanGuillemets.text +17 -0
  180. data/test/MultiMarkdownTest/MultiMarkdownTests/Glossary.html +48 -0
  181. data/test/MultiMarkdownTest/MultiMarkdownTests/Glossary.tex +26 -0
  182. data/test/MultiMarkdownTest/MultiMarkdownTests/Glossary.text +28 -0
  183. data/test/MultiMarkdownTest/MultiMarkdownTests/Headers.html +50 -0
  184. data/test/MultiMarkdownTest/MultiMarkdownTests/Headers.tex +54 -0
  185. data/test/MultiMarkdownTest/MultiMarkdownTests/Headers.text +51 -0
  186. data/test/MultiMarkdownTest/MultiMarkdownTests/Line Breaks.html +22 -0
  187. data/test/MultiMarkdownTest/MultiMarkdownTests/Line Breaks.tex +15 -0
  188. data/test/MultiMarkdownTest/MultiMarkdownTests/Line Breaks.text +15 -0
  189. data/test/MultiMarkdownTest/MultiMarkdownTests/Link Attributes.html +56 -0
  190. data/test/MultiMarkdownTest/MultiMarkdownTests/Link Attributes.tex +60 -0
  191. data/test/MultiMarkdownTest/MultiMarkdownTests/Link Attributes.text +50 -0
  192. data/test/MultiMarkdownTest/MultiMarkdownTests/List Parsing.html +22 -0
  193. data/test/MultiMarkdownTest/MultiMarkdownTests/List Parsing.tex +17 -0
  194. data/test/MultiMarkdownTest/MultiMarkdownTests/List Parsing.text +11 -0
  195. data/test/MultiMarkdownTest/MultiMarkdownTests/MarkdownInHTML.html +21 -0
  196. data/test/MultiMarkdownTest/MultiMarkdownTests/MarkdownInHTML.tex +13 -0
  197. data/test/MultiMarkdownTest/MultiMarkdownTests/MarkdownInHTML.text +19 -0
  198. data/test/MultiMarkdownTest/MultiMarkdownTests/Math.html +23 -0
  199. data/test/MultiMarkdownTest/MultiMarkdownTests/Math.tex +15 -0
  200. data/test/MultiMarkdownTest/MultiMarkdownTests/Math.text +15 -0
  201. data/test/MultiMarkdownTest/MultiMarkdownTests/MetaData.html +23 -0
  202. data/test/MultiMarkdownTest/MultiMarkdownTests/MetaData.tex +13 -0
  203. data/test/MultiMarkdownTest/MultiMarkdownTests/MetaData.text +14 -0
  204. data/test/MultiMarkdownTest/MultiMarkdownTests/NotMetaData.html +3 -0
  205. data/test/MultiMarkdownTest/MultiMarkdownTests/NotMetaData.tex +3 -0
  206. data/test/MultiMarkdownTest/MultiMarkdownTests/NotMetaData.text +4 -0
  207. data/test/MultiMarkdownTest/MultiMarkdownTests/Sanity.html +106 -0
  208. data/test/MultiMarkdownTest/MultiMarkdownTests/Sanity.tex +100 -0
  209. data/test/MultiMarkdownTest/MultiMarkdownTests/Sanity.text +77 -0
  210. data/test/MultiMarkdownTest/MultiMarkdownTests/SmartQuotes.html +31 -0
  211. data/test/MultiMarkdownTest/MultiMarkdownTests/SmartQuotes.tex +24 -0
  212. data/test/MultiMarkdownTest/MultiMarkdownTests/SmartQuotes.text +22 -0
  213. data/test/MultiMarkdownTest/MultiMarkdownTests/Swedish.html +25 -0
  214. data/test/MultiMarkdownTest/MultiMarkdownTests/Swedish.tex +18 -0
  215. data/test/MultiMarkdownTest/MultiMarkdownTests/Swedish.text +17 -0
  216. data/test/MultiMarkdownTest/MultiMarkdownTests/Tables.html +273 -0
  217. data/test/MultiMarkdownTest/MultiMarkdownTests/Tables.tex +155 -0
  218. data/test/MultiMarkdownTest/MultiMarkdownTests/Tables.text +71 -0
  219. data/test/MultiMarkdownTest/MultiMarkdownTests/bibtex.bib +119 -0
  220. data/test/MultiMarkdownTest/README.md +58 -0
  221. data/test/MultiMarkdownTest/Tests/Amps and angle encoding.html +17 -0
  222. data/test/MultiMarkdownTest/Tests/Amps and angle encoding.text +21 -0
  223. data/test/MultiMarkdownTest/Tests/Auto links.html +18 -0
  224. data/test/MultiMarkdownTest/Tests/Auto links.text +13 -0
  225. data/test/MultiMarkdownTest/Tests/Backslash escapes.html +118 -0
  226. data/test/MultiMarkdownTest/Tests/Backslash escapes.text +120 -0
  227. data/test/MultiMarkdownTest/Tests/Blockquotes with code blocks.html +15 -0
  228. data/test/MultiMarkdownTest/Tests/Blockquotes with code blocks.text +11 -0
  229. data/test/MultiMarkdownTest/Tests/Code Blocks.html +18 -0
  230. data/test/MultiMarkdownTest/Tests/Code Blocks.text +14 -0
  231. data/test/MultiMarkdownTest/Tests/Code Spans.html +6 -0
  232. data/test/MultiMarkdownTest/Tests/Code Spans.text +6 -0
  233. data/test/MultiMarkdownTest/Tests/Compatibility.html +5 -0
  234. data/test/MultiMarkdownTest/Tests/Compatibility.text +9 -0
  235. data/test/MultiMarkdownTest/Tests/Hard-wrapped paragraphs with list-like lines.html +8 -0
  236. data/test/MultiMarkdownTest/Tests/Hard-wrapped paragraphs with list-like lines.text +8 -0
  237. data/test/MultiMarkdownTest/Tests/Horizontal rules.html +71 -0
  238. data/test/MultiMarkdownTest/Tests/Horizontal rules.text +67 -0
  239. data/test/MultiMarkdownTest/Tests/Inline HTML (Advanced).html +15 -0
  240. data/test/MultiMarkdownTest/Tests/Inline HTML (Advanced).text +15 -0
  241. data/test/MultiMarkdownTest/Tests/Inline HTML (Simple).html +72 -0
  242. data/test/MultiMarkdownTest/Tests/Inline HTML (Simple).text +69 -0
  243. data/test/MultiMarkdownTest/Tests/Inline HTML comments.html +13 -0
  244. data/test/MultiMarkdownTest/Tests/Inline HTML comments.text +13 -0
  245. data/test/MultiMarkdownTest/Tests/Links, inline style.html +11 -0
  246. data/test/MultiMarkdownTest/Tests/Links, inline style.text +12 -0
  247. data/test/MultiMarkdownTest/Tests/Links, reference style.html +52 -0
  248. data/test/MultiMarkdownTest/Tests/Links, reference style.text +71 -0
  249. data/test/MultiMarkdownTest/Tests/Links, shortcut references.html +9 -0
  250. data/test/MultiMarkdownTest/Tests/Links, shortcut references.text +20 -0
  251. data/test/MultiMarkdownTest/Tests/Literal quotes in titles.html +3 -0
  252. data/test/MultiMarkdownTest/Tests/Literal quotes in titles.text +7 -0
  253. data/test/MultiMarkdownTest/Tests/Markdown Documentation - Basics.html +314 -0
  254. data/test/MultiMarkdownTest/Tests/Markdown Documentation - Basics.text +306 -0
  255. data/test/MultiMarkdownTest/Tests/Markdown Documentation - Syntax.html +942 -0
  256. data/test/MultiMarkdownTest/Tests/Markdown Documentation - Syntax.text +888 -0
  257. data/test/MultiMarkdownTest/Tests/Nested blockquotes.html +9 -0
  258. data/test/MultiMarkdownTest/Tests/Nested blockquotes.text +5 -0
  259. data/test/MultiMarkdownTest/Tests/Ordered and unordered lists.html +148 -0
  260. data/test/MultiMarkdownTest/Tests/Ordered and unordered lists.text +131 -0
  261. data/test/MultiMarkdownTest/Tests/Strong and em together.html +7 -0
  262. data/test/MultiMarkdownTest/Tests/Strong and em together.text +7 -0
  263. data/test/MultiMarkdownTest/Tests/Tabs.html +25 -0
  264. data/test/MultiMarkdownTest/Tests/Tabs.text +21 -0
  265. data/test/MultiMarkdownTest/Tests/Tidyness.html +8 -0
  266. data/test/MultiMarkdownTest/Tests/Tidyness.text +5 -0
  267. data/test/benchmark.rb +49 -0
  268. data/test/multimarkdown_test.rb +89 -0
  269. metadata +318 -0
@@ -0,0 +1,119 @@
1
+ %% This BibTeX bibliography file was created using BibDesk.
2
+ %% http://bibdesk.sourceforge.net/
3
+
4
+
5
+ %% Created for Fletcher T. Penney at 2011-01-22 19:03:16 -0500
6
+
7
+
8
+ %% Saved with string encoding Unicode (UTF-8)
9
+
10
+
11
+
12
+ @book{Knuth:1981,
13
+ Address = {Reading, Mass.},
14
+ Annote = {LDR 00912cam 2200253 4500
15
+ 001 3613158
16
+ 005 19990107112758.5
17
+ 008 740603m19731981maua b 001 0 eng
18
+ 035 $9(DLC) 73001830
19
+ 906 $a7$bcbc$corignew$d2$eocip$f19$gy-gencatlg
20
+ 010 $a 73001830
21
+ 020 $a0201038099 (v. 1)
22
+ 040 $aDLC$cDLC$dDLC
23
+ 050 00 $aQA76.6$b.K64
24
+ 082 00 $a001.6/42
25
+ 100 1 $aKnuth, Donald Ervin,$d1938-
26
+ 245 14 $aThe art of computer programming /$cDonald E. Knuth.
27
+ 260 $aReading, Mass. :$bAddison-Wesley Pub. Co.,$cc1973-c1981.
28
+ 300 $a2 v. :$bill. ;$c25 cm.
29
+ 440 0 $aAddison-Wesley series in computer science and information processing
30
+ 504 $aIncludes bibliographical references and indexes.
31
+ 505 0 $av. 1. Fundamental algorithms -- v. 2. Seminumerical algorithms.
32
+ 650 0 $aComputer programming.
33
+ 991 $bc-GenColl$hQA76.6$i.K64$tCopy 1$wBOOKS
34
+ },
35
+ Author = {Knuth, Donald Ervin},
36
+ Call-Number = {QA76.6},
37
+ Date-Added = {2011-01-22 19:03:04 -0500},
38
+ Date-Modified = {2011-01-22 19:03:04 -0500},
39
+ Dewey-Call-Number = {001.6/42},
40
+ Genre = {Computer programming},
41
+ Isbn = {0201038099 (v. 1)},
42
+ Library-Id = {73001830},
43
+ Publisher = {Addison-Wesley Pub. Co.},
44
+ Title = {The art of computer programming},
45
+ Year = {1981}}
46
+
47
+ @book{Knuth:1968,
48
+ Address = {Reading, Mass.},
49
+ Annote = {LDR 00894cam 22002411 4500
50
+ 001 3590275
51
+ 005 19990107112747.0
52
+ 008 740605m19689999maua b 001 0 eng
53
+ 035 $9(DLC) 67026020
54
+ 906 $a7$bcbc$corignew$du$eocip$f19$gy-gencatlg
55
+ 010 $a 67026020
56
+ 040 $aDLC$cDLC$dDLC
57
+ 050 00 $aQA76.5$b.K57
58
+ 082 00 $a651.8
59
+ 100 1 $aKnuth, Donald Ervin,$d1938-
60
+ 245 14 $aThe art of computer programming$c[by] Donald E. Knuth.
61
+ 260 $aReading, Mass.,$bAddison-Wesley Pub. Co.$c1968-
62
+ 300 $a v.$billus.$c25 cm.
63
+ 490 0 $aAddison-Wesley series in computer science and information processing
64
+ 504 $aIncludes bibliographical references and index.
65
+ 505 1 $av. 1. Fundamental algorithms.--v. 2. Semi-numerical algorithms.--v. 3. Sorting and searching.
66
+ 650 0 $aComputer programming.
67
+ 991 $bc-GenColl$hQA76.5$i.K57$tCopy 1$wBOOKS
68
+ },
69
+ Author = {Knuth, Donald Ervin},
70
+ Call-Number = {QA76.5},
71
+ Date-Added = {2011-01-22 18:55:04 -0500},
72
+ Date-Modified = {2011-01-22 18:57:09 -0500},
73
+ Dewey-Call-Number = {651.8},
74
+ Genre = {Computer programming},
75
+ Library-Id = {67026020},
76
+ Publisher = {Addison-Wesley Pub. Co},
77
+ Series = {Addison-Wesley series in computer science and information processing},
78
+ Title = {The art of computer programming},
79
+ Year = {1968}}
80
+
81
+ @book{Knuth:1986,
82
+ Address = {Reading, Mass.},
83
+ Annote = {LDR 01003cam 2200289 a 4500
84
+ 001 971492
85
+ 005 19930513170818.4
86
+ 008 851209s1986 maua 001 0 eng
87
+ 035 $9(DLC) 85030845
88
+ 906 $a7$bcbc$corignew$d1$eocip$f19$gy-gencatlg
89
+ 010 $a 85030845
90
+ 020 $a0201134470 :$c$32.95
91
+ 020 $a0201134489 (pbk)
92
+ 040 $aDLC$cDLC$dDLC
93
+ 050 00 $aZ253.4.T47$bK58 1986
94
+ 082 00 $a686.2/2544$219
95
+ 100 1 $aKnuth, Donald Ervin,$d1938-
96
+ 245 14 $aThe TeXbook /$cDonald E. Knuth ; illustrations by Duane Bibby.
97
+ 260 $aReading, Mass. :$bAddison-Wesley,$cc1986.
98
+ 300 $aix, 483 p. :$bill. ;$c24 cm.
99
+ 490 1 $aComputers & typesetting ;$vA
100
+ 500 $aIncludes index.
101
+ 630 00 $aTeX (Computer file)
102
+ 650 0 $aComputerized typesetting.
103
+ 650 0 $aMathematics printing$xComputer programs.
104
+ 800 1 $aKnuth, Donald Ervin,$d1938-$tComputers & typesetting ;$vA.
105
+ 991 $bc-GenColl$hZ253.4.T47$iK58 1986$p00000665666$tCopy 1$wBOOKS
106
+ },
107
+ Author = {Knuth, Donald Ervin},
108
+ Call-Number = {Z253.4.T47},
109
+ Date-Added = {2011-01-22 18:54:36 -0500},
110
+ Date-Modified = {2011-01-22 18:57:09 -0500},
111
+ Dewey-Call-Number = {686.2/2544},
112
+ Genre = {Computerized typesetting},
113
+ Isbn = {0201134470},
114
+ Library-Id = {85030845},
115
+ Publisher = {Addison-Wesley},
116
+ Series = {Computers & typesetting},
117
+ Title = {The TeXbook},
118
+ Volume = {A},
119
+ Year = {1986}}
@@ -0,0 +1,58 @@
1
+ Title: MultiMarkdownTestSuite ReadMe
2
+ Author: Fletcher T. Penney
3
+
4
+ # Introduction #
5
+
6
+ John Gruber created a test suite for Markdown. I have used that suite to look
7
+ for bugs in MultiMarkdown, and have found and corrected a few.
8
+
9
+ Additionally, I have added some further tests that are specific to features
10
+ found in MultiMarkdown.
11
+
12
+ The files in `Tests` are the original test suite. They require MultiMarkdown
13
+ to be run in compatibility mode (`multimarkdown -c`) and verify that it can
14
+ match the original Markdown output.
15
+
16
+ The files in `MultiMarkdownTests` are designed to test XHTML and LaTeX output
17
+ from MultiMarkdown.
18
+
19
+ The files in `BeamerTests` specifically test a few features related to the
20
+ `beamer` output mode.
21
+
22
+ The files in `MemoirTests` specifically test a few features related to the
23
+ `memoir` output mode.
24
+
25
+
26
+
27
+ # Where can you get it? #
28
+
29
+ Download the current version of the MMD Test Suite from github:
30
+
31
+ * <http://github.com/fletcher/MMD-Test-Suite/>
32
+
33
+
34
+ It's also linked to from within the source repository for MMD 3.0.
35
+
36
+
37
+ # How To Use #
38
+
39
+ To use this software, simply run (for example):
40
+
41
+ ./MarkdownTest.pl --script=~/path/to/MultiMarkdown.pl --tidy
42
+ --testdir=MultiMarkdownTests --ext=".tex" --Flags="-t latex"
43
+
44
+
45
+ I have modified the script to allow a `--Flags` extension that passes the
46
+ flags to the script that is called. This can be used to pass flags to the
47
+ script to enable compatibility mode, or LaTeX output, or whatever.
48
+
49
+ Also, see the MMD 3.0 (aka peg-multimarkdown) Makefile to see examples of how
50
+ I use this.
51
+
52
+ # For More Information #
53
+
54
+ Check out:
55
+
56
+ * John Gruber's [Markdown](http://daringfireball.net/projects/markdown) page
57
+
58
+ * My [MultiMarkdown](http://fletcherpenney.net/multimarkdown) page
@@ -0,0 +1,17 @@
1
+ <p>AT&amp;T has an ampersand in their name.</p>
2
+
3
+ <p>AT&amp;T is another way to write it.</p>
4
+
5
+ <p>This &amp; that.</p>
6
+
7
+ <p>4 &lt; 5.</p>
8
+
9
+ <p>6 > 5.</p>
10
+
11
+ <p>Here's a <a href="http://example.com/?foo=1&amp;bar=2">link</a> with an ampersand in the URL.</p>
12
+
13
+ <p>Here's a link with an amersand in the link text: <a href="http://att.com/" title="AT&amp;T">AT&amp;T</a>.</p>
14
+
15
+ <p>Here's an inline <a href="/script?foo=1&amp;bar=2">link</a>.</p>
16
+
17
+ <p>Here's an inline <a href="/script?foo=1&amp;bar=2">link</a>.</p>
@@ -0,0 +1,21 @@
1
+ AT&T has an ampersand in their name.
2
+
3
+ AT&amp;T is another way to write it.
4
+
5
+ This & that.
6
+
7
+ 4 < 5.
8
+
9
+ 6 > 5.
10
+
11
+ Here's a [link] [1] with an ampersand in the URL.
12
+
13
+ Here's a link with an amersand in the link text: [AT&T] [2].
14
+
15
+ Here's an inline [link](/script?foo=1&bar=2).
16
+
17
+ Here's an inline [link](</script?foo=1&bar=2>).
18
+
19
+
20
+ [1]: http://example.com/?foo=1&bar=2
21
+ [2]: http://att.com/ "AT&T"
@@ -0,0 +1,18 @@
1
+ <p>Link: <a href="http://example.com/">http://example.com/</a>.</p>
2
+
3
+ <p>With an ampersand: <a href="http://example.com/?foo=1&amp;bar=2">http://example.com/?foo=1&amp;bar=2</a></p>
4
+
5
+ <ul>
6
+ <li>In a list?</li>
7
+ <li><a href="http://example.com/">http://example.com/</a></li>
8
+ <li>It should.</li>
9
+ </ul>
10
+
11
+ <blockquote>
12
+ <p>Blockquoted: <a href="http://example.com/">http://example.com/</a></p>
13
+ </blockquote>
14
+
15
+ <p>Auto-links should not occur here: <code>&lt;http://example.com/&gt;</code></p>
16
+
17
+ <pre><code>or here: &lt;http://example.com/&gt;
18
+ </code></pre>
@@ -0,0 +1,13 @@
1
+ Link: <http://example.com/>.
2
+
3
+ With an ampersand: <http://example.com/?foo=1&bar=2>
4
+
5
+ * In a list?
6
+ * <http://example.com/>
7
+ * It should.
8
+
9
+ > Blockquoted: <http://example.com/>
10
+
11
+ Auto-links should not occur here: `<http://example.com/>`
12
+
13
+ or here: <http://example.com/>
@@ -0,0 +1,118 @@
1
+ <p>These should all get escaped:</p>
2
+
3
+ <p>Backslash: \</p>
4
+
5
+ <p>Backtick: `</p>
6
+
7
+ <p>Asterisk: *</p>
8
+
9
+ <p>Underscore: _</p>
10
+
11
+ <p>Left brace: {</p>
12
+
13
+ <p>Right brace: }</p>
14
+
15
+ <p>Left bracket: [</p>
16
+
17
+ <p>Right bracket: ]</p>
18
+
19
+ <p>Left paren: (</p>
20
+
21
+ <p>Right paren: )</p>
22
+
23
+ <p>Greater-than: ></p>
24
+
25
+ <p>Hash: #</p>
26
+
27
+ <p>Period: .</p>
28
+
29
+ <p>Bang: !</p>
30
+
31
+ <p>Plus: +</p>
32
+
33
+ <p>Minus: -</p>
34
+
35
+ <p>These should not, because they occur within a code block:</p>
36
+
37
+ <pre><code>Backslash: \\
38
+
39
+ Backtick: \`
40
+
41
+ Asterisk: \*
42
+
43
+ Underscore: \_
44
+
45
+ Left brace: \{
46
+
47
+ Right brace: \}
48
+
49
+ Left bracket: \[
50
+
51
+ Right bracket: \]
52
+
53
+ Left paren: \(
54
+
55
+ Right paren: \)
56
+
57
+ Greater-than: \&gt;
58
+
59
+ Hash: \#
60
+
61
+ Period: \.
62
+
63
+ Bang: \!
64
+
65
+ Plus: \+
66
+
67
+ Minus: \-
68
+ </code></pre>
69
+
70
+ <p>Nor should these, which occur in code spans:</p>
71
+
72
+ <p>Backslash: <code>\\</code></p>
73
+
74
+ <p>Backtick: <code>\`</code></p>
75
+
76
+ <p>Asterisk: <code>\*</code></p>
77
+
78
+ <p>Underscore: <code>\_</code></p>
79
+
80
+ <p>Left brace: <code>\{</code></p>
81
+
82
+ <p>Right brace: <code>\}</code></p>
83
+
84
+ <p>Left bracket: <code>\[</code></p>
85
+
86
+ <p>Right bracket: <code>\]</code></p>
87
+
88
+ <p>Left paren: <code>\(</code></p>
89
+
90
+ <p>Right paren: <code>\)</code></p>
91
+
92
+ <p>Greater-than: <code>\&gt;</code></p>
93
+
94
+ <p>Hash: <code>\#</code></p>
95
+
96
+ <p>Period: <code>\.</code></p>
97
+
98
+ <p>Bang: <code>\!</code></p>
99
+
100
+ <p>Plus: <code>\+</code></p>
101
+
102
+ <p>Minus: <code>\-</code></p>
103
+
104
+
105
+ <p>These should get escaped, even though they're matching pairs for
106
+ other Markdown constructs:</p>
107
+
108
+ <p>*asterisks*</p>
109
+
110
+ <p>_underscores_</p>
111
+
112
+ <p>`backticks`</p>
113
+
114
+ <p>This is a code span with a literal backslash-backtick sequence: <code>\`</code></p>
115
+
116
+ <p>This is a tag with unescaped backticks <span attr='`ticks`'>bar</span>.</p>
117
+
118
+ <p>This is a tag with backslashes <span attr='\\backslashes\\'>bar</span>.</p>
@@ -0,0 +1,120 @@
1
+ These should all get escaped:
2
+
3
+ Backslash: \\
4
+
5
+ Backtick: \`
6
+
7
+ Asterisk: \*
8
+
9
+ Underscore: \_
10
+
11
+ Left brace: \{
12
+
13
+ Right brace: \}
14
+
15
+ Left bracket: \[
16
+
17
+ Right bracket: \]
18
+
19
+ Left paren: \(
20
+
21
+ Right paren: \)
22
+
23
+ Greater-than: \>
24
+
25
+ Hash: \#
26
+
27
+ Period: \.
28
+
29
+ Bang: \!
30
+
31
+ Plus: \+
32
+
33
+ Minus: \-
34
+
35
+
36
+
37
+ These should not, because they occur within a code block:
38
+
39
+ Backslash: \\
40
+
41
+ Backtick: \`
42
+
43
+ Asterisk: \*
44
+
45
+ Underscore: \_
46
+
47
+ Left brace: \{
48
+
49
+ Right brace: \}
50
+
51
+ Left bracket: \[
52
+
53
+ Right bracket: \]
54
+
55
+ Left paren: \(
56
+
57
+ Right paren: \)
58
+
59
+ Greater-than: \>
60
+
61
+ Hash: \#
62
+
63
+ Period: \.
64
+
65
+ Bang: \!
66
+
67
+ Plus: \+
68
+
69
+ Minus: \-
70
+
71
+
72
+ Nor should these, which occur in code spans:
73
+
74
+ Backslash: `\\`
75
+
76
+ Backtick: `` \` ``
77
+
78
+ Asterisk: `\*`
79
+
80
+ Underscore: `\_`
81
+
82
+ Left brace: `\{`
83
+
84
+ Right brace: `\}`
85
+
86
+ Left bracket: `\[`
87
+
88
+ Right bracket: `\]`
89
+
90
+ Left paren: `\(`
91
+
92
+ Right paren: `\)`
93
+
94
+ Greater-than: `\>`
95
+
96
+ Hash: `\#`
97
+
98
+ Period: `\.`
99
+
100
+ Bang: `\!`
101
+
102
+ Plus: `\+`
103
+
104
+ Minus: `\-`
105
+
106
+
107
+ These should get escaped, even though they're matching pairs for
108
+ other Markdown constructs:
109
+
110
+ \*asterisks\*
111
+
112
+ \_underscores\_
113
+
114
+ \`backticks\`
115
+
116
+ This is a code span with a literal backslash-backtick sequence: `` \` ``
117
+
118
+ This is a tag with unescaped backticks <span attr='`ticks`'>bar</span>.
119
+
120
+ This is a tag with backslashes <span attr='\\backslashes\\'>bar</span>.
@@ -0,0 +1,15 @@
1
+ <blockquote>
2
+ <p>Example:</p>
3
+
4
+ <pre><code>sub status {
5
+ print "working";
6
+ }
7
+ </code></pre>
8
+
9
+ <p>Or:</p>
10
+
11
+ <pre><code>sub status {
12
+ return "working";
13
+ }
14
+ </code></pre>
15
+ </blockquote>
@@ -0,0 +1,11 @@
1
+ > Example:
2
+ >
3
+ > sub status {
4
+ > print "working";
5
+ > }
6
+ >
7
+ > Or:
8
+ >
9
+ > sub status {
10
+ > return "working";
11
+ > }
@@ -0,0 +1,18 @@
1
+ <pre><code>code block on the first line
2
+ </code></pre>
3
+
4
+ <p>Regular text.</p>
5
+
6
+ <pre><code>code block indented by spaces
7
+ </code></pre>
8
+
9
+ <p>Regular text.</p>
10
+
11
+ <pre><code>the lines in this block
12
+ all contain trailing spaces
13
+ </code></pre>
14
+
15
+ <p>Regular Text.</p>
16
+
17
+ <pre><code>code block on the last line
18
+ </code></pre>
@@ -0,0 +1,14 @@
1
+ code block on the first line
2
+
3
+ Regular text.
4
+
5
+ code block indented by spaces
6
+
7
+ Regular text.
8
+
9
+ the lines in this block
10
+ all contain trailing spaces
11
+
12
+ Regular Text.
13
+
14
+ code block on the last line
@@ -0,0 +1,6 @@
1
+ <p><code>&lt;test a="</code> content of attribute <code>"&gt;</code></p>
2
+
3
+ <p>Fix for backticks within HTML tag: <span attr='`ticks`'>like this</span></p>
4
+
5
+ <p>Here's how you put <code>`backticks`</code> in a code span.</p>
6
+
@@ -0,0 +1,6 @@
1
+ `<test a="` content of attribute `">`
2
+
3
+ Fix for backticks within HTML tag: <span attr='`ticks`'>like this</span>
4
+
5
+ Here's how you put `` `backticks` `` in a code span.
6
+
@@ -0,0 +1,5 @@
1
+ <p>Inline image --- <img src="http://example.net/image.png" alt="image" title="Image Caption" />.</p>
2
+
3
+ <p>Figure:</p>
4
+
5
+ <p><img src="http://example.net/image.png" alt="image" title="Image Caption" /></p>
@@ -0,0 +1,9 @@
1
+
2
+ Inline image --- ![image].
3
+
4
+
5
+ Figure:
6
+
7
+ ![image]
8
+
9
+ [image]: http://example.net/image.png "Image Caption"
@@ -0,0 +1,8 @@
1
+ <p>In Markdown 1.0.0 and earlier. Version
2
+ 8. This line turns into a list item.
3
+ Because a hard-wrapped line in the
4
+ middle of a paragraph looked like a
5
+ list item.</p>
6
+
7
+ <p>Here's one with a bullet.
8
+ * criminey.</p>
@@ -0,0 +1,8 @@
1
+ In Markdown 1.0.0 and earlier. Version
2
+ 8. This line turns into a list item.
3
+ Because a hard-wrapped line in the
4
+ middle of a paragraph looked like a
5
+ list item.
6
+
7
+ Here's one with a bullet.
8
+ * criminey.
@@ -0,0 +1,71 @@
1
+ <p>Dashes:</p>
2
+
3
+ <hr />
4
+
5
+ <hr />
6
+
7
+ <hr />
8
+
9
+ <hr />
10
+
11
+ <pre><code>---
12
+ </code></pre>
13
+
14
+ <hr />
15
+
16
+ <hr />
17
+
18
+ <hr />
19
+
20
+ <hr />
21
+
22
+ <pre><code>- - -
23
+ </code></pre>
24
+
25
+ <p>Asterisks:</p>
26
+
27
+ <hr />
28
+
29
+ <hr />
30
+
31
+ <hr />
32
+
33
+ <hr />
34
+
35
+ <pre><code>***
36
+ </code></pre>
37
+
38
+ <hr />
39
+
40
+ <hr />
41
+
42
+ <hr />
43
+
44
+ <hr />
45
+
46
+ <pre><code>* * *
47
+ </code></pre>
48
+
49
+ <p>Underscores:</p>
50
+
51
+ <hr />
52
+
53
+ <hr />
54
+
55
+ <hr />
56
+
57
+ <hr />
58
+
59
+ <pre><code>___
60
+ </code></pre>
61
+
62
+ <hr />
63
+
64
+ <hr />
65
+
66
+ <hr />
67
+
68
+ <hr />
69
+
70
+ <pre><code>_ _ _
71
+ </code></pre>