maruku 0.6.0 → 0.7.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (290) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE.txt +20 -0
  3. data/bin/maruku +153 -152
  4. data/bin/marutex +2 -29
  5. data/data/entities.xml +261 -0
  6. data/docs/markdown_syntax.md +9 -21
  7. data/docs/math.md +14 -18
  8. data/lib/maruku.rb +65 -78
  9. data/lib/maruku/attributes.rb +109 -214
  10. data/lib/maruku/defaults.rb +45 -67
  11. data/lib/maruku/document.rb +44 -0
  12. data/lib/maruku/element.rb +138 -0
  13. data/lib/maruku/errors.rb +80 -0
  14. data/lib/maruku/ext/div.rb +105 -113
  15. data/lib/maruku/ext/fenced_code.rb +97 -0
  16. data/lib/maruku/ext/math.rb +22 -26
  17. data/lib/maruku/ext/math/elements.rb +20 -26
  18. data/lib/maruku/ext/math/mathml_engines/blahtex.rb +92 -104
  19. data/lib/maruku/ext/math/mathml_engines/itex2mml.rb +33 -26
  20. data/lib/maruku/ext/math/mathml_engines/none.rb +11 -19
  21. data/lib/maruku/ext/math/mathml_engines/ritex.rb +2 -4
  22. data/lib/maruku/ext/math/parsing.rb +121 -115
  23. data/lib/maruku/ext/math/to_html.rb +202 -187
  24. data/lib/maruku/ext/math/to_latex.rb +34 -21
  25. data/lib/maruku/helpers.rb +158 -257
  26. data/lib/maruku/html.rb +251 -0
  27. data/lib/maruku/input/charsource.rb +272 -319
  28. data/lib/maruku/input/extensions.rb +62 -63
  29. data/lib/maruku/input/html_helper.rb +233 -189
  30. data/lib/maruku/input/linesource.rb +90 -110
  31. data/lib/maruku/input/mdline.rb +131 -0
  32. data/lib/maruku/input/parse_block.rb +736 -613
  33. data/lib/maruku/input/parse_doc.rb +145 -217
  34. data/lib/maruku/input/parse_span.rb +740 -0
  35. data/lib/maruku/inspect_element.rb +60 -0
  36. data/lib/maruku/maruku.rb +14 -30
  37. data/lib/maruku/output/entity_table.rb +37 -0
  38. data/lib/maruku/output/s5/fancy.rb +462 -462
  39. data/lib/maruku/output/s5/to_s5.rb +115 -135
  40. data/lib/maruku/output/to_html.rb +907 -983
  41. data/lib/maruku/output/to_latex.rb +571 -563
  42. data/lib/maruku/output/to_markdown.rb +207 -162
  43. data/lib/maruku/output/to_s.rb +10 -52
  44. data/lib/maruku/string_utils.rb +129 -179
  45. data/lib/maruku/toc.rb +185 -196
  46. data/lib/maruku/version.rb +33 -38
  47. data/spec/block_docs/abbrev.md +776 -0
  48. data/{tests/unittest → spec/block_docs}/abbreviations.md +11 -20
  49. data/spec/block_docs/abbreviations2.md +27 -0
  50. data/{tests/unittest → spec/block_docs}/alt.md +2 -14
  51. data/{tests/unittest/pending → spec/block_docs}/amps.md +1 -13
  52. data/spec/block_docs/attribute_sanitize.md +22 -0
  53. data/{tests/unittest → spec/block_docs}/attributes/att2.md +0 -12
  54. data/{tests/unittest → spec/block_docs}/attributes/att3.md +2 -14
  55. data/{tests/unittest → spec/block_docs}/attributes/attributes.md +12 -16
  56. data/{tests/unittest → spec/block_docs}/attributes/circular.md +0 -12
  57. data/{tests/unittest → spec/block_docs}/attributes/default.md +1 -13
  58. data/spec/block_docs/atx_headers.md +22 -0
  59. data/spec/block_docs/auto_cdata.md +48 -0
  60. data/spec/block_docs/bad_cites.md +30 -0
  61. data/spec/block_docs/bad_divrefs.md +30 -0
  62. data/{tests/unittest → spec/block_docs}/blank.md +0 -12
  63. data/{tests/unittest → spec/block_docs}/blanks_in_code.md +16 -15
  64. data/spec/block_docs/block_quotes.md +66 -0
  65. data/{tests/unittest/loss.md → spec/block_docs/bug_def.md} +6 -18
  66. data/{tests/unittest → spec/block_docs}/bug_table.md +7 -19
  67. data/spec/block_docs/cites.md +37 -0
  68. data/{tests/unittest → spec/block_docs}/code.md +7 -14
  69. data/{tests/unittest → spec/block_docs}/code2.md +4 -14
  70. data/{tests/unittest → spec/block_docs}/code3.md +12 -16
  71. data/spec/block_docs/code4.md +79 -0
  72. data/{tests/unittest → spec/block_docs}/data_loss.md +2 -14
  73. data/spec/block_docs/div_without_newline.md +16 -0
  74. data/{tests/unittest → spec/block_docs}/divs/div1.md +0 -12
  75. data/{tests/unittest → spec/block_docs}/divs/div2.md +0 -12
  76. data/{tests/unittest → spec/block_docs}/divs/div3_nest.md +3 -15
  77. data/{tests/unittest → spec/block_docs}/easy.md +1 -13
  78. data/spec/block_docs/email.md +29 -0
  79. data/spec/block_docs/empty_cells.md +31 -0
  80. data/{tests/unittest → spec/block_docs}/encoding/iso-8859-1.md +1 -14
  81. data/{tests/unittest → spec/block_docs}/encoding/utf-8.md +0 -12
  82. data/{tests/unittest → spec/block_docs}/entities.md +33 -41
  83. data/{tests/unittest/notyet → spec/block_docs}/escape.md +2 -14
  84. data/{tests/unittest → spec/block_docs}/escaping.md +11 -22
  85. data/{tests/unittest → spec/block_docs}/extra_dl.md +2 -13
  86. data/{tests/unittest → spec/block_docs}/extra_header_id.md +14 -20
  87. data/{tests/unittest → spec/block_docs}/extra_table1.md +9 -21
  88. data/spec/block_docs/fenced_code_blocks.md +58 -0
  89. data/spec/block_docs/fenced_code_blocks_highlighted.md +17 -0
  90. data/{tests/unittest → spec/block_docs}/footnotes.md +12 -24
  91. data/spec/block_docs/footnotes2.md +82 -0
  92. data/spec/block_docs/hard.md +25 -0
  93. data/spec/block_docs/header_after_par.md +62 -0
  94. data/{tests/unittest → spec/block_docs}/headers.md +10 -18
  95. data/{tests/unittest → spec/block_docs}/hex_entities.md +7 -18
  96. data/{tests/unittest → spec/block_docs}/hrule.md +5 -12
  97. data/{tests/unittest → spec/block_docs}/html3.md +1 -13
  98. data/{tests/unittest → spec/block_docs}/html4.md +2 -14
  99. data/{tests/unittest → spec/block_docs}/html5.md +2 -14
  100. data/spec/block_docs/html_block_in_para.md +22 -0
  101. data/spec/block_docs/html_inline.md +25 -0
  102. data/spec/block_docs/html_trailing.md +31 -0
  103. data/spec/block_docs/ie.md +62 -0
  104. data/spec/block_docs/iframe.md +29 -0
  105. data/spec/block_docs/ignore_bad_header.md +9 -0
  106. data/{tests/unittest → spec/block_docs}/images.md +22 -28
  107. data/{tests/unittest → spec/block_docs}/images2.md +7 -17
  108. data/{tests/unittest → spec/block_docs}/inline_html.md +37 -67
  109. data/{tests/unittest → spec/block_docs}/inline_html2.md +1 -13
  110. data/spec/block_docs/inline_html_beginning.md +10 -0
  111. data/spec/block_docs/issue106.md +78 -0
  112. data/spec/block_docs/issue115.md +20 -0
  113. data/spec/block_docs/issue117.md +13 -0
  114. data/spec/block_docs/issue120.md +48 -0
  115. data/spec/block_docs/issue123.md +11 -0
  116. data/spec/block_docs/issue124.md +16 -0
  117. data/spec/block_docs/issue126.md +9 -0
  118. data/spec/block_docs/issue130.md +11 -0
  119. data/spec/block_docs/issue20.md +9 -0
  120. data/spec/block_docs/issue26.md +22 -0
  121. data/spec/block_docs/issue29.md +9 -0
  122. data/spec/block_docs/issue30.md +30 -0
  123. data/spec/block_docs/issue31.md +25 -0
  124. data/spec/block_docs/issue40.md +52 -0
  125. data/spec/block_docs/issue64.md +55 -0
  126. data/spec/block_docs/issue67.md +19 -0
  127. data/spec/block_docs/issue70.md +11 -0
  128. data/spec/block_docs/issue72.md +17 -0
  129. data/spec/block_docs/issue74.md +38 -0
  130. data/spec/block_docs/issue79.md +15 -0
  131. data/spec/block_docs/issue83.md +13 -0
  132. data/spec/block_docs/issue85.md +25 -0
  133. data/spec/block_docs/issue88.md +19 -0
  134. data/spec/block_docs/issue89.md +12 -0
  135. data/spec/block_docs/issue90.md +38 -0
  136. data/{tests/unittest/pending → spec/block_docs}/link.md +21 -18
  137. data/{tests/unittest → spec/block_docs}/links.md +33 -32
  138. data/spec/block_docs/links2.md +21 -0
  139. data/{tests/unittest → spec/block_docs}/list1.md +0 -12
  140. data/{tests/unittest → spec/block_docs}/list12.md +2 -14
  141. data/{tests/unittest → spec/block_docs}/list2.md +2 -14
  142. data/spec/block_docs/list_multipara.md +42 -0
  143. data/{tests/unittest → spec/block_docs}/lists.md +28 -29
  144. data/{tests/unittest → spec/block_docs}/lists10.md +2 -14
  145. data/spec/block_docs/lists11.md +23 -0
  146. data/spec/block_docs/lists12.md +43 -0
  147. data/spec/block_docs/lists13.md +55 -0
  148. data/spec/block_docs/lists14.md +61 -0
  149. data/spec/block_docs/lists15.md +36 -0
  150. data/spec/block_docs/lists6.md +88 -0
  151. data/spec/block_docs/lists7b.md +58 -0
  152. data/spec/block_docs/lists9.md +53 -0
  153. data/{tests/unittest → spec/block_docs}/lists_after_paragraph.md +19 -25
  154. data/spec/block_docs/lists_blank.md +35 -0
  155. data/{tests/unittest/list3.md → spec/block_docs/lists_blockquote_code.md} +2 -14
  156. data/{tests/unittest/list4.md → spec/block_docs/lists_need_blank_line.md} +44 -29
  157. data/spec/block_docs/lists_nested.md +44 -0
  158. data/spec/block_docs/lists_nested_blankline.md +34 -0
  159. data/spec/block_docs/lists_nested_deep.md +43 -0
  160. data/spec/block_docs/lists_ol.md +129 -0
  161. data/spec/block_docs/lists_ol2.md +147 -0
  162. data/spec/block_docs/lists_paraindent.md +42 -0
  163. data/spec/block_docs/lists_tab.md +54 -0
  164. data/spec/block_docs/loss.md +17 -0
  165. data/spec/block_docs/math-blahtex/equations.md +29 -0
  166. data/spec/block_docs/math-blahtex/inline.md +48 -0
  167. data/spec/block_docs/math-blahtex/math2.md +52 -0
  168. data/spec/block_docs/math-blahtex/table.md +25 -0
  169. data/spec/block_docs/math/embedded_invalid_svg.md +108 -0
  170. data/spec/block_docs/math/embedded_svg.md +136 -0
  171. data/spec/block_docs/math/equations.md +49 -0
  172. data/spec/block_docs/math/inline.md +46 -0
  173. data/spec/block_docs/math/math2.md +53 -0
  174. data/{tests/unittest → spec/block_docs}/math/notmath.md +0 -12
  175. data/spec/block_docs/math/raw_mathml.md +87 -0
  176. data/spec/block_docs/math/spaces_after_inline_math.md +17 -0
  177. data/spec/block_docs/math/table.md +25 -0
  178. data/{tests/unittest → spec/block_docs}/math/table2.md +11 -23
  179. data/{tests/unittest → spec/block_docs}/misc_sw.md +184 -121
  180. data/{tests/unittest → spec/block_docs}/olist.md +6 -18
  181. data/{tests/unittest → spec/block_docs}/one.md +0 -12
  182. data/{tests/unittest → spec/block_docs}/paragraph.md +0 -12
  183. data/{tests/unittest → spec/block_docs}/paragraph_rules/dont_merge_ref.md +4 -12
  184. data/{tests/unittest → spec/block_docs}/paragraph_rules/tab_is_blank.md +0 -12
  185. data/{tests/unittest → spec/block_docs}/paragraphs.md +1 -13
  186. data/{tests/unittest → spec/block_docs}/recover/recover_links.md +4 -16
  187. data/{tests/unittest/pending/ref.md → spec/block_docs/ref_with_period.md} +7 -16
  188. data/spec/block_docs/ref_with_title.md +22 -0
  189. data/{tests/unittest → spec/block_docs}/references/long_example.md +16 -23
  190. data/{tests/unittest → spec/block_docs}/references/spaces_and_numbers.md +0 -12
  191. data/{tests/unittest → spec/block_docs}/smartypants.md +24 -31
  192. data/{tests/unittest → spec/block_docs}/syntax_hl.md +13 -17
  193. data/{tests/unittest → spec/block_docs}/table_attributes.md +6 -20
  194. data/spec/block_docs/table_colspan.md +41 -0
  195. data/spec/block_docs/tables.md +47 -0
  196. data/spec/block_docs/tables2.md +74 -0
  197. data/{tests/unittest → spec/block_docs}/test.md +1 -13
  198. data/{tests/unittest/notyet → spec/block_docs}/ticks.md +1 -13
  199. data/spec/block_docs/toc.md +87 -0
  200. data/{tests/unittest/notyet → spec/block_docs}/triggering.md +14 -25
  201. data/{tests/unittest → spec/block_docs}/underscore_in_words.md +0 -12
  202. data/{tests/unittest → spec/block_docs}/wrapping.md +4 -16
  203. data/spec/block_docs/xml.md +33 -0
  204. data/spec/block_docs/xml3.md +24 -0
  205. data/spec/block_docs/xml_comments.md +32 -0
  206. data/{tests/unittest → spec/block_docs}/xml_instruction.md +9 -20
  207. data/spec/block_spec.rb +110 -0
  208. data/spec/cli_spec.rb +8 -0
  209. data/spec/span_spec.rb +263 -0
  210. data/spec/spec_helper.rb +3 -0
  211. data/spec/to_html_utf8_spec.rb +13 -0
  212. metadata +218 -202
  213. data/Rakefile +0 -73
  214. data/bin/marudown +0 -29
  215. data/bin/marutest +0 -345
  216. data/docs/changelog.md +0 -334
  217. data/lib/maruku/errors_management.rb +0 -92
  218. data/lib/maruku/ext/math/latex_fix.rb +0 -12
  219. data/lib/maruku/input/parse_span_better.rb +0 -746
  220. data/lib/maruku/input/rubypants.rb +0 -225
  221. data/lib/maruku/input/type_detection.rb +0 -147
  222. data/lib/maruku/output/to_latex_entities.rb +0 -367
  223. data/lib/maruku/output/to_latex_strings.rb +0 -64
  224. data/lib/maruku/structures.rb +0 -167
  225. data/lib/maruku/structures_inspect.rb +0 -87
  226. data/lib/maruku/structures_iterators.rb +0 -61
  227. data/lib/maruku/tests/benchmark.rb +0 -82
  228. data/lib/maruku/tests/new_parser.rb +0 -373
  229. data/lib/maruku/tests/tests.rb +0 -136
  230. data/lib/maruku/usage/example1.rb +0 -33
  231. data/maruku_gem.rb +0 -33
  232. data/tests/bugs/code_in_links.md +0 -101
  233. data/tests/bugs/complex_escaping.md +0 -38
  234. data/tests/math/syntax.md +0 -46
  235. data/tests/math_usage/document.md +0 -13
  236. data/tests/others/abbreviations.md +0 -11
  237. data/tests/others/blank.md +0 -4
  238. data/tests/others/code.md +0 -5
  239. data/tests/others/code2.md +0 -8
  240. data/tests/others/code3.md +0 -16
  241. data/tests/others/email.md +0 -4
  242. data/tests/others/entities.md +0 -19
  243. data/tests/others/escaping.md +0 -16
  244. data/tests/others/extra_dl.md +0 -101
  245. data/tests/others/extra_header_id.md +0 -13
  246. data/tests/others/extra_table1.md +0 -40
  247. data/tests/others/footnotes.md +0 -17
  248. data/tests/others/headers.md +0 -10
  249. data/tests/others/hrule.md +0 -10
  250. data/tests/others/images.md +0 -20
  251. data/tests/others/inline_html.md +0 -42
  252. data/tests/others/links.md +0 -38
  253. data/tests/others/list1.md +0 -4
  254. data/tests/others/list2.md +0 -5
  255. data/tests/others/list3.md +0 -8
  256. data/tests/others/lists.md +0 -32
  257. data/tests/others/lists_after_paragraph.md +0 -44
  258. data/tests/others/lists_ol.md +0 -39
  259. data/tests/others/misc_sw.md +0 -105
  260. data/tests/others/one.md +0 -1
  261. data/tests/others/paragraphs.md +0 -13
  262. data/tests/others/sss06.md +0 -352
  263. data/tests/others/test.md +0 -4
  264. data/tests/s5/s5profiling.md +0 -48
  265. data/tests/unittest/bug_def.md +0 -28
  266. data/tests/unittest/email.md +0 -32
  267. data/tests/unittest/hang.md +0 -29
  268. data/tests/unittest/html2.md +0 -34
  269. data/tests/unittest/ie.md +0 -61
  270. data/tests/unittest/links2.md +0 -34
  271. data/tests/unittest/lists11.md +0 -28
  272. data/tests/unittest/lists6.md +0 -53
  273. data/tests/unittest/lists9.md +0 -76
  274. data/tests/unittest/lists_ol.md +0 -274
  275. data/tests/unittest/math/equations.md +0 -86
  276. data/tests/unittest/math/inline.md +0 -58
  277. data/tests/unittest/math/math2.md +0 -57
  278. data/tests/unittest/math/table.md +0 -37
  279. data/tests/unittest/notyet/header_after_par.md +0 -70
  280. data/tests/unittest/pending/empty_cells.md +0 -49
  281. data/tests/unittest/red_tests/abbrev.md +0 -1388
  282. data/tests/unittest/red_tests/lists7.md +0 -68
  283. data/tests/unittest/red_tests/lists7b.md +0 -128
  284. data/tests/unittest/red_tests/lists8.md +0 -76
  285. data/tests/unittest/red_tests/xml.md +0 -70
  286. data/tests/unittest/xml2.md +0 -31
  287. data/tests/unittest/xml3.md +0 -38
  288. data/tests/utf8-files/simple.md +0 -1
  289. data/unit_test_block.sh +0 -5
  290. data/unit_test_span.sh +0 -3
@@ -3,8 +3,8 @@ Write a comment here
3
3
  {} # params
4
4
  *** Markdown input: ***
5
5
 
6
- h | h
7
- ----------|--
6
+ h | h
7
+ ----------|---
8
8
  {:t} c1 | c2
9
9
  {: summary="Table summary" .class1 style="color:red" border=3 width="50%" frame=lhs rules=cols cellspacing=2em cellpadding=4px}
10
10
 
@@ -12,16 +12,14 @@ h | h
12
12
  *** Output of inspect ***
13
13
  md_el(:document,[
14
14
  md_el(:table,[
15
- md_el(:head_cell,["h"],{},[]),
16
- md_el(:head_cell,["h"],{},[]),
17
- md_el(:cell,[" c1"],{},[[:ref, "t"]]),
18
- md_el(:cell,["c2"],{},[])
15
+ [md_el(:head_cell,["h"],{},[]),md_el(:head_cell,["h"],{},[])],
16
+ [md_el(:cell,[" c1"],{},[[:ref, "t"]]),md_el(:cell,["c2"],{},[])]
19
17
  ],{:align=>[:left, :left]},[["summary", "Table summary"], [:class, "class1"], ["style", "color:red"], ["border", "3"], ["width", "50%"], ["frame", "lhs"], ["rules", "cols"], ["cellspacing", "2em"], ["cellpadding", "4px"]]),
20
18
  md_el(:ald,[],{:ald=>[["scope", "row"]],:ald_id=>"t"},[])
21
19
  ],{},[])
22
20
  *** Output of to_html ***
23
- <table cellspacing='2em' class='class1' border='3' rules='cols' frame='lhs' summary='Table summary' cellpadding='4px' width='50%' style='color:red'><thead><tr><th>h</th><th>h</th></tr></thead><tbody><tr><th scope='row' style='text-align: left;'> c1</th><td style='text-align: left;'>c2</td>
24
- </tr></tbody></table>
21
+ <table class="class1" style="color:red" summary="Table summary" width="50%" frame="lhs" rules="cols" border="3" cellspacing="2em" cellpadding="4px"><thead><tr><th>h</th><th>h</th></tr></thead><tbody><tr><th scope="row" style="text-align: left;"> c1</th><td style="text-align: left;">c2</td></tr>
22
+ </tbody></table>
25
23
  *** Output of to_latex ***
26
24
  \begin{tabular}{l|l}
27
25
  h&h\\
@@ -32,15 +30,3 @@ h&h\\
32
30
  hh c1c2
33
31
  *** Output of to_s ***
34
32
  hh c1c2
35
- *** EOF ***
36
-
37
-
38
-
39
- OK!
40
-
41
-
42
-
43
- *** Output of Markdown.pl ***
44
- (not used anymore)
45
- *** Output of Markdown.pl (parsed) ***
46
- (not used anymore)
@@ -0,0 +1,41 @@
1
+ Write a comment here
2
+ *** Parameters: ***
3
+ {} # params
4
+ *** Markdown input: ***
5
+
6
+ | h1 | h2 | h3 |
7
+ |:----------|:---:|-----:|
8
+ |c1 | c2 | c3 |
9
+ |c1 | c2 ||
10
+ |c1 || c2 |
11
+ |c1 |||
12
+ {: summary="Table summary" .class1 style="color:blue" border=1 width="50%" cellspacing=2em cellpadding=4px}
13
+
14
+ {:t: scope="row"}
15
+ *** Output of inspect ***
16
+ md_el(:document,[
17
+ md_el(:table, [
18
+ [md_el(:head_cell, "h1"), md_el(:head_cell, "h2"), md_el(:head_cell, "h3")],
19
+ [md_el(:cell, "c1"), md_el(:cell, "c2"), md_el(:cell, "c3")],
20
+ [md_el(:cell, "c1"), md_el(:cell, "c2", {}, [["colspan", "2"]])],
21
+ [md_el(:cell, "c1", {}, [["colspan", "2"]]), md_el(:cell, "c2")],
22
+ [md_el(:cell, "c1", {}, [["colspan", "3"]])]
23
+ ],{:align=>[:left, :center, :right]},[["summary", "Table summary"], [:class, "class1"], ["style", "color:blue"], ["border", ""], ["width", "50%"], ["frame", "lhs"], ["rules", "cols"], ["cellspacing", "2em"], ["cellpadding", "4px"]]),
24
+ md_el(:ald,[],{:ald=>[["scope", "row"]],:ald_id=>"t"},[])
25
+ ],{},[])
26
+ *** Output of to_html ***
27
+ <table class="class1" style="color:blue" summary="Table summary" width="50%" border="1" cellspacing="2em" cellpadding="4px">
28
+ <thead><tr><th>h1</th><th>h2</th><th>h3</th></tr></thead>
29
+ <tbody><tr><td style="text-align: left;">c1</td><td style="text-align: center;">c2</td><td style="text-align: right;">c3</td></tr>
30
+ <tr><td style="text-align: left;">c1</td><td colspan="2" style="text-align: center;">c2</td></tr>
31
+ <tr><td colspan="2" style="text-align: left;">c1</td><td style="text-align: center;">c2</td></tr>
32
+ <tr><td colspan="3" style="text-align: left;">c1</td></tr></tbody></table>
33
+ *** Output of to_latex ***
34
+ \begin{tabular}{l|c|r}
35
+ h1&h2&h3\\
36
+ \hline
37
+ c1&c2&c3\\
38
+ c1&\multicolumn {2}{|l|}{c2}\\
39
+ \multicolumn {2}{|l|}{c1}&c2\\
40
+ \multicolumn {3}{|l|}{c1}\\
41
+ \end{tabular}
@@ -0,0 +1,47 @@
1
+ PHP Markdown Extra table syntax
2
+ *** Parameters: ***
3
+ {} # params
4
+ *** Markdown input: ***
5
+
6
+ Col1 | Very very long head | Very very long head|
7
+ ------- |:-------------------:|-------------------:|
8
+ cell | center-align | right-align |
9
+ another | cell | here |
10
+
11
+ | First Header | Second Header |
12
+ | ------------- | ------------- |
13
+ | Content Cell | Content Cell |
14
+ | Content Cell | Content Cell |
15
+
16
+ First Header | Second Header
17
+ ------------- | -------------
18
+ Content Cell | Content Cell
19
+ Content Cell | Content Cell
20
+
21
+ *** Output of inspect ***
22
+ md_el(:document, [
23
+ md_el(:table, [
24
+ [md_el(:head_cell, "Col1"), md_el(:head_cell, "Very very long head"), md_el(:head_cell, "Very very long head")],
25
+ [md_el(:cell, "cell"), md_el(:cell, "center-align"), md_el(:cell, "right-align")],
26
+ [md_el(:cell, "another"), md_el(:cell, "cell"), md_el(:cell, "here")]
27
+ ], {:align=>[:left, :center, :right]}),
28
+ md_el(:table, [
29
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
30
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
31
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
32
+ ], {:align=>[:left, :left]}),
33
+ md_el(:table, [
34
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
35
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
36
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
37
+ ], {:align=>[:left, :left]})
38
+ ])
39
+ *** Output of to_html ***
40
+ <table><thead><tr><th>Col1</th><th>Very very long head</th><th>Very very long head</th></tr></thead><tbody><tr><td style="text-align: left;">cell</td><td style="text-align: center;">center-align</td><td style="text-align: right;">right-align</td></tr>
41
+ <tr><td style="text-align: left;">another</td><td style="text-align: center;">cell</td><td style="text-align: right;">here</td></tr>
42
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
43
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
44
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
45
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
46
+ </tbody></table>
47
+
@@ -0,0 +1,74 @@
1
+ Trailing blanks in table rows
2
+ *** Parameters: ***
3
+ {} # params
4
+ *** Markdown input: ***
5
+
6
+ Col1 | Very very long head | Very very long head|
7
+ ------- |:-------------------:|-------------------:|
8
+ cell | center-align | right-align |
9
+ another | cell | here |
10
+
11
+ | First Header | Second Header |
12
+ | ------------- | ------------- |
13
+ | Content Cell | Content Cell |
14
+ | Content Cell | Content Cell |
15
+
16
+ | First Header | Second Header |
17
+ | ------------- | ------------- |
18
+ | Content Cell | Content Cell |
19
+ | Content Cell | Content Cell |
20
+
21
+ First Header | Second Header|
22
+ ------------- | -------------|
23
+ Content Cell | Content Cell|
24
+ Content Cell | Content Cell|
25
+
26
+ First Header | Second Header
27
+ ------------- | -------------
28
+ Content Cell | Content Cell
29
+ Content Cell |
30
+ Content Cell | Content Cell
31
+
32
+ *** Output of inspect ***
33
+ md_el(:document, [
34
+ md_el(:table, [
35
+ [md_el(:head_cell, "Col1"), md_el(:head_cell, "Very very long head"), md_el(:head_cell, "Very very long head")],
36
+ [md_el(:cell, "cell"), md_el(:cell, "center-align"), md_el(:cell, "right-align")],
37
+ [md_el(:cell, "another"), md_el(:cell, "cell"), md_el(:cell, "here")]
38
+ ], {:align=>[:left, :center, :right]}),
39
+ md_el(:table, [
40
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
41
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
42
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
43
+ ], {:align=>[:left, :left]}),
44
+ md_el(:table, [
45
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
46
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
47
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
48
+ ], {:align=>[:left, :left]}),
49
+ md_el(:table, [
50
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
51
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
52
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
53
+ ], {:align=>[:left, :left]}),
54
+ md_el(:table, [
55
+ [md_el(:head_cell, "First Header"), md_el(:head_cell, "Second Header")],
56
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")],
57
+ [md_el(:cell, "Content Cell"), md_el(:cell, [])],
58
+ [md_el(:cell, "Content Cell"), md_el(:cell, "Content Cell")]
59
+ ], {:align=>[:left, :left]})
60
+ ])
61
+ *** Output of to_html ***
62
+ <table><thead><tr><th>Col1</th><th>Very very long head</th><th>Very very long head</th></tr></thead><tbody><tr><td style="text-align: left;">cell</td><td style="text-align: center;">center-align</td><td style="text-align: right;">right-align</td></tr>
63
+ <tr><td style="text-align: left;">another</td><td style="text-align: center;">cell</td><td style="text-align: right;">here</td></tr>
64
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
65
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
66
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
67
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
68
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
69
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
70
+ </tbody></table><table><thead><tr><th>First Header</th><th>Second Header</th></tr></thead><tbody><tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
71
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;"></td></tr>
72
+ <tr><td style="text-align: left;">Content Cell</td><td style="text-align: left;">Content Cell</td></tr>
73
+ </tbody></table>
74
+
@@ -8,7 +8,7 @@ Write a comment abouth the test here.
8
8
 
9
9
 
10
10
  *** Output of inspect ***
11
- md_el(:document,[md_el(:code,[],{:raw_code=>" $ python "},[])],{},[])
11
+ md_el(:document,[md_el(:code,[],{:raw_code=>" $ python ", :lang=>nil},[])],{},[])
12
12
  *** Output of to_html ***
13
13
  <pre><code> $ python </code></pre>
14
14
  *** Output of to_latex ***
@@ -17,15 +17,3 @@ md_el(:document,[md_el(:code,[],{:raw_code=>" $ python "},[])],{},[]
17
17
 
18
18
  *** Output of to_s ***
19
19
 
20
- *** EOF ***
21
-
22
-
23
-
24
- OK!
25
-
26
-
27
-
28
- *** Output of Markdown.pl ***
29
- (not used anymore)
30
- *** Output of Markdown.pl (parsed) ***
31
- (not used anymore)
@@ -11,20 +11,8 @@ md_el(:document,[md_par([md_code("There is a literal backtick (`) here.")])],{},
11
11
  *** Output of to_html ***
12
12
  <p><code>There is a literal backtick (`) here.</code></p>
13
13
  *** Output of to_latex ***
14
- {\colorbox[rgb]{1.00,0.93,1.00}{\tt There~is~a~literal~backtick~\char40\char96\char41~here\char46}}
14
+ {\colorbox[rgb]{1.00,0.93,1.00}{\tt There\char32is\char32a\char32literal\char32backtick\char32\char40\char96\char41\char32here\char46}}
15
15
  *** Output of to_md ***
16
16
 
17
17
  *** Output of to_s ***
18
18
 
19
- *** EOF ***
20
-
21
-
22
-
23
- OK!
24
-
25
-
26
-
27
- *** Output of Markdown.pl ***
28
- (not used anymore)
29
- *** Output of Markdown.pl (parsed) ***
30
- (not used anymore)
@@ -0,0 +1,87 @@
1
+ Write a comment abouth the test here.
2
+ *** Parameters: ***
3
+ {:use_numbered_headers => true}
4
+ *** Markdown input: ***
5
+
6
+ * Table of Contents
7
+ {:toc}
8
+
9
+ A title with *emphasis*
10
+ =======================
11
+
12
+ ## Try ## {#try}
13
+
14
+ First Subheader
15
+ ---------------
16
+ {#foo}
17
+
18
+ Say something.
19
+
20
+ ### A title with *emphasis* ###
21
+
22
+ Say something else.
23
+
24
+ Second Subheader
25
+ --------------
26
+
27
+ You don't say.
28
+
29
+ *** Output of inspect ***
30
+ md_el(:document,[
31
+ md_el(:ul, md_el(:li, "Table of Contents", {:want_my_paragraph=>false}), {}, [[:ref, "toc"]]),
32
+ md_el(:header,["A title with ", md_em(["emphasis"])],{:level=>1},[]),
33
+ md_el(:header, "Try", {:level=>2}, [[:id, "try"]]),
34
+ md_el(:header, "First Subheader", {:level=>2}),
35
+ md_par("Say something."),
36
+ md_el(:header, ["A title with ", md_em("emphasis")], {:level=>3}),
37
+ md_par("Say something else."),
38
+ md_el(:header, "Second Subheader", {:level=>2}),
39
+ md_par(["You don", md_entity("rsquo"), "t say."])
40
+ ],{},[])
41
+ *** Output of to_html ***
42
+ <div class="maruku_toc"><ul><li><span class="maruku_section_number">1. </span><a href="#try">Try</a></li><li><span class="maruku_section_number">2. </span><a href="#foo">First Subheader</a><ul><li><span class="maruku_section_number">2.1. </span><a href="#a_title_with_emphasis_2">A title with <em>emphasis</em></a></li></ul></li><li><span class="maruku_section_number">3. </span><a href="#second_subheader">Second Subheader</a></li></ul></div>
43
+ <h1 id="a_title_with_emphasis">A title with <em>emphasis</em></h1>
44
+
45
+ <h2 id="try"><span class="maruku_section_number">1. </span>Try</h2>
46
+
47
+ <h2 id="foo"><span class="maruku_section_number">2. </span>First Subheader</h2>
48
+
49
+ <p>Say something.</p>
50
+
51
+ <h3 id="a_title_with_emphasis_2"><span class="maruku_section_number">2.1. </span>A title with <em>emphasis</em></h3>
52
+
53
+ <p>Say something else.</p>
54
+
55
+ <h2 id="second_subheader"><span class="maruku_section_number">3. </span>Second Subheader</h2>
56
+
57
+ <p>You don’t say.</p>
58
+ *** Output of to_latex ***
59
+ \noindent1. \hyperlink{try}{Try}\dotfill \pageref*{try} \linebreak
60
+ \noindent2. \hyperlink{foo}{First Subheader}\dotfill \pageref*{foo} \linebreak
61
+ \noindent2.1. \hyperlink{a_title_with_emphasis_2}{A title with \emph{emphasis}}\dotfill \pageref*{a_title_with_emphasis_2} \linebreak
62
+ \noindent3. \hyperlink{second_subheader}{Second Subheader}\dotfill \pageref*{second_subheader} \linebreak
63
+
64
+
65
+ \hypertarget{a_title_with_emphasis}{}\section*{{A title with \emph{emphasis}}}\label{a_title_with_emphasis}
66
+
67
+ \hypertarget{try}{}\subsection*{{1. Try}}\label{try}
68
+
69
+ \hypertarget{foo}{}\subsection*{{2. First Subheader}}\label{foo}
70
+
71
+ Say something.
72
+
73
+ \hypertarget{a_title_with_emphasis_2}{}\subsubsection*{{2.1. A title with \emph{emphasis}}}\label{a_title_with_emphasis_2}
74
+
75
+ Say something else.
76
+
77
+ \hypertarget{second_subheader}{}\subsection*{{3. Second Subheader}}\label{second_subheader}
78
+
79
+ You don't say.
80
+ *** Output of to_md ***
81
+ # A title with *emphasis* #
82
+
83
+ ## A title with *emphasis* ##
84
+
85
+ #### A title with *emphasis* ####
86
+ *** Output of to_s ***
87
+ A title with emphasisA title with emphasisA title with emphasis
@@ -30,11 +30,11 @@ Paragraph with block quote:
30
30
  > Quoted
31
31
 
32
32
  Paragraph with header:
33
- ### header ###
33
+ ### header 1 ###
34
34
 
35
35
  Paragraph with header on two lines:
36
- header
37
- ------
36
+ header 2
37
+ --------
38
38
 
39
39
  *** Output of inspect ***
40
40
  md_el(:document,[
@@ -57,9 +57,9 @@ md_el(:document,[
57
57
  md_par(["Paragraph with block quote:"]),
58
58
  md_el(:quote,[md_par(["Quoted"])],{},[]),
59
59
  md_par(["Paragraph with header:"]),
60
- md_el(:header,["header"],{:level=>3},[]),
60
+ md_el(:header,["header 1"],{:level=>3},[]),
61
61
  md_par(["Paragraph with header on two lines:"]),
62
- md_el(:header,["header"],{:level=>2},[])
62
+ md_el(:header,["header 2"],{:level=>2},[])
63
63
  ],{},[])
64
64
  *** Output of to_html ***
65
65
  <p>Paragraph, list with no space: * ciao</p>
@@ -86,11 +86,11 @@ md_el(:document,[
86
86
 
87
87
  <p>Paragraph with header:</p>
88
88
 
89
- <h3 id='header'>header</h3>
89
+ <h3 id="header_1">header 1</h3>
90
90
 
91
91
  <p>Paragraph with header on two lines:</p>
92
92
 
93
- <h2 id='header'>header</h2>
93
+ <h2 id="header_2">header 2</h2>
94
94
  *** Output of to_latex ***
95
95
  Paragraph, list with no space: * ciao
96
96
 
@@ -117,11 +117,11 @@ Quoted
117
117
  \end{quote}
118
118
  Paragraph with header:
119
119
 
120
- \hypertarget{header}{}\subsubsection*{{header}}\label{header}
120
+ \hypertarget{header_1}{}\subsubsection*{{header 1}}\label{header_1}
121
121
 
122
122
  Paragraph with header on two lines:
123
123
 
124
- \hypertarget{header}{}\subsection*{{header}}\label{header}
124
+ \hypertarget{header_2}{}\subsection*{{header 2}}\label{header_2}
125
125
  *** Output of to_md ***
126
126
  Paragraph, list with no space: * ciao
127
127
 
@@ -146,24 +146,13 @@ no space:
146
146
 
147
147
  Paragraph with block quote:
148
148
 
149
- Quoted
150
-
149
+ > Quoted
151
150
  Paragraph with header:
152
151
 
153
- headerParagraph with header on two lines:
152
+ ### header
154
153
 
155
- header
154
+ Paragraph with header on two lines:
155
+
156
+ ## header
156
157
  *** Output of to_s ***
157
158
  Paragraph, list with no space: * ciaoParagraph, list with 1 space: * ciaoParagraph, list with 3 space: * ciaoParagraph, list with 4 spaces: * ciaoParagraph, list with 1 tab: * ciaoParagraph (1 space after), list with no space: * ciaoParagraph (2 spaces after), list with no space:* ciaoParagraph (3 spaces after), list with no space: * ciaoParagraph with block quote:QuotedParagraph with header:headerParagraph with header on two lines:header
158
- *** EOF ***
159
-
160
-
161
-
162
- OK!
163
-
164
-
165
-
166
- *** Output of Markdown.pl ***
167
- (not used anymore)
168
- *** Output of Markdown.pl (parsed) ***
169
- (not used anymore)
@@ -13,15 +13,3 @@ Ok, this\_was a\_really\_old bug
13
13
  Ok, this_was a_really_old bug
14
14
  *** Output of to_s ***
15
15
  Ok, this_was a_really_old bug
16
- *** EOF ***
17
-
18
-
19
-
20
- OK!
21
-
22
-
23
-
24
- *** Output of Markdown.pl ***
25
- (not used anymore)
26
- *** Output of Markdown.pl (parsed) ***
27
- (not used anymore)