mega-sharp-mod 0.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 (576) hide show
  1. checksums.yaml +7 -0
  2. data/kramdown-2.5.2/AUTHORS +1 -0
  3. data/kramdown-2.5.2/CONTRIBUTERS +93 -0
  4. data/kramdown-2.5.2/COPYING +30 -0
  5. data/kramdown-2.5.2/README.md +77 -0
  6. data/kramdown-2.5.2/VERSION +1 -0
  7. data/kramdown-2.5.2/bin/kramdown +135 -0
  8. data/kramdown-2.5.2/data/kramdown/document.html +22 -0
  9. data/kramdown-2.5.2/data/kramdown/document.latex +50 -0
  10. data/kramdown-2.5.2/lib/kramdown/converter/base.rb +257 -0
  11. data/kramdown-2.5.2/lib/kramdown/converter/hash_ast.rb +38 -0
  12. data/kramdown-2.5.2/lib/kramdown/converter/html.rb +545 -0
  13. data/kramdown-2.5.2/lib/kramdown/converter/kramdown.rb +458 -0
  14. data/kramdown-2.5.2/lib/kramdown/converter/latex.rb +626 -0
  15. data/kramdown-2.5.2/lib/kramdown/converter/man.rb +300 -0
  16. data/kramdown-2.5.2/lib/kramdown/converter/math_engine/mathjax.rb +32 -0
  17. data/kramdown-2.5.2/lib/kramdown/converter/remove_html_tags.rb +58 -0
  18. data/kramdown-2.5.2/lib/kramdown/converter/syntax_highlighter/minted.rb +35 -0
  19. data/kramdown-2.5.2/lib/kramdown/converter/syntax_highlighter/rouge.rb +85 -0
  20. data/kramdown-2.5.2/lib/kramdown/converter/syntax_highlighter.rb +56 -0
  21. data/kramdown-2.5.2/lib/kramdown/converter/toc.rb +69 -0
  22. data/kramdown-2.5.2/lib/kramdown/converter.rb +68 -0
  23. data/kramdown-2.5.2/lib/kramdown/document.rb +139 -0
  24. data/kramdown-2.5.2/lib/kramdown/element.rb +551 -0
  25. data/kramdown-2.5.2/lib/kramdown/error.rb +17 -0
  26. data/kramdown-2.5.2/lib/kramdown/options.rb +645 -0
  27. data/kramdown-2.5.2/lib/kramdown/parser/base.rb +137 -0
  28. data/kramdown-2.5.2/lib/kramdown/parser/html.rb +621 -0
  29. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/abbreviation.rb +80 -0
  30. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/autolink.rb +31 -0
  31. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/blank_line.rb +30 -0
  32. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/block_boundary.rb +34 -0
  33. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/blockquote.rb +38 -0
  34. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/codeblock.rb +57 -0
  35. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/codespan.rb +58 -0
  36. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/emphasis.rb +66 -0
  37. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/eob.rb +26 -0
  38. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/escaped_chars.rb +25 -0
  39. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/extensions.rb +214 -0
  40. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/footnote.rb +64 -0
  41. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/header.rb +70 -0
  42. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/horizontal_rule.rb +27 -0
  43. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/html.rb +165 -0
  44. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/html_entity.rb +34 -0
  45. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/line_break.rb +25 -0
  46. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/link.rb +149 -0
  47. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/list.rb +286 -0
  48. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/math.rb +53 -0
  49. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/paragraph.rb +62 -0
  50. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/smart_quotes.rb +174 -0
  51. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/table.rb +171 -0
  52. data/kramdown-2.5.2/lib/kramdown/parser/kramdown/typographic_symbol.rb +44 -0
  53. data/kramdown-2.5.2/lib/kramdown/parser/kramdown.rb +377 -0
  54. data/kramdown-2.5.2/lib/kramdown/parser/markdown.rb +57 -0
  55. data/kramdown-2.5.2/lib/kramdown/parser.rb +26 -0
  56. data/kramdown-2.5.2/lib/kramdown/utils/configurable.rb +45 -0
  57. data/kramdown-2.5.2/lib/kramdown/utils/entities.rb +1000 -0
  58. data/kramdown-2.5.2/lib/kramdown/utils/html.rb +84 -0
  59. data/kramdown-2.5.2/lib/kramdown/utils/lru_cache.rb +41 -0
  60. data/kramdown-2.5.2/lib/kramdown/utils/string_scanner.rb +81 -0
  61. data/kramdown-2.5.2/lib/kramdown/utils/unidecoder.rb +46 -0
  62. data/kramdown-2.5.2/lib/kramdown/utils.rb +45 -0
  63. data/kramdown-2.5.2/lib/kramdown/version.rb +15 -0
  64. data/kramdown-2.5.2/lib/kramdown.rb +10 -0
  65. data/kramdown-2.5.2/man/man1/kramdown.1 +373 -0
  66. data/kramdown-2.5.2/test/run_tests.rb +46 -0
  67. data/kramdown-2.5.2/test/test_files.rb +313 -0
  68. data/kramdown-2.5.2/test/test_location.rb +216 -0
  69. data/kramdown-2.5.2/test/test_string_scanner_kramdown.rb +27 -0
  70. data/kramdown-2.5.2/test/testcases/block/01_blank_line/spaces.html +1 -0
  71. data/kramdown-2.5.2/test/testcases/block/01_blank_line/spaces.text +3 -0
  72. data/kramdown-2.5.2/test/testcases/block/01_blank_line/tabs.html +1 -0
  73. data/kramdown-2.5.2/test/testcases/block/01_blank_line/tabs.text +6 -0
  74. data/kramdown-2.5.2/test/testcases/block/02_eob/beginning.html +1 -0
  75. data/kramdown-2.5.2/test/testcases/block/02_eob/beginning.text +3 -0
  76. data/kramdown-2.5.2/test/testcases/block/02_eob/end.html +1 -0
  77. data/kramdown-2.5.2/test/testcases/block/02_eob/end.text +3 -0
  78. data/kramdown-2.5.2/test/testcases/block/02_eob/middle.html +1 -0
  79. data/kramdown-2.5.2/test/testcases/block/02_eob/middle.text +5 -0
  80. data/kramdown-2.5.2/test/testcases/block/03_paragraph/indented.html +18 -0
  81. data/kramdown-2.5.2/test/testcases/block/03_paragraph/indented.html.gfm +18 -0
  82. data/kramdown-2.5.2/test/testcases/block/03_paragraph/indented.text +19 -0
  83. data/kramdown-2.5.2/test/testcases/block/03_paragraph/line_break_last_line.html +9 -0
  84. data/kramdown-2.5.2/test/testcases/block/03_paragraph/line_break_last_line.text +9 -0
  85. data/kramdown-2.5.2/test/testcases/block/03_paragraph/no_newline_at_end.html +5 -0
  86. data/kramdown-2.5.2/test/testcases/block/03_paragraph/no_newline_at_end.text +5 -0
  87. data/kramdown-2.5.2/test/testcases/block/03_paragraph/one_para.html +1 -0
  88. data/kramdown-2.5.2/test/testcases/block/03_paragraph/one_para.text +1 -0
  89. data/kramdown-2.5.2/test/testcases/block/03_paragraph/standalone_image.html +13 -0
  90. data/kramdown-2.5.2/test/testcases/block/03_paragraph/standalone_image.text +9 -0
  91. data/kramdown-2.5.2/test/testcases/block/03_paragraph/to_kramdown.kramdown +7 -0
  92. data/kramdown-2.5.2/test/testcases/block/03_paragraph/to_kramdown.text +5 -0
  93. data/kramdown-2.5.2/test/testcases/block/03_paragraph/two_para.html +4 -0
  94. data/kramdown-2.5.2/test/testcases/block/03_paragraph/two_para.text +4 -0
  95. data/kramdown-2.5.2/test/testcases/block/03_paragraph/with_html_to_native.html +1 -0
  96. data/kramdown-2.5.2/test/testcases/block/03_paragraph/with_html_to_native.options +1 -0
  97. data/kramdown-2.5.2/test/testcases/block/03_paragraph/with_html_to_native.text +1 -0
  98. data/kramdown-2.5.2/test/testcases/block/04_header/atx_header.html +57 -0
  99. data/kramdown-2.5.2/test/testcases/block/04_header/atx_header.text +54 -0
  100. data/kramdown-2.5.2/test/testcases/block/04_header/atx_header_no_newline_at_end.html +1 -0
  101. data/kramdown-2.5.2/test/testcases/block/04_header/atx_header_no_newline_at_end.text +1 -0
  102. data/kramdown-2.5.2/test/testcases/block/04_header/header_type_offset.html +11 -0
  103. data/kramdown-2.5.2/test/testcases/block/04_header/header_type_offset.kramdown +12 -0
  104. data/kramdown-2.5.2/test/testcases/block/04_header/header_type_offset.latex +12 -0
  105. data/kramdown-2.5.2/test/testcases/block/04_header/header_type_offset.options +2 -0
  106. data/kramdown-2.5.2/test/testcases/block/04_header/header_type_offset.text +13 -0
  107. data/kramdown-2.5.2/test/testcases/block/04_header/setext_header.html +32 -0
  108. data/kramdown-2.5.2/test/testcases/block/04_header/setext_header.text +39 -0
  109. data/kramdown-2.5.2/test/testcases/block/04_header/setext_header_no_newline_at_end.html +1 -0
  110. data/kramdown-2.5.2/test/testcases/block/04_header/setext_header_no_newline_at_end.text +2 -0
  111. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_prefix.html +3 -0
  112. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_prefix.options +2 -0
  113. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_prefix.text +3 -0
  114. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_stripping.html +1 -0
  115. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_stripping.options +1 -0
  116. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_id_stripping.text +1 -0
  117. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_ids.html +21 -0
  118. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_ids.options +2 -0
  119. data/kramdown-2.5.2/test/testcases/block/04_header/with_auto_ids.text +24 -0
  120. data/kramdown-2.5.2/test/testcases/block/04_header/with_header_links.html +7 -0
  121. data/kramdown-2.5.2/test/testcases/block/04_header/with_header_links.options +2 -0
  122. data/kramdown-2.5.2/test/testcases/block/04_header/with_header_links.text +8 -0
  123. data/kramdown-2.5.2/test/testcases/block/04_header/with_line_break.html +1 -0
  124. data/kramdown-2.5.2/test/testcases/block/04_header/with_line_break.text +1 -0
  125. data/kramdown-2.5.2/test/testcases/block/05_blockquote/indented.html +25 -0
  126. data/kramdown-2.5.2/test/testcases/block/05_blockquote/indented.text +14 -0
  127. data/kramdown-2.5.2/test/testcases/block/05_blockquote/lazy.html +34 -0
  128. data/kramdown-2.5.2/test/testcases/block/05_blockquote/lazy.text +20 -0
  129. data/kramdown-2.5.2/test/testcases/block/05_blockquote/nested.html +10 -0
  130. data/kramdown-2.5.2/test/testcases/block/05_blockquote/nested.text +6 -0
  131. data/kramdown-2.5.2/test/testcases/block/05_blockquote/no_newline_at_end.html +4 -0
  132. data/kramdown-2.5.2/test/testcases/block/05_blockquote/no_newline_at_end.text +2 -0
  133. data/kramdown-2.5.2/test/testcases/block/05_blockquote/very_long_line.html +3 -0
  134. data/kramdown-2.5.2/test/testcases/block/05_blockquote/very_long_line.text +1 -0
  135. data/kramdown-2.5.2/test/testcases/block/05_blockquote/with_code_blocks.html +15 -0
  136. data/kramdown-2.5.2/test/testcases/block/05_blockquote/with_code_blocks.text +11 -0
  137. data/kramdown-2.5.2/test/testcases/block/06_codeblock/disable-highlighting.html +4 -0
  138. data/kramdown-2.5.2/test/testcases/block/06_codeblock/disable-highlighting.options +1 -0
  139. data/kramdown-2.5.2/test/testcases/block/06_codeblock/disable-highlighting.text +4 -0
  140. data/kramdown-2.5.2/test/testcases/block/06_codeblock/error.html +4 -0
  141. data/kramdown-2.5.2/test/testcases/block/06_codeblock/error.text +4 -0
  142. data/kramdown-2.5.2/test/testcases/block/06_codeblock/guess_lang_css_class.html +15 -0
  143. data/kramdown-2.5.2/test/testcases/block/06_codeblock/guess_lang_css_class.options +2 -0
  144. data/kramdown-2.5.2/test/testcases/block/06_codeblock/guess_lang_css_class.text +13 -0
  145. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted-with-opts.latex +9 -0
  146. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted-with-opts.options +4 -0
  147. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted-with-opts.text +5 -0
  148. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted.latex +8 -0
  149. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted.options +3 -0
  150. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-minted.text +4 -0
  151. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-opts.html +6 -0
  152. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-opts.options +7 -0
  153. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting-opts.text +4 -0
  154. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting.html +5 -0
  155. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting.options +5 -0
  156. data/kramdown-2.5.2/test/testcases/block/06_codeblock/highlighting.text +4 -0
  157. data/kramdown-2.5.2/test/testcases/block/06_codeblock/issue_gh45.html +164 -0
  158. data/kramdown-2.5.2/test/testcases/block/06_codeblock/issue_gh45.test +188 -0
  159. data/kramdown-2.5.2/test/testcases/block/06_codeblock/lazy.html +4 -0
  160. data/kramdown-2.5.2/test/testcases/block/06_codeblock/lazy.text +5 -0
  161. data/kramdown-2.5.2/test/testcases/block/06_codeblock/no_newline_at_end.html +2 -0
  162. data/kramdown-2.5.2/test/testcases/block/06_codeblock/no_newline_at_end.text +1 -0
  163. data/kramdown-2.5.2/test/testcases/block/06_codeblock/no_newline_at_end_1.html +2 -0
  164. data/kramdown-2.5.2/test/testcases/block/06_codeblock/no_newline_at_end_1.text +2 -0
  165. data/kramdown-2.5.2/test/testcases/block/06_codeblock/normal.html +13 -0
  166. data/kramdown-2.5.2/test/testcases/block/06_codeblock/normal.text +10 -0
  167. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/disabled.html +2 -0
  168. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/disabled.options +4 -0
  169. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/disabled.text +1 -0
  170. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/multiple.html +11 -0
  171. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/multiple.options +4 -0
  172. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/multiple.text +11 -0
  173. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/simple.html +10 -0
  174. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/simple.options +3 -0
  175. data/kramdown-2.5.2/test/testcases/block/06_codeblock/rouge/simple.text +9 -0
  176. data/kramdown-2.5.2/test/testcases/block/06_codeblock/tilde_syntax.html +7 -0
  177. data/kramdown-2.5.2/test/testcases/block/06_codeblock/tilde_syntax.text +9 -0
  178. data/kramdown-2.5.2/test/testcases/block/06_codeblock/whitespace.html +3 -0
  179. data/kramdown-2.5.2/test/testcases/block/06_codeblock/whitespace.text +3 -0
  180. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_blank_line.html +13 -0
  181. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_blank_line.text +12 -0
  182. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_eob_marker.html +6 -0
  183. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_eob_marker.text +5 -0
  184. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_ial.html +6 -0
  185. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_ial.text +5 -0
  186. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block.html +24 -0
  187. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block.options +2 -0
  188. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block.text +33 -0
  189. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.html +8 -0
  190. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.options +2 -0
  191. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.text +11 -0
  192. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.html +3 -0
  193. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.options +2 -0
  194. data/kramdown-2.5.2/test/testcases/block/06_codeblock/with_lang_in_fenced_block_name_with_dash.text +4 -0
  195. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/error.html +7 -0
  196. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/error.text +7 -0
  197. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/normal.html +19 -0
  198. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/normal.text +20 -0
  199. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/sepspaces.html +3 -0
  200. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/sepspaces.text +3 -0
  201. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/septabs.html +3 -0
  202. data/kramdown-2.5.2/test/testcases/block/07_horizontal_rule/septabs.text +3 -0
  203. data/kramdown-2.5.2/test/testcases/block/08_list/brackets_in_item.latex +3 -0
  204. data/kramdown-2.5.2/test/testcases/block/08_list/brackets_in_item.text +1 -0
  205. data/kramdown-2.5.2/test/testcases/block/08_list/escaping.html +21 -0
  206. data/kramdown-2.5.2/test/testcases/block/08_list/escaping.text +21 -0
  207. data/kramdown-2.5.2/test/testcases/block/08_list/item_ial.html +10 -0
  208. data/kramdown-2.5.2/test/testcases/block/08_list/item_ial.text +8 -0
  209. data/kramdown-2.5.2/test/testcases/block/08_list/lazy.html +39 -0
  210. data/kramdown-2.5.2/test/testcases/block/08_list/lazy.text +29 -0
  211. data/kramdown-2.5.2/test/testcases/block/08_list/lazy_and_nested.html +9 -0
  212. data/kramdown-2.5.2/test/testcases/block/08_list/lazy_and_nested.text +4 -0
  213. data/kramdown-2.5.2/test/testcases/block/08_list/list_and_hr.html +9 -0
  214. data/kramdown-2.5.2/test/testcases/block/08_list/list_and_hr.text +5 -0
  215. data/kramdown-2.5.2/test/testcases/block/08_list/list_and_others.html +40 -0
  216. data/kramdown-2.5.2/test/testcases/block/08_list/list_and_others.text +26 -0
  217. data/kramdown-2.5.2/test/testcases/block/08_list/mixed.html +117 -0
  218. data/kramdown-2.5.2/test/testcases/block/08_list/mixed.text +66 -0
  219. data/kramdown-2.5.2/test/testcases/block/08_list/nested.html +17 -0
  220. data/kramdown-2.5.2/test/testcases/block/08_list/nested.text +7 -0
  221. data/kramdown-2.5.2/test/testcases/block/08_list/nested_compact.kramdown +7 -0
  222. data/kramdown-2.5.2/test/testcases/block/08_list/nested_compact.text +6 -0
  223. data/kramdown-2.5.2/test/testcases/block/08_list/other_first_element.html +39 -0
  224. data/kramdown-2.5.2/test/testcases/block/08_list/other_first_element.text +18 -0
  225. data/kramdown-2.5.2/test/testcases/block/08_list/simple_ol.html +19 -0
  226. data/kramdown-2.5.2/test/testcases/block/08_list/simple_ol.text +13 -0
  227. data/kramdown-2.5.2/test/testcases/block/08_list/simple_ul.html +48 -0
  228. data/kramdown-2.5.2/test/testcases/block/08_list/simple_ul.text +36 -0
  229. data/kramdown-2.5.2/test/testcases/block/08_list/single_item.html +3 -0
  230. data/kramdown-2.5.2/test/testcases/block/08_list/single_item.text +1 -0
  231. data/kramdown-2.5.2/test/testcases/block/08_list/special_cases.html +72 -0
  232. data/kramdown-2.5.2/test/testcases/block/08_list/special_cases.text +49 -0
  233. data/kramdown-2.5.2/test/testcases/block/09_html/cdata_section.html +10 -0
  234. data/kramdown-2.5.2/test/testcases/block/09_html/cdata_section.text +10 -0
  235. data/kramdown-2.5.2/test/testcases/block/09_html/comment.html +18 -0
  236. data/kramdown-2.5.2/test/testcases/block/09_html/comment.text +15 -0
  237. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/deflists.html +6 -0
  238. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/deflists.options +1 -0
  239. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/deflists.text +6 -0
  240. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/tables.html +14 -0
  241. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/tables.options +1 -0
  242. data/kramdown-2.5.2/test/testcases/block/09_html/content_model/tables.text +14 -0
  243. data/kramdown-2.5.2/test/testcases/block/09_html/html5_attributes.html +15 -0
  244. data/kramdown-2.5.2/test/testcases/block/09_html/html5_attributes.text +15 -0
  245. data/kramdown-2.5.2/test/testcases/block/09_html/html_after_block.html +7 -0
  246. data/kramdown-2.5.2/test/testcases/block/09_html/html_after_block.text +5 -0
  247. data/kramdown-2.5.2/test/testcases/block/09_html/html_and_codeblocks.html +15 -0
  248. data/kramdown-2.5.2/test/testcases/block/09_html/html_and_codeblocks.options +1 -0
  249. data/kramdown-2.5.2/test/testcases/block/09_html/html_and_codeblocks.text +13 -0
  250. data/kramdown-2.5.2/test/testcases/block/09_html/html_and_headers.html +5 -0
  251. data/kramdown-2.5.2/test/testcases/block/09_html/html_and_headers.text +6 -0
  252. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/code.html +10 -0
  253. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/code.text +9 -0
  254. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/comment.html +7 -0
  255. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/comment.text +8 -0
  256. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/emphasis.html +6 -0
  257. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/emphasis.text +6 -0
  258. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/entity.html +1 -0
  259. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/entity.text +1 -0
  260. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/header.html +6 -0
  261. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/header.options +2 -0
  262. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/header.text +6 -0
  263. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_dl.html +8 -0
  264. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_dl.text +8 -0
  265. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_ol.html +15 -0
  266. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_ol.text +17 -0
  267. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_ul.html +19 -0
  268. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/list_ul.text +22 -0
  269. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/options +1 -0
  270. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/paragraph.html +3 -0
  271. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/paragraph.text +4 -0
  272. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/table_normal.html +12 -0
  273. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/table_normal.text +12 -0
  274. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/table_simple.html +64 -0
  275. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/table_simple.text +74 -0
  276. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/typography.html +1 -0
  277. data/kramdown-2.5.2/test/testcases/block/09_html/html_to_native/typography.text +1 -0
  278. data/kramdown-2.5.2/test/testcases/block/09_html/invalid_html_1.html +5 -0
  279. data/kramdown-2.5.2/test/testcases/block/09_html/invalid_html_1.text +5 -0
  280. data/kramdown-2.5.2/test/testcases/block/09_html/invalid_html_2.html +5 -0
  281. data/kramdown-2.5.2/test/testcases/block/09_html/invalid_html_2.text +5 -0
  282. data/kramdown-2.5.2/test/testcases/block/09_html/markdown_attr.html +38 -0
  283. data/kramdown-2.5.2/test/testcases/block/09_html/markdown_attr.text +38 -0
  284. data/kramdown-2.5.2/test/testcases/block/09_html/not_parsed.html +24 -0
  285. data/kramdown-2.5.2/test/testcases/block/09_html/not_parsed.text +24 -0
  286. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_raw.html +35 -0
  287. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_raw.htmlinput +34 -0
  288. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_raw.options +1 -0
  289. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_raw.text +33 -0
  290. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_span.html +12 -0
  291. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_span.htmlinput +12 -0
  292. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_span.options +1 -0
  293. data/kramdown-2.5.2/test/testcases/block/09_html/parse_as_span.text +9 -0
  294. data/kramdown-2.5.2/test/testcases/block/09_html/parse_block_html.html +21 -0
  295. data/kramdown-2.5.2/test/testcases/block/09_html/parse_block_html.options +1 -0
  296. data/kramdown-2.5.2/test/testcases/block/09_html/parse_block_html.text +17 -0
  297. data/kramdown-2.5.2/test/testcases/block/09_html/processing_instruction.html +12 -0
  298. data/kramdown-2.5.2/test/testcases/block/09_html/processing_instruction.text +12 -0
  299. data/kramdown-2.5.2/test/testcases/block/09_html/simple.html +60 -0
  300. data/kramdown-2.5.2/test/testcases/block/09_html/simple.options +1 -0
  301. data/kramdown-2.5.2/test/testcases/block/09_html/simple.text +55 -0
  302. data/kramdown-2.5.2/test/testcases/block/09_html/standalone_image_in_div.htmlinput +7 -0
  303. data/kramdown-2.5.2/test/testcases/block/09_html/standalone_image_in_div.text +8 -0
  304. data/kramdown-2.5.2/test/testcases/block/09_html/table.kramdown +8 -0
  305. data/kramdown-2.5.2/test/testcases/block/09_html/table.text +7 -0
  306. data/kramdown-2.5.2/test/testcases/block/09_html/textarea.html +8 -0
  307. data/kramdown-2.5.2/test/testcases/block/09_html/textarea.text +8 -0
  308. data/kramdown-2.5.2/test/testcases/block/09_html/xml.html +8 -0
  309. data/kramdown-2.5.2/test/testcases/block/09_html/xml.text +7 -0
  310. data/kramdown-2.5.2/test/testcases/block/10_ald/simple.html +2 -0
  311. data/kramdown-2.5.2/test/testcases/block/10_ald/simple.text +8 -0
  312. data/kramdown-2.5.2/test/testcases/block/11_ial/auto_id_and_ial.html +1 -0
  313. data/kramdown-2.5.2/test/testcases/block/11_ial/auto_id_and_ial.options +1 -0
  314. data/kramdown-2.5.2/test/testcases/block/11_ial/auto_id_and_ial.text +2 -0
  315. data/kramdown-2.5.2/test/testcases/block/11_ial/nested.html +11 -0
  316. data/kramdown-2.5.2/test/testcases/block/11_ial/nested.text +15 -0
  317. data/kramdown-2.5.2/test/testcases/block/11_ial/simple.html +29 -0
  318. data/kramdown-2.5.2/test/testcases/block/11_ial/simple.text +41 -0
  319. data/kramdown-2.5.2/test/testcases/block/12_extension/comment.html +8 -0
  320. data/kramdown-2.5.2/test/testcases/block/12_extension/comment.text +12 -0
  321. data/kramdown-2.5.2/test/testcases/block/12_extension/ignored.html +8 -0
  322. data/kramdown-2.5.2/test/testcases/block/12_extension/ignored.text +8 -0
  323. data/kramdown-2.5.2/test/testcases/block/12_extension/nomarkdown.html +10 -0
  324. data/kramdown-2.5.2/test/testcases/block/12_extension/nomarkdown.kramdown +20 -0
  325. data/kramdown-2.5.2/test/testcases/block/12_extension/nomarkdown.latex +13 -0
  326. data/kramdown-2.5.2/test/testcases/block/12_extension/nomarkdown.text +21 -0
  327. data/kramdown-2.5.2/test/testcases/block/12_extension/options.html +21 -0
  328. data/kramdown-2.5.2/test/testcases/block/12_extension/options.text +23 -0
  329. data/kramdown-2.5.2/test/testcases/block/12_extension/options2.html +10 -0
  330. data/kramdown-2.5.2/test/testcases/block/12_extension/options2.text +5 -0
  331. data/kramdown-2.5.2/test/testcases/block/12_extension/options3.html +8 -0
  332. data/kramdown-2.5.2/test/testcases/block/12_extension/options3.text +7 -0
  333. data/kramdown-2.5.2/test/testcases/block/13_definition_list/auto_ids.html +15 -0
  334. data/kramdown-2.5.2/test/testcases/block/13_definition_list/auto_ids.text +18 -0
  335. data/kramdown-2.5.2/test/testcases/block/13_definition_list/definition_at_beginning.html +1 -0
  336. data/kramdown-2.5.2/test/testcases/block/13_definition_list/definition_at_beginning.text +1 -0
  337. data/kramdown-2.5.2/test/testcases/block/13_definition_list/deflist_ial.html +4 -0
  338. data/kramdown-2.5.2/test/testcases/block/13_definition_list/deflist_ial.text +4 -0
  339. data/kramdown-2.5.2/test/testcases/block/13_definition_list/item_ial.html +17 -0
  340. data/kramdown-2.5.2/test/testcases/block/13_definition_list/item_ial.text +16 -0
  341. data/kramdown-2.5.2/test/testcases/block/13_definition_list/multiple_terms.html +13 -0
  342. data/kramdown-2.5.2/test/testcases/block/13_definition_list/multiple_terms.text +10 -0
  343. data/kramdown-2.5.2/test/testcases/block/13_definition_list/no_def_list.html +2 -0
  344. data/kramdown-2.5.2/test/testcases/block/13_definition_list/no_def_list.text +2 -0
  345. data/kramdown-2.5.2/test/testcases/block/13_definition_list/para_wrapping.html +10 -0
  346. data/kramdown-2.5.2/test/testcases/block/13_definition_list/para_wrapping.text +6 -0
  347. data/kramdown-2.5.2/test/testcases/block/13_definition_list/separated_by_eob.html +8 -0
  348. data/kramdown-2.5.2/test/testcases/block/13_definition_list/separated_by_eob.text +5 -0
  349. data/kramdown-2.5.2/test/testcases/block/13_definition_list/simple.html +10 -0
  350. data/kramdown-2.5.2/test/testcases/block/13_definition_list/simple.text +10 -0
  351. data/kramdown-2.5.2/test/testcases/block/13_definition_list/styled_terms.html +4 -0
  352. data/kramdown-2.5.2/test/testcases/block/13_definition_list/styled_terms.text +2 -0
  353. data/kramdown-2.5.2/test/testcases/block/13_definition_list/too_much_space.html +3 -0
  354. data/kramdown-2.5.2/test/testcases/block/13_definition_list/too_much_space.text +4 -0
  355. data/kramdown-2.5.2/test/testcases/block/13_definition_list/with_blocks.html +38 -0
  356. data/kramdown-2.5.2/test/testcases/block/13_definition_list/with_blocks.text +24 -0
  357. data/kramdown-2.5.2/test/testcases/block/14_table/empty_tag_in_cell.html +8 -0
  358. data/kramdown-2.5.2/test/testcases/block/14_table/empty_tag_in_cell.options +1 -0
  359. data/kramdown-2.5.2/test/testcases/block/14_table/empty_tag_in_cell.text +1 -0
  360. data/kramdown-2.5.2/test/testcases/block/14_table/errors.html +12 -0
  361. data/kramdown-2.5.2/test/testcases/block/14_table/errors.text +13 -0
  362. data/kramdown-2.5.2/test/testcases/block/14_table/escaping.html +52 -0
  363. data/kramdown-2.5.2/test/testcases/block/14_table/escaping.text +19 -0
  364. data/kramdown-2.5.2/test/testcases/block/14_table/footer.html +65 -0
  365. data/kramdown-2.5.2/test/testcases/block/14_table/footer.text +25 -0
  366. data/kramdown-2.5.2/test/testcases/block/14_table/header.html +117 -0
  367. data/kramdown-2.5.2/test/testcases/block/14_table/header.text +39 -0
  368. data/kramdown-2.5.2/test/testcases/block/14_table/no_table.html +3 -0
  369. data/kramdown-2.5.2/test/testcases/block/14_table/no_table.text +3 -0
  370. data/kramdown-2.5.2/test/testcases/block/14_table/simple.html +192 -0
  371. data/kramdown-2.5.2/test/testcases/block/14_table/simple.text +53 -0
  372. data/kramdown-2.5.2/test/testcases/block/14_table/table_with_footnote.html +25 -0
  373. data/kramdown-2.5.2/test/testcases/block/14_table/table_with_footnote.latex +11 -0
  374. data/kramdown-2.5.2/test/testcases/block/14_table/table_with_footnote.text +6 -0
  375. data/kramdown-2.5.2/test/testcases/block/15_math/gh_128.html +1 -0
  376. data/kramdown-2.5.2/test/testcases/block/15_math/gh_128.text +1 -0
  377. data/kramdown-2.5.2/test/testcases/block/15_math/no_engine.html +3 -0
  378. data/kramdown-2.5.2/test/testcases/block/15_math/no_engine.options +1 -0
  379. data/kramdown-2.5.2/test/testcases/block/15_math/no_engine.text +2 -0
  380. data/kramdown-2.5.2/test/testcases/block/15_math/normal.html +30 -0
  381. data/kramdown-2.5.2/test/testcases/block/15_math/normal.text +30 -0
  382. data/kramdown-2.5.2/test/testcases/block/16_toc/no_toc.html +14 -0
  383. data/kramdown-2.5.2/test/testcases/block/16_toc/no_toc.text +16 -0
  384. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_exclude.html +35 -0
  385. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_exclude.options +1 -0
  386. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_exclude.text +19 -0
  387. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_levels.html +24 -0
  388. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_levels.options +2 -0
  389. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_levels.text +16 -0
  390. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_footnotes.html +13 -0
  391. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_footnotes.options +1 -0
  392. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_footnotes.text +6 -0
  393. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_links.html +8 -0
  394. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_links.options +2 -0
  395. data/kramdown-2.5.2/test/testcases/block/16_toc/toc_with_links.text +8 -0
  396. data/kramdown-2.5.2/test/testcases/cjk-line-break.html +4 -0
  397. data/kramdown-2.5.2/test/testcases/cjk-line-break.options +1 -0
  398. data/kramdown-2.5.2/test/testcases/cjk-line-break.text +12 -0
  399. data/kramdown-2.5.2/test/testcases/encoding.html +46 -0
  400. data/kramdown-2.5.2/test/testcases/encoding.text +28 -0
  401. data/kramdown-2.5.2/test/testcases/man/example.man +123 -0
  402. data/kramdown-2.5.2/test/testcases/man/example.text +85 -0
  403. data/kramdown-2.5.2/test/testcases/man/heading-name-dash-description.man +4 -0
  404. data/kramdown-2.5.2/test/testcases/man/heading-name-dash-description.text +1 -0
  405. data/kramdown-2.5.2/test/testcases/man/heading-name-description.man +4 -0
  406. data/kramdown-2.5.2/test/testcases/man/heading-name-description.text +2 -0
  407. data/kramdown-2.5.2/test/testcases/man/heading-name-section-description.man +4 -0
  408. data/kramdown-2.5.2/test/testcases/man/heading-name-section-description.text +1 -0
  409. data/kramdown-2.5.2/test/testcases/man/heading-name-section.man +2 -0
  410. data/kramdown-2.5.2/test/testcases/man/heading-name-section.text +1 -0
  411. data/kramdown-2.5.2/test/testcases/man/heading-name.man +2 -0
  412. data/kramdown-2.5.2/test/testcases/man/heading-name.text +1 -0
  413. data/kramdown-2.5.2/test/testcases/man/sections.man +4 -0
  414. data/kramdown-2.5.2/test/testcases/man/sections.text +11 -0
  415. data/kramdown-2.5.2/test/testcases/man/text-escaping.man +8 -0
  416. data/kramdown-2.5.2/test/testcases/man/text-escaping.text +7 -0
  417. data/kramdown-2.5.2/test/testcases/span/01_link/empty.html +5 -0
  418. data/kramdown-2.5.2/test/testcases/span/01_link/empty.text +5 -0
  419. data/kramdown-2.5.2/test/testcases/span/01_link/empty_title.htmlinput +3 -0
  420. data/kramdown-2.5.2/test/testcases/span/01_link/empty_title.text +7 -0
  421. data/kramdown-2.5.2/test/testcases/span/01_link/image_in_a.html +5 -0
  422. data/kramdown-2.5.2/test/testcases/span/01_link/image_in_a.text +5 -0
  423. data/kramdown-2.5.2/test/testcases/span/01_link/imagelinks.html +15 -0
  424. data/kramdown-2.5.2/test/testcases/span/01_link/imagelinks.text +18 -0
  425. data/kramdown-2.5.2/test/testcases/span/01_link/inline.html +46 -0
  426. data/kramdown-2.5.2/test/testcases/span/01_link/inline.text +48 -0
  427. data/kramdown-2.5.2/test/testcases/span/01_link/latex_escaping.latex +6 -0
  428. data/kramdown-2.5.2/test/testcases/span/01_link/latex_escaping.text +5 -0
  429. data/kramdown-2.5.2/test/testcases/span/01_link/link_defs.html +9 -0
  430. data/kramdown-2.5.2/test/testcases/span/01_link/link_defs.text +27 -0
  431. data/kramdown-2.5.2/test/testcases/span/01_link/link_defs_with_ial.html +4 -0
  432. data/kramdown-2.5.2/test/testcases/span/01_link/link_defs_with_ial.text +16 -0
  433. data/kramdown-2.5.2/test/testcases/span/01_link/links_with_angle_brackets.html +3 -0
  434. data/kramdown-2.5.2/test/testcases/span/01_link/links_with_angle_brackets.text +3 -0
  435. data/kramdown-2.5.2/test/testcases/span/01_link/reference.html +37 -0
  436. data/kramdown-2.5.2/test/testcases/span/01_link/reference.options +3 -0
  437. data/kramdown-2.5.2/test/testcases/span/01_link/reference.text +53 -0
  438. data/kramdown-2.5.2/test/testcases/span/02_emphasis/empty.html +3 -0
  439. data/kramdown-2.5.2/test/testcases/span/02_emphasis/empty.text +3 -0
  440. data/kramdown-2.5.2/test/testcases/span/02_emphasis/errors.html +9 -0
  441. data/kramdown-2.5.2/test/testcases/span/02_emphasis/errors.text +9 -0
  442. data/kramdown-2.5.2/test/testcases/span/02_emphasis/nesting.html +41 -0
  443. data/kramdown-2.5.2/test/testcases/span/02_emphasis/nesting.text +36 -0
  444. data/kramdown-2.5.2/test/testcases/span/02_emphasis/normal.html +70 -0
  445. data/kramdown-2.5.2/test/testcases/span/02_emphasis/normal.options +1 -0
  446. data/kramdown-2.5.2/test/testcases/span/02_emphasis/normal.text +68 -0
  447. data/kramdown-2.5.2/test/testcases/span/03_codespan/empty.html +5 -0
  448. data/kramdown-2.5.2/test/testcases/span/03_codespan/empty.text +5 -0
  449. data/kramdown-2.5.2/test/testcases/span/03_codespan/errors.html +1 -0
  450. data/kramdown-2.5.2/test/testcases/span/03_codespan/errors.text +1 -0
  451. data/kramdown-2.5.2/test/testcases/span/03_codespan/highlighting-minted.latex +2 -0
  452. data/kramdown-2.5.2/test/testcases/span/03_codespan/highlighting-minted.options +1 -0
  453. data/kramdown-2.5.2/test/testcases/span/03_codespan/highlighting-minted.text +1 -0
  454. data/kramdown-2.5.2/test/testcases/span/03_codespan/highlighting.html +1 -0
  455. data/kramdown-2.5.2/test/testcases/span/03_codespan/highlighting.text +1 -0
  456. data/kramdown-2.5.2/test/testcases/span/03_codespan/normal-css-class.html +1 -0
  457. data/kramdown-2.5.2/test/testcases/span/03_codespan/normal-css-class.options +2 -0
  458. data/kramdown-2.5.2/test/testcases/span/03_codespan/normal-css-class.text +1 -0
  459. data/kramdown-2.5.2/test/testcases/span/03_codespan/normal.html +20 -0
  460. data/kramdown-2.5.2/test/testcases/span/03_codespan/normal.text +20 -0
  461. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/disabled.html +1 -0
  462. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/disabled.options +4 -0
  463. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/disabled.text +1 -0
  464. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/simple.html +1 -0
  465. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/simple.options +1 -0
  466. data/kramdown-2.5.2/test/testcases/span/03_codespan/rouge/simple.text +1 -0
  467. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_inline.html +79 -0
  468. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_inline.options +1 -0
  469. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_inline.text +38 -0
  470. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_text.html +9 -0
  471. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_text.options +1 -0
  472. data/kramdown-2.5.2/test/testcases/span/04_footnote/backlink_text.text +3 -0
  473. data/kramdown-2.5.2/test/testcases/span/04_footnote/definitions.html +17 -0
  474. data/kramdown-2.5.2/test/testcases/span/04_footnote/definitions.latex +17 -0
  475. data/kramdown-2.5.2/test/testcases/span/04_footnote/definitions.text +24 -0
  476. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_link_text.html +12 -0
  477. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_link_text.options +1 -0
  478. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_link_text.text +4 -0
  479. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_nr.html +12 -0
  480. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_nr.latex +2 -0
  481. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_nr.options +1 -0
  482. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_nr.text +4 -0
  483. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_prefix.html +12 -0
  484. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_prefix.options +1 -0
  485. data/kramdown-2.5.2/test/testcases/span/04_footnote/footnote_prefix.text +4 -0
  486. data/kramdown-2.5.2/test/testcases/span/04_footnote/inside_footnote.html +17 -0
  487. data/kramdown-2.5.2/test/testcases/span/04_footnote/inside_footnote.text +9 -0
  488. data/kramdown-2.5.2/test/testcases/span/04_footnote/markers.html +46 -0
  489. data/kramdown-2.5.2/test/testcases/span/04_footnote/markers.latex +23 -0
  490. data/kramdown-2.5.2/test/testcases/span/04_footnote/markers.options +2 -0
  491. data/kramdown-2.5.2/test/testcases/span/04_footnote/markers.text +27 -0
  492. data/kramdown-2.5.2/test/testcases/span/04_footnote/placement.html +11 -0
  493. data/kramdown-2.5.2/test/testcases/span/04_footnote/placement.options +1 -0
  494. data/kramdown-2.5.2/test/testcases/span/04_footnote/placement.text +8 -0
  495. data/kramdown-2.5.2/test/testcases/span/04_footnote/regexp_problem.html +14 -0
  496. data/kramdown-2.5.2/test/testcases/span/04_footnote/regexp_problem.options +2 -0
  497. data/kramdown-2.5.2/test/testcases/span/04_footnote/regexp_problem.text +52 -0
  498. data/kramdown-2.5.2/test/testcases/span/04_footnote/without_backlink.html +9 -0
  499. data/kramdown-2.5.2/test/testcases/span/04_footnote/without_backlink.options +1 -0
  500. data/kramdown-2.5.2/test/testcases/span/04_footnote/without_backlink.text +3 -0
  501. data/kramdown-2.5.2/test/testcases/span/05_html/across_lines.html +1 -0
  502. data/kramdown-2.5.2/test/testcases/span/05_html/across_lines.text +2 -0
  503. data/kramdown-2.5.2/test/testcases/span/05_html/button.html +7 -0
  504. data/kramdown-2.5.2/test/testcases/span/05_html/button.text +7 -0
  505. data/kramdown-2.5.2/test/testcases/span/05_html/invalid.html +1 -0
  506. data/kramdown-2.5.2/test/testcases/span/05_html/invalid.text +1 -0
  507. data/kramdown-2.5.2/test/testcases/span/05_html/link_with_mailto.html +1 -0
  508. data/kramdown-2.5.2/test/testcases/span/05_html/link_with_mailto.text +1 -0
  509. data/kramdown-2.5.2/test/testcases/span/05_html/mark_element.html +3 -0
  510. data/kramdown-2.5.2/test/testcases/span/05_html/mark_element.text +3 -0
  511. data/kramdown-2.5.2/test/testcases/span/05_html/markdown_attr.html +6 -0
  512. data/kramdown-2.5.2/test/testcases/span/05_html/markdown_attr.text +6 -0
  513. data/kramdown-2.5.2/test/testcases/span/05_html/normal.html +43 -0
  514. data/kramdown-2.5.2/test/testcases/span/05_html/normal.text +43 -0
  515. data/kramdown-2.5.2/test/testcases/span/05_html/raw_span_elements.html +2 -0
  516. data/kramdown-2.5.2/test/testcases/span/05_html/raw_span_elements.text +2 -0
  517. data/kramdown-2.5.2/test/testcases/span/05_html/xml.html +5 -0
  518. data/kramdown-2.5.2/test/testcases/span/05_html/xml.text +5 -0
  519. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev.html +25 -0
  520. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev.text +41 -0
  521. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev_defs.html +2 -0
  522. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev_defs.text +5 -0
  523. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev_in_html.html +9 -0
  524. data/kramdown-2.5.2/test/testcases/span/abbreviations/abbrev_in_html.text +10 -0
  525. data/kramdown-2.5.2/test/testcases/span/abbreviations/in_footnote.html +9 -0
  526. data/kramdown-2.5.2/test/testcases/span/abbreviations/in_footnote.text +5 -0
  527. data/kramdown-2.5.2/test/testcases/span/autolinks/url_links.html +15 -0
  528. data/kramdown-2.5.2/test/testcases/span/autolinks/url_links.text +16 -0
  529. data/kramdown-2.5.2/test/testcases/span/escaped_chars/normal.html +47 -0
  530. data/kramdown-2.5.2/test/testcases/span/escaped_chars/normal.text +47 -0
  531. data/kramdown-2.5.2/test/testcases/span/extension/comment.html +6 -0
  532. data/kramdown-2.5.2/test/testcases/span/extension/comment.text +6 -0
  533. data/kramdown-2.5.2/test/testcases/span/extension/ignored.html +1 -0
  534. data/kramdown-2.5.2/test/testcases/span/extension/ignored.text +1 -0
  535. data/kramdown-2.5.2/test/testcases/span/extension/nomarkdown.html +1 -0
  536. data/kramdown-2.5.2/test/testcases/span/extension/nomarkdown.text +1 -0
  537. data/kramdown-2.5.2/test/testcases/span/extension/options.html +1 -0
  538. data/kramdown-2.5.2/test/testcases/span/extension/options.text +1 -0
  539. data/kramdown-2.5.2/test/testcases/span/ial/simple.html +6 -0
  540. data/kramdown-2.5.2/test/testcases/span/ial/simple.text +6 -0
  541. data/kramdown-2.5.2/test/testcases/span/line_breaks/normal.html +11 -0
  542. data/kramdown-2.5.2/test/testcases/span/line_breaks/normal.latex +12 -0
  543. data/kramdown-2.5.2/test/testcases/span/line_breaks/normal.text +11 -0
  544. data/kramdown-2.5.2/test/testcases/span/math/no_engine.html +1 -0
  545. data/kramdown-2.5.2/test/testcases/span/math/no_engine.options +1 -0
  546. data/kramdown-2.5.2/test/testcases/span/math/no_engine.text +1 -0
  547. data/kramdown-2.5.2/test/testcases/span/math/normal.html +10 -0
  548. data/kramdown-2.5.2/test/testcases/span/math/normal.text +10 -0
  549. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities.html +6 -0
  550. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities.options +1 -0
  551. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities.text +6 -0
  552. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_char.html +1 -0
  553. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_char.options +2 -0
  554. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_char.text +1 -0
  555. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_input.html +1 -0
  556. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_input.options +1 -0
  557. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_as_input.text +1 -0
  558. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_numeric.html +1 -0
  559. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_numeric.options +1 -0
  560. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_numeric.text +1 -0
  561. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_symbolic.html +1 -0
  562. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_symbolic.options +1 -0
  563. data/kramdown-2.5.2/test/testcases/span/text_substitutions/entities_symbolic.text +1 -0
  564. data/kramdown-2.5.2/test/testcases/span/text_substitutions/greaterthan.html +1 -0
  565. data/kramdown-2.5.2/test/testcases/span/text_substitutions/greaterthan.text +1 -0
  566. data/kramdown-2.5.2/test/testcases/span/text_substitutions/lowerthan.html +1 -0
  567. data/kramdown-2.5.2/test/testcases/span/text_substitutions/lowerthan.text +1 -0
  568. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography.html +40 -0
  569. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography.options +1 -0
  570. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography.text +40 -0
  571. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography_subst.html +3 -0
  572. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography_subst.latex +4 -0
  573. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography_subst.options +8 -0
  574. data/kramdown-2.5.2/test/testcases/span/text_substitutions/typography_subst.text +3 -0
  575. data/mega-sharp-mod.gemspec +12 -0
  576. metadata +615 -0
@@ -0,0 +1,645 @@
1
+ # -*- coding: utf-8; frozen_string_literal: true -*-
2
+ #
3
+ #--
4
+ # Copyright (C) 2009-2026 Thomas Leitner <t_leitner@gmx.at>
5
+ #
6
+ # This file is part of kramdown which is licensed under the MIT.
7
+ #++
8
+ #
9
+
10
+ require 'yaml'
11
+
12
+ module Kramdown
13
+
14
+ # This module defines all options that are used by parsers and/or converters as well as providing
15
+ # methods to deal with the options.
16
+ module Options
17
+
18
+ # Helper class introducing a boolean type for specifying boolean values (+true+ and +false+) as
19
+ # option types.
20
+ class Boolean
21
+
22
+ # Return +true+ if +other+ is either +true+ or +false+
23
+ def self.===(other)
24
+ FalseClass === other || TrueClass === other
25
+ end
26
+
27
+ end
28
+
29
+ # ----------------------------
30
+ # :section: Option definitions
31
+ #
32
+ # This sections describes the methods that can be used on the Options module.
33
+ # ----------------------------
34
+
35
+ # Struct class for storing the definition of an option.
36
+ Definition = Struct.new(:name, :type, :default, :desc, :validator)
37
+
38
+ # Allowed option types.
39
+ ALLOWED_TYPES = [String, Integer, Float, Symbol, Boolean, Object]
40
+
41
+ @options = {}
42
+ @defaults = nil
43
+
44
+ # Define a new option called +name+ (a Symbol) with the given +type+ (String, Integer, Float,
45
+ # Symbol, Boolean, Object), default value +default+ and the description +desc+. If a block is
46
+ # specified, it should validate the value and either raise an error or return a valid value.
47
+ #
48
+ # The type 'Object' should only be used for complex types for which none of the other types
49
+ # suffices. A block needs to be specified when using type 'Object' and it has to cope with
50
+ # a value given as string and as the opaque type.
51
+ def self.define(name, type, default, desc, &block)
52
+ name = name.to_sym
53
+ raise ArgumentError, "Option name #{name} is already used" if @options.key?(name)
54
+ raise ArgumentError, "Invalid option type #{type} specified" unless ALLOWED_TYPES.include?(type)
55
+ raise ArgumentError, "Invalid type for default value" if !(type === default) && !default.nil?
56
+ raise ArgumentError, "Missing validator block" if type == Object && block.nil?
57
+ @options[name] = Definition.new(name, type, default, desc, block)
58
+ @defaults = nil
59
+ end
60
+
61
+ # Return all option definitions.
62
+ def self.definitions
63
+ @options
64
+ end
65
+
66
+ # Return +true+ if an option called +name+ is defined.
67
+ def self.defined?(name)
68
+ @options.key?(name.to_sym)
69
+ end
70
+
71
+ # Return a Hash with the default values for all options.
72
+ def self.defaults
73
+ @defaults ||=
74
+ begin
75
+ temp = {}
76
+ @options.each {|_n, o| temp[o.name] = o.default }
77
+ temp.freeze
78
+ end
79
+ end
80
+
81
+ # Merge the #defaults Hash with the *parsed* options from the given Hash, i.e. only valid option
82
+ # names are considered and their value is run through the #parse method.
83
+ def self.merge(hash)
84
+ temp = defaults.dup
85
+ hash.each do |k, v|
86
+ k = k.to_sym
87
+ temp[k] = @options.key?(k) ? parse(k, v) : v
88
+ end
89
+ temp
90
+ end
91
+
92
+ # Parse the given value +data+ as if it was a value for the option +name+ and return the parsed
93
+ # value with the correct type.
94
+ #
95
+ # If +data+ already has the correct type, it is just returned. Otherwise it is converted to a
96
+ # String and then to the correct type.
97
+ def self.parse(name, data)
98
+ name = name.to_sym
99
+ raise ArgumentError, "No option named #{name} defined" unless @options.key?(name)
100
+ unless @options[name].type === data
101
+ data = data.to_s
102
+ data = if @options[name].type == String
103
+ data
104
+ elsif @options[name].type == Integer
105
+ Integer(data) rescue raise Kramdown::Error, "Invalid integer value for option '#{name}': '#{data}'"
106
+ elsif @options[name].type == Float
107
+ Float(data) rescue raise Kramdown::Error, "Invalid float value for option '#{name}': '#{data}'"
108
+ elsif @options[name].type == Symbol
109
+ str_to_sym(data)
110
+ elsif @options[name].type == Boolean
111
+ data.downcase.strip != 'false' && !data.empty?
112
+ end
113
+ end
114
+ data = @options[name].validator[data] if @options[name].validator
115
+ data
116
+ end
117
+
118
+ # Converts the given String +data+ into a Symbol or +nil+ with the
119
+ # following provisions:
120
+ #
121
+ # - A leading colon is stripped from the string.
122
+ # - An empty value or a value equal to "nil" results in +nil+.
123
+ def self.str_to_sym(data)
124
+ data = data.strip
125
+ data = data[1..-1] if data[0] == ':'
126
+ (data.empty? || data == 'nil' ? nil : data.to_sym)
127
+ end
128
+
129
+ # ----------------------------
130
+ # :section: Option Validators
131
+ #
132
+ # This sections contains all pre-defined option validators.
133
+ # ----------------------------
134
+
135
+ # Ensures that the option value +val+ for the option called +name+ is a valid array. The
136
+ # parameter +val+ can be
137
+ #
138
+ # - a comma separated string which is split into an array of values
139
+ # - or an array.
140
+ #
141
+ # Optionally, the array is checked for the correct size.
142
+ def self.simple_array_validator(val, name, size = nil)
143
+ if String === val
144
+ val = val.split(",")
145
+ elsif !(Array === val)
146
+ raise Kramdown::Error, "Invalid type #{val.class} for option #{name}"
147
+ end
148
+ if size && val.size != size
149
+ raise Kramdown::Error, "Option #{name} needs exactly #{size} values"
150
+ end
151
+ val
152
+ end
153
+
154
+ # Ensures that the option value +val+ for the option called +name+ is a valid hash. The
155
+ # parameter +val+ can be
156
+ #
157
+ # - a hash in YAML format
158
+ # - or a Ruby Hash object.
159
+ def self.simple_hash_validator(val, name)
160
+ if String === val
161
+ begin
162
+ val = YAML.safe_load(val)
163
+ rescue RuntimeError, ArgumentError, SyntaxError
164
+ raise Kramdown::Error, "Invalid YAML value for option #{name}"
165
+ end
166
+ end
167
+ raise Kramdown::Error, "Invalid type #{val.class} for option #{name}" unless Hash === val
168
+ val
169
+ end
170
+
171
+ # ----------------------------
172
+ # :section: Option Definitions
173
+ #
174
+ # This sections contains all option definitions that are used by the included
175
+ # parsers/converters.
176
+ # ----------------------------
177
+
178
+ define(:template, String, '', <<~EOF)
179
+ The name of an ERB template file that should be used to wrap the output
180
+ or the ERB template itself.
181
+
182
+ This is used to wrap the output in an environment so that the output can
183
+ be used as a stand-alone document. For example, an HTML template would
184
+ provide the needed header and body tags so that the whole output is a
185
+ valid HTML file. If no template is specified, the output will be just
186
+ the converted text.
187
+
188
+ When resolving the template file, the given template name is used first.
189
+ If such a file is not found, the converter extension (the same as the
190
+ converter name) is appended. If the file still cannot be found, the
191
+ templates name is interpreted as a template name that is provided by
192
+ kramdown (without the converter extension). If the file is still not
193
+ found, the template name is checked if it starts with 'string://' and if
194
+ it does, this prefix is removed and the rest is used as template
195
+ content.
196
+
197
+ kramdown provides a default template named 'document' for each converter.
198
+
199
+ Default: ''
200
+ Used by: all converters
201
+ EOF
202
+
203
+ define(:auto_ids, Boolean, true, <<~EOF)
204
+ Use automatic header ID generation
205
+
206
+ If this option is `true`, ID values for all headers are automatically
207
+ generated if no ID is explicitly specified.
208
+
209
+ Default: true
210
+ Used by: HTML/Latex converter
211
+ EOF
212
+
213
+ define(:auto_id_stripping, Boolean, false, <<~EOF)
214
+ Strip all formatting from header text for automatic ID generation
215
+
216
+ If this option is `true`, only the text elements of a header are used
217
+ for generating the ID later (in contrast to just using the raw header
218
+ text line).
219
+
220
+ This option will be removed in version 2.0 because this will be the
221
+ default then.
222
+
223
+ Default: false
224
+ Used by: kramdown parser
225
+ EOF
226
+
227
+ define(:auto_id_prefix, String, '', <<~EOF)
228
+ Prefix used for automatically generated header IDs
229
+
230
+ This option can be used to set a prefix for the automatically generated
231
+ header IDs so that there is no conflict when rendering multiple kramdown
232
+ documents into one output file separately. The prefix should only
233
+ contain characters that are valid in an ID!
234
+
235
+ Default: ''
236
+ Used by: HTML/Latex converter
237
+ EOF
238
+
239
+ define(:header_links, Boolean, false, <<~EOF)
240
+ Adds anchor tags within headers that can be used to generate permalinks
241
+ when not using a table of contents.
242
+
243
+ The anchor tags are empty, but can be styled to your liking.
244
+
245
+ Default: false
246
+ EOF
247
+
248
+ define(:transliterated_header_ids, Boolean, false, <<~EOF)
249
+ Transliterate the header text before generating the ID
250
+
251
+ Only ASCII characters are used in headers IDs. This is not good for
252
+ languages with many non-ASCII characters. By enabling this option
253
+ the header text is transliterated to ASCII as good as possible so that
254
+ the resulting header ID is more useful.
255
+
256
+ The stringex library needs to be installed for this feature to work!
257
+
258
+ Default: false
259
+ Used by: HTML/Latex converter
260
+ EOF
261
+
262
+ define(:parse_block_html, Boolean, false, <<~EOF)
263
+ Process kramdown syntax in block HTML tags
264
+
265
+ If this option is `true`, the kramdown parser processes the content of
266
+ block HTML tags as text containing block-level elements. Since this is
267
+ not wanted normally, the default is `false`. It is normally better to
268
+ selectively enable kramdown processing via the markdown attribute.
269
+
270
+ Default: false
271
+ Used by: kramdown parser
272
+ EOF
273
+
274
+ define(:parse_span_html, Boolean, true, <<~EOF)
275
+ Process kramdown syntax in span HTML tags
276
+
277
+ If this option is `true`, the kramdown parser processes the content of
278
+ span HTML tags as text containing span-level elements.
279
+
280
+ Default: true
281
+ Used by: kramdown parser
282
+ EOF
283
+
284
+ define(:html_to_native, Boolean, false, <<~EOF)
285
+ Convert HTML elements to native elements
286
+
287
+ If this option is `true`, the parser converts HTML elements to native
288
+ elements. For example, when parsing `<em>hallo</em>` the emphasis tag
289
+ would normally be converted to an `:html` element with tag type `:em`.
290
+ If `html_to_native` is `true`, then the emphasis would be converted to a
291
+ native `:em` element.
292
+
293
+ This is useful for converters that cannot deal with HTML elements.
294
+
295
+ Default: false
296
+ Used by: kramdown parser
297
+ EOF
298
+
299
+ define(:link_defs, Object, {}, <<~EOF) do |val|
300
+ Pre-defines link definitions
301
+
302
+ This option can be used to pre-define link definitions. The value needs
303
+ to be a Hash where the keys are the link identifiers and the values are
304
+ two element Arrays with the link URL and the link title.
305
+
306
+ If the value is a String, it has to contain a valid YAML hash and the
307
+ hash has to follow the above guidelines.
308
+
309
+ Default: {}
310
+ Used by: kramdown parser
311
+ EOF
312
+ val = simple_hash_validator(val, :link_defs)
313
+ val.each do |_k, v|
314
+ if !(Array === v) || v.size > 2 || v.empty?
315
+ raise Kramdown::Error, "Invalid structure for hash value of option #{name}"
316
+ end
317
+ v << nil if v.size == 1
318
+ end
319
+ val
320
+ end
321
+
322
+ define(:footnote_nr, Integer, 1, <<~EOF)
323
+ The number of the first footnote
324
+
325
+ This option can be used to specify the number that is used for the first
326
+ footnote.
327
+
328
+ Default: 1
329
+ Used by: HTML converter
330
+ EOF
331
+
332
+ define(:entity_output, Symbol, :as_char, <<~EOF)
333
+ Defines how entities are output
334
+
335
+ The possible values are :as_input (entities are output in the same
336
+ form as found in the input), :numeric (entities are output in numeric
337
+ form), :symbolic (entities are output in symbolic form if possible) or
338
+ :as_char (entities are output as characters if possible, only available
339
+ on Ruby 1.9).
340
+
341
+ Default: :as_char
342
+ Used by: HTML converter, kramdown converter
343
+ EOF
344
+
345
+ TOC_LEVELS_RANGE = (1..6).freeze
346
+ TOC_LEVELS_ARRAY = TOC_LEVELS_RANGE.to_a.freeze
347
+ private_constant :TOC_LEVELS_RANGE, :TOC_LEVELS_ARRAY
348
+
349
+ define(:toc_levels, Object, TOC_LEVELS_ARRAY, <<~EOF) do |val|
350
+ Defines the levels that are used for the table of contents
351
+
352
+ The individual levels can be specified by separating them with commas
353
+ (e.g. 1,2,3) or by using the range syntax (e.g. 1..3). Only the
354
+ specified levels are used for the table of contents.
355
+
356
+ Default: 1..6
357
+ Used by: HTML/Latex converter
358
+ EOF
359
+ case val
360
+ when String
361
+ if val =~ /^(\d)\.\.(\d)$/
362
+ val = Range.new($1.to_i, $2.to_i).to_a
363
+ elsif val.match?(/^\d(?:,\d)*$/)
364
+ val = val.split(",").map(&:to_i).uniq
365
+ else
366
+ raise Kramdown::Error, "Invalid syntax for option toc_levels"
367
+ end
368
+ when Array
369
+ unless val.eql?(TOC_LEVELS_ARRAY)
370
+ val = val.map(&:to_i).uniq
371
+ end
372
+ when Range
373
+ val = if val.eql?(TOC_LEVELS_RANGE)
374
+ TOC_LEVELS_ARRAY
375
+ else
376
+ val.map(&:to_i).uniq
377
+ end
378
+ else
379
+ raise Kramdown::Error, "Invalid type #{val.class} for option toc_levels"
380
+ end
381
+ if val.any? {|i| !TOC_LEVELS_RANGE.cover?(i) }
382
+ raise Kramdown::Error, "Level numbers for option toc_levels have to be integers from 1 to 6"
383
+ end
384
+ val
385
+ end
386
+
387
+ define(:line_width, Integer, 72, <<~EOF)
388
+ Defines the line width to be used when outputting a document
389
+
390
+ Default: 72
391
+ Used by: kramdown converter
392
+ EOF
393
+
394
+ define(:latex_headers, Object, %w[section subsection subsubsection paragraph subparagraph subparagraph], <<~EOF) do |val|
395
+ Defines the LaTeX commands for different header levels
396
+
397
+ The commands for the header levels one to six can be specified by
398
+ separating them with commas.
399
+
400
+ Default: section,subsection,subsubsection,paragraph,subparagraph,subparagraph
401
+ Used by: Latex converter
402
+ EOF
403
+ simple_array_validator(val, :latex_headers, 6)
404
+ end
405
+
406
+ SMART_QUOTES_ENTITIES = %w[lsquo rsquo ldquo rdquo].freeze
407
+ SMART_QUOTES_STR = SMART_QUOTES_ENTITIES.join(',').freeze
408
+ private_constant :SMART_QUOTES_ENTITIES, :SMART_QUOTES_STR
409
+
410
+ define(:smart_quotes, Object, SMART_QUOTES_ENTITIES, <<~EOF) do |val|
411
+ Defines the HTML entity names or code points for smart quote output
412
+
413
+ The entities identified by entity name or code point that should be
414
+ used for, in order, a left single quote, a right single quote, a left
415
+ double and a right double quote are specified by separating them with
416
+ commas.
417
+
418
+ Default: lsquo,rsquo,ldquo,rdquo
419
+ Used by: HTML/Latex converter
420
+ EOF
421
+ if val == SMART_QUOTES_STR || val == SMART_QUOTES_ENTITIES
422
+ SMART_QUOTES_ENTITIES
423
+ else
424
+ val = simple_array_validator(val, :smart_quotes, 4)
425
+ val.map! {|v| Integer(v) rescue v }
426
+ val
427
+ end
428
+ end
429
+
430
+ define(:typographic_symbols, Object, {}, <<~EOF) do |val|
431
+ Defines a mapping from typographical symbol to output characters
432
+
433
+ Typographical symbols are normally output using their equivalent Unicode
434
+ codepoint. However, sometimes one wants to change the output, mostly to
435
+ fallback to a sequence of ASCII characters.
436
+
437
+ This option allows this by specifying a mapping from typographical
438
+ symbol to its output string. For example, the mapping {hellip: ...} would
439
+ output the standard ASCII representation of an ellipsis.
440
+
441
+ The available typographical symbol names are:
442
+
443
+ * hellip: ellipsis
444
+ * mdash: em-dash
445
+ * ndash: en-dash
446
+ * laquo: left guillemet
447
+ * raquo: right guillemet
448
+ * laquo_space: left guillemet followed by a space
449
+ * raquo_space: right guillemet preceeded by a space
450
+
451
+ Default: {}
452
+ Used by: HTML/Latex converter
453
+ EOF
454
+ val = simple_hash_validator(val, :typographic_symbols)
455
+ val.keys.each do |k|
456
+ val[k.kind_of?(String) ? str_to_sym(k) : k] = val.delete(k).to_s
457
+ end
458
+ val
459
+ end
460
+
461
+ define(:remove_block_html_tags, Boolean, true, <<~EOF)
462
+ Remove block HTML tags
463
+
464
+ If this option is `true`, the RemoveHtmlTags converter removes
465
+ block HTML tags.
466
+
467
+ Default: true
468
+ Used by: RemoveHtmlTags converter
469
+ EOF
470
+
471
+ define(:remove_span_html_tags, Boolean, false, <<~EOF)
472
+ Remove span HTML tags
473
+
474
+ If this option is `true`, the RemoveHtmlTags converter removes
475
+ span HTML tags.
476
+
477
+ Default: false
478
+ Used by: RemoveHtmlTags converter
479
+ EOF
480
+
481
+ define(:header_offset, Integer, 0, <<~EOF)
482
+ Sets the output offset for headers
483
+
484
+ If this option is c (may also be negative) then a header with level n
485
+ will be output as a header with level c+n. If c+n is lower than 1,
486
+ level 1 will be used. If c+n is greater than 6, level 6 will be used.
487
+
488
+ Default: 0
489
+ Used by: HTML converter, Kramdown converter, Latex converter
490
+ EOF
491
+
492
+ define(:syntax_highlighter, Symbol, :rouge, <<~EOF)
493
+ Set the syntax highlighter
494
+
495
+ Specifies the syntax highlighter that should be used for highlighting
496
+ code blocks and spans. If this option is set to +nil+, no syntax
497
+ highlighting is done.
498
+
499
+ Options for the syntax highlighter can be set with the
500
+ syntax_highlighter_opts configuration option.
501
+
502
+ Default: rouge
503
+ Used by: HTML/Latex converter
504
+ EOF
505
+
506
+ define(:syntax_highlighter_opts, Object, {}, <<~EOF) do |val|
507
+ Set the syntax highlighter options
508
+
509
+ Specifies options for the syntax highlighter set via the
510
+ syntax_highlighter configuration option.
511
+
512
+ The value needs to be a hash with key-value pairs that are understood by
513
+ the used syntax highlighter.
514
+
515
+ Default: {}
516
+ Used by: HTML/Latex converter
517
+ EOF
518
+ val = simple_hash_validator(val, :syntax_highlighter_opts)
519
+ val.keys.each do |k|
520
+ val[k.kind_of?(String) ? str_to_sym(k) : k] = val.delete(k)
521
+ end
522
+ val
523
+ end
524
+
525
+ define(:math_engine, Symbol, :mathjax, <<~EOF)
526
+ Set the math engine
527
+
528
+ Specifies the math engine that should be used for converting math
529
+ blocks/spans. If this option is set to +nil+, no math engine is used and
530
+ the math blocks/spans are output as is.
531
+
532
+ Options for the selected math engine can be set with the
533
+ math_engine_opts configuration option.
534
+
535
+ Default: mathjax
536
+ Used by: HTML converter
537
+ EOF
538
+
539
+ define(:math_engine_opts, Object, {}, <<~EOF) do |val|
540
+ Set the math engine options
541
+
542
+ Specifies options for the math engine set via the math_engine
543
+ configuration option.
544
+
545
+ The value needs to be a hash with key-value pairs that are understood by
546
+ the used math engine.
547
+
548
+ Default: {}
549
+ Used by: HTML converter
550
+ EOF
551
+ val = simple_hash_validator(val, :math_engine_opts)
552
+ val.keys.each do |k|
553
+ val[k.kind_of?(String) ? str_to_sym(k) : k] = val.delete(k)
554
+ end
555
+ val
556
+ end
557
+
558
+ define(:footnote_backlink, String, '&#8617;', <<~EOF)
559
+ Defines the text that should be used for the footnote backlinks
560
+
561
+ The footnote backlink is just text, so any special HTML characters will
562
+ be escaped.
563
+
564
+ If the footnote backlint text is an empty string, no footnote backlinks
565
+ will be generated.
566
+
567
+ Default: '&8617;'
568
+ Used by: HTML converter
569
+ EOF
570
+
571
+ define(:footnote_backlink_inline, Boolean, false, <<~EOF)
572
+ Specifies whether the footnote backlink should always be inline
573
+
574
+ With the default of false the footnote backlink is placed at the end of
575
+ the last paragraph if there is one, or an extra paragraph with only the
576
+ footnote backlink is created.
577
+
578
+ Setting this option to true tries to place the footnote backlink in the
579
+ last, possibly nested paragraph or header. If this fails (e.g. in the
580
+ case of a table), an extra paragraph with only the footnote backlink is
581
+ created.
582
+
583
+ Default: false
584
+ Used by: HTML converter
585
+ EOF
586
+
587
+ define(:footnote_prefix, String, '', <<~EOF)
588
+ Prefix used for footnote IDs
589
+
590
+ This option can be used to set a prefix for footnote IDs. This is useful
591
+ when rendering multiple documents into the same output file to avoid
592
+ duplicate IDs. The prefix should only contain characters that are valid
593
+ in an ID!
594
+
595
+ Default: ''
596
+ Used by: HTML
597
+ EOF
598
+
599
+ define(:footnote_link_text, String, '%s', <<~EOF) do |val|
600
+ The text used for the footnote number in a footnote link
601
+
602
+ This option can be used to add additional text to the footnote
603
+ link. It should be a format string, and is passed the footnote
604
+ number as the only argument to the format string.
605
+ e.g. "[footnote %s]" would display as "[footnote 1]".
606
+
607
+ Default: '%s'
608
+ Used by: HTML
609
+ EOF
610
+ if !val.include?('%s')
611
+ raise Kramdown::Error, "option footnote_link_text needs to contain a '%s'"
612
+ end
613
+ val
614
+ end
615
+
616
+
617
+ define(:remove_line_breaks_for_cjk, Boolean, false, <<~EOF)
618
+ Specifies whether line breaks should be removed between CJK characters
619
+
620
+ Default: false
621
+ Used by: HTML converter
622
+ EOF
623
+
624
+ define(:forbidden_inline_options, Object, %w[template], <<~EOF) do |val|
625
+ Defines the options that may not be set using the {::options} extension
626
+
627
+ The value needs to be an array of option names.
628
+
629
+ Default: [template]
630
+ Used by: HTML converter
631
+ EOF
632
+ val.map! {|item| item.kind_of?(String) ? str_to_sym(item) : item }
633
+ simple_array_validator(val, :forbidden_inline_options)
634
+ end
635
+
636
+ define(:list_indent, Integer, 2, <<~EOF)
637
+ Sets the number of spaces to use for list indentation
638
+
639
+ Default: 2
640
+ Used by: Kramdown converter
641
+ EOF
642
+
643
+ end
644
+
645
+ end