docgenerator 2.1.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. checksums.yaml +4 -4
  2. data/lib/docgenerator.rb +18 -18
  3. data/lib/docgenerator/characters.rb +1 -0
  4. data/lib/docgenerator/css.rb +5 -0
  5. data/lib/docgenerator/document.rb +7 -2
  6. data/lib/docgenerator/element.rb +2 -2
  7. data/lib/docgenerator/elements.rb +69 -2
  8. data/lib/docgenerator/index.rb +1 -1
  9. data/lib/docgenerator/packages/listings.rb +94 -94
  10. data/lib/docgenerator/packages/multicol.rb +1 -1
  11. data/lib/docgenerator/packages/pdfpages.rb +2 -1
  12. data/lib/docgenerator/packages/rubycode4doc.rb +173 -172
  13. data/lib/docgenerator/packages/struktex.rb +395 -379
  14. data/lib/docgenerator/packages/todonotes.rb +2 -2
  15. data/lib/docgenerator/packages/url.rb +4 -0
  16. data/lib/docgenerator/sections.rb +24 -2
  17. data/lib/docgenerator/tabular.rb +59 -14
  18. data/lib/docgenerator/templates/docgenerator_template.rb +1 -0
  19. data/lib/docgenerator/templates/docgenerator_template.yaml +30 -1
  20. data/lib/docgenerator/version.rb +13 -1
  21. data/meta_test_and_doc/build__meta.rb +3 -10
  22. data/meta_test_and_doc/build_doc.rb +4 -2
  23. data/meta_test_and_doc/build_test.rb +21 -17
  24. data/meta_test_and_doc/manpages/images.rb +152 -0
  25. data/unittest/expected/test_document_toc_article.latex +6 -6
  26. data/unittest/expected_struktex/test_struktex_krug.creole +5 -5
  27. data/unittest/expected_struktex/test_struktex_krug.wiki +5 -5
  28. data/unittest/expected_struktex/test_struktex_statement.creole +4 -4
  29. data/unittest/expected_struktex/test_struktex_statement.wiki +4 -4
  30. data/unittest/expected_templates/test_report_utf8.tex +34 -0
  31. data/unittest/expected_templates/test_standalone.tex +2 -1
  32. data/unittest/unittest_docgenerator.rb +37 -30
  33. data/unittest/unittest_docgenerator_characters.rb +113 -60
  34. data/unittest/unittest_docgenerator_runtex.rb +16 -12
  35. data/unittest/unittest_packages_multicol.rb +4 -9
  36. data/unittest/unittest_packages_struktex.rb +66 -90
  37. data/unittest/unittest_rubycode4doc.rb +38 -241
  38. data/unittest/unittest_templates.rb +4 -8
  39. metadata +23 -560
  40. data/examples/creole_example.rb +0 -81
  41. data/examples/creole_example_footnote.rb +0 -67
  42. data/examples/creole_example_new_plugin.rb +0 -51
  43. data/examples/creole_example_placeholder.rb +0 -77
  44. data/examples/creole_example_rail.rb +0 -154
  45. data/examples/creole_example_rubycode.rb +0 -144
  46. data/examples/creole_example_struktex.rb +0 -169
  47. data/examples/creole_example_tabular.rb +0 -97
  48. data/examples/wiki2docgenerator_example.rb +0 -299
  49. data/lib/creole/creole2doc.rb +0 -954
  50. data/lib/creole/creole_characters.rb +0 -120
  51. data/lib/creole/creole_inclusion_and_plugins.rb +0 -96
  52. data/lib/creole/creole_inclusions.rb +0 -154
  53. data/lib/creole/creole_placeholder.rb +0 -171
  54. data/lib/creole/creole_plugins.rb +0 -230
  55. data/lib/creole/creole_tabular.rb +0 -401
  56. data/lib/creole/plugins/rail.rb +0 -181
  57. data/lib/creole/plugins/rubycode4creole.rb +0 -136
  58. data/lib/creole/plugins/struktex.rb +0 -59
  59. data/lib/creole/plugins/todonotes.rb +0 -77
  60. data/lib/wiki2doc/plugins/rubycode4wiki.rb +0 -53
  61. data/lib/wiki2doc/plugins/struktex.rb +0 -12
  62. data/lib/wiki2doc/wiki2docgenerator.rb +0 -1276
  63. data/lib/wiki2doc/wikimedia_document.rb +0 -24
  64. data/meta_test_and_doc/manpages/packages.rb +0 -13
  65. data/unittest/Red_Flower.jpg +0 -0
  66. data/unittest/creole1.0test.txt +0 -128
  67. data/unittest/creole_testtext.creole +0 -11
  68. data/unittest/expected_creole/test_creole.html +0 -3
  69. data/unittest/expected_creole/test_creole_characters_all.creole +0 -28
  70. data/unittest/expected_creole/test_creole_characters_all.html +0 -18
  71. data/unittest/expected_creole/test_creole_characters_all.latex +0 -36
  72. data/unittest/expected_creole/test_creole_characters_special.html +0 -10
  73. data/unittest/expected_creole/test_creole_characters_special.latex +0 -18
  74. data/unittest/expected_creole/test_creole_comment.context +0 -11
  75. data/unittest/expected_creole/test_creole_comment.creole +0 -12
  76. data/unittest/expected_creole/test_creole_comment.html +0 -9
  77. data/unittest/expected_creole/test_creole_comment.latex +0 -11
  78. data/unittest/expected_creole/test_creole_countdown.html +0 -3
  79. data/unittest/expected_creole/test_creole_countdown.latex +0 -4
  80. data/unittest/expected_creole/test_creole_creole1.0test.html +0 -182
  81. data/unittest/expected_creole/test_creole_creole1.0test.latex +0 -253
  82. data/unittest/expected_creole/test_creole_creole1.0test.text +0 -160
  83. data/unittest/expected_creole/test_creole_footnotes.html +0 -9
  84. data/unittest/expected_creole/test_creole_footnotes.latex +0 -14
  85. data/unittest/expected_creole/test_creole_footnotes_groupid.html +0 -15
  86. data/unittest/expected_creole/test_creole_footnotes_label.html +0 -9
  87. data/unittest/expected_creole/test_creole_headings.html +0 -17
  88. data/unittest/expected_creole/test_creole_headings.latex +0 -19
  89. data/unittest/expected_creole/test_creole_headings.text +0 -48
  90. data/unittest/expected_creole/test_creole_headings.wiki +0 -37
  91. data/unittest/expected_creole/test_creole_hr.html +0 -7
  92. data/unittest/expected_creole/test_creole_hr.latex +0 -9
  93. data/unittest/expected_creole/test_creole_hr.text +0 -4
  94. data/unittest/expected_creole/test_creole_ignore.html +0 -3
  95. data/unittest/expected_creole/test_creole_ignore.latex +0 -4
  96. data/unittest/expected_creole/test_creole_ignore.text +0 -2
  97. data/unittest/expected_creole/test_creole_inline.html +0 -3
  98. data/unittest/expected_creole/test_creole_inline.latex +0 -4
  99. data/unittest/expected_creole/test_creole_inline.text +0 -2
  100. data/unittest/expected_creole/test_creole_inline_apostroph.html +0 -6
  101. data/unittest/expected_creole/test_creole_inline_apostroph.latex +0 -8
  102. data/unittest/expected_creole/test_creole_inline_apostroph.text +0 -4
  103. data/unittest/expected_creole/test_creole_inline_ruby.html +0 -12
  104. data/unittest/expected_creole/test_creole_inline_ruby.latex +0 -20
  105. data/unittest/expected_creole/test_creole_inline_ruby_raw.html +0 -6
  106. data/unittest/expected_creole/test_creole_inline_ruby_raw.latex +0 -8
  107. data/unittest/expected_creole/test_creole_input.normsource +0 -25
  108. data/unittest/expected_creole/test_creole_input.normsource_1.8 +0 -23
  109. data/unittest/expected_creole/test_creole_input_file_simple.html +0 -15
  110. data/unittest/expected_creole/test_creole_input_file_simple_readlines.html +0 -15
  111. data/unittest/expected_creole/test_creole_label.html +0 -12
  112. data/unittest/expected_creole/test_creole_label.latex +0 -15
  113. data/unittest/expected_creole/test_creole_line_break.html +0 -6
  114. data/unittest/expected_creole/test_creole_line_break.latex +0 -8
  115. data/unittest/expected_creole/test_creole_links_explicit_internal.html +0 -6
  116. data/unittest/expected_creole/test_creole_links_explicit_internal.text +0 -4
  117. data/unittest/expected_creole/test_creole_links_explicit_with_em.html +0 -3
  118. data/unittest/expected_creole/test_creole_links_explicit_with_em.latex +0 -4
  119. data/unittest/expected_creole/test_creole_links_explicit_with_em.text +0 -2
  120. data/unittest/expected_creole/test_creole_links_external.html +0 -6
  121. data/unittest/expected_creole/test_creole_links_external.latex +0 -8
  122. data/unittest/expected_creole/test_creole_links_external.text +0 -4
  123. data/unittest/expected_creole/test_creole_links_external_implicit.html +0 -9
  124. data/unittest/expected_creole/test_creole_links_external_implicit.latex +0 -12
  125. data/unittest/expected_creole/test_creole_links_external_implicit.text +0 -6
  126. data/unittest/expected_creole/test_creole_links_file.html +0 -6
  127. data/unittest/expected_creole/test_creole_links_file.latex +0 -8
  128. data/unittest/expected_creole/test_creole_links_file.text +0 -4
  129. data/unittest/expected_creole/test_creole_links_implicit_end.creole +0 -4
  130. data/unittest/expected_creole/test_creole_links_implicit_end.html +0 -3
  131. data/unittest/expected_creole/test_creole_links_implicit_end.latex +0 -4
  132. data/unittest/expected_creole/test_creole_list_ol.html +0 -12
  133. data/unittest/expected_creole/test_creole_list_ol.latex +0 -22
  134. data/unittest/expected_creole/test_creole_list_ol_after_ul.html +0 -12
  135. data/unittest/expected_creole/test_creole_list_ol_after_ul.latex +0 -20
  136. data/unittest/expected_creole/test_creole_list_ol_after_ul.text +0 -6
  137. data/unittest/expected_creole/test_creole_list_ol_ul.html +0 -15
  138. data/unittest/expected_creole/test_creole_list_ol_ul.latex +0 -26
  139. data/unittest/expected_creole/test_creole_list_ul.html +0 -22
  140. data/unittest/expected_creole/test_creole_list_ul.latex +0 -40
  141. data/unittest/expected_creole/test_creole_list_ul.normsource +0 -89
  142. data/unittest/expected_creole/test_creole_list_ul.normsource_1.8 +0 -83
  143. data/unittest/expected_creole/test_creole_list_ul_too_much.html +0 -24
  144. data/unittest/expected_creole/test_creole_list_ul_too_much.latex +0 -44
  145. data/unittest/expected_creole/test_creole_list_ulul_without_ul.html +0 -6
  146. data/unittest/expected_creole/test_creole_list_ulul_without_ul.latex +0 -12
  147. data/unittest/expected_creole/test_creole_mix_titles_list.html +0 -10
  148. data/unittest/expected_creole/test_creole_mix_titles_list.latex +0 -18
  149. data/unittest/expected_creole/test_creole_mix_titles_list.text +0 -12
  150. data/unittest/expected_creole/test_creole_newline.html +0 -9
  151. data/unittest/expected_creole/test_creole_newline.latex +0 -11
  152. data/unittest/expected_creole/test_creole_newline.text +0 -7
  153. data/unittest/expected_creole/test_creole_paragraphs.html +0 -6
  154. data/unittest/expected_creole/test_creole_paragraphs.latex +0 -8
  155. data/unittest/expected_creole/test_creole_paragraphs.normsource +0 -29
  156. data/unittest/expected_creole/test_creole_paragraphs.normsource_1.8 +0 -27
  157. data/unittest/expected_creole/test_creole_paragraphs.text +0 -4
  158. data/unittest/expected_creole/test_creole_paragraphs.wiki +0 -4
  159. data/unittest/expected_creole/test_creole_paragraphs_wrap.html +0 -5
  160. data/unittest/expected_creole/test_creole_paragraphs_wrap.latex +0 -6
  161. data/unittest/expected_creole/test_creole_paragraphs_wrap.text +0 -4
  162. data/unittest/expected_creole/test_creole_paragraphs_wrap.wiki +0 -4
  163. data/unittest/expected_creole/test_creole_paragraphs_wrap0.html +0 -9
  164. data/unittest/expected_creole/test_creole_paragraphs_wrap0.latex +0 -11
  165. data/unittest/expected_creole/test_creole_paragraphs_wrap0.text +0 -7
  166. data/unittest/expected_creole/test_creole_paragraphs_wrap0.wiki +0 -7
  167. data/unittest/expected_creole/test_creole_paragraphs_wrap60.html +0 -5
  168. data/unittest/expected_creole/test_creole_paragraphs_wrap60.latex +0 -6
  169. data/unittest/expected_creole/test_creole_paragraphs_wrap60.text +0 -4
  170. data/unittest/expected_creole/test_creole_paragraphs_wrap60.wiki +0 -4
  171. data/unittest/expected_creole/test_creole_picture_link.html +0 -6
  172. data/unittest/expected_creole/test_creole_pictures.html +0 -10
  173. data/unittest/expected_creole/test_creole_pictures.latex +0 -13
  174. data/unittest/expected_creole/test_creole_pictures_css.html +0 -6
  175. data/unittest/expected_creole/test_creole_pictures_css.latex +0 -8
  176. data/unittest/expected_creole/test_creole_pictures_imgclass.html +0 -6
  177. data/unittest/expected_creole/test_creole_pictures_imgclass.latex +0 -8
  178. data/unittest/expected_creole/test_creole_pictures_longdesc.html +0 -3
  179. data/unittest/expected_creole/test_creole_pictures_width.html +0 -3
  180. data/unittest/expected_creole/test_creole_pictures_width.latex +0 -4
  181. data/unittest/expected_creole/test_creole_placeholders_html.html +0 -7
  182. data/unittest/expected_creole/test_creole_placeholders_html.latex +0 -8
  183. data/unittest/expected_creole/test_creole_placeholders_html.text +0 -4
  184. data/unittest/expected_creole/test_creole_placeholders_latex.html +0 -6
  185. data/unittest/expected_creole/test_creole_placeholders_latex.latex +0 -9
  186. data/unittest/expected_creole/test_creole_placeholders_latex.text +0 -4
  187. data/unittest/expected_creole/test_creole_short_html.html +0 -3
  188. data/unittest/expected_creole/test_creole_short_html.latex +0 -4
  189. data/unittest/expected_creole/test_creole_short_html.text +0 -2
  190. data/unittest/expected_creole/test_creole_shy.creole +0 -6
  191. data/unittest/expected_creole/test_creole_shy.html +0 -6
  192. data/unittest/expected_creole/test_creole_shy.latex +0 -8
  193. data/unittest/expected_creole/test_creole_shy.text +0 -4
  194. data/unittest/expected_creole/test_creole_tabular.creole +0 -22
  195. data/unittest/expected_creole/test_creole_tabular.html +0 -20
  196. data/unittest/expected_creole/test_creole_tabular.latex +0 -22
  197. data/unittest/expected_creole/test_creole_tabular_creole.creole +0 -19
  198. data/unittest/expected_creole/test_creole_tabular_creole.html +0 -18
  199. data/unittest/expected_creole/test_creole_tabular_creole.latex +0 -19
  200. data/unittest/expected_creole/test_creole_tabular_css.creole +0 -24
  201. data/unittest/expected_creole/test_creole_tabular_css.html +0 -20
  202. data/unittest/expected_creole/test_creole_tabular_css.latex +0 -22
  203. data/unittest/expected_creole/test_creole_tabular_multicols.creole +0 -16
  204. data/unittest/expected_creole/test_creole_tabular_multicols.html +0 -14
  205. data/unittest/expected_creole/test_creole_tabular_multicols.latex +0 -16
  206. data/unittest/expected_creole/test_creole_tabular_row_parameters.latex +0 -22
  207. data/unittest/expected_creole/test_creole_tabular_with_cell_option.creole +0 -21
  208. data/unittest/expected_creole/test_creole_tabular_with_cell_option.html +0 -20
  209. data/unittest/expected_creole/test_creole_toc.html +0 -13
  210. data/unittest/expected_creole/test_creole_toc.latex +0 -22
  211. data/unittest/expected_creole/test_creole_toc.text +0 -4
  212. data/unittest/expected_creole/test_creole_toc_level.html +0 -7
  213. data/unittest/expected_creole/test_creole_toc_level.latex +0 -10
  214. data/unittest/expected_creole/test_creole_toc_level.text +0 -3
  215. data/unittest/expected_creole/test_creole_toc_level_text.html +0 -8
  216. data/unittest/expected_creole/test_creole_toc_level_text.latex +0 -9
  217. data/unittest/expected_creole/test_creole_toc_text.html +0 -5
  218. data/unittest/expected_creole/test_creole_toc_text.latex +0 -5
  219. data/unittest/expected_creole/test_creole_ul_multiple_line.html +0 -7
  220. data/unittest/expected_creole/test_creole_ul_multiple_line.latex +0 -14
  221. data/unittest/expected_creole/test_creole_ul_with_blank.html +0 -11
  222. data/unittest/expected_creole/test_creole_ul_with_blank.latex +0 -20
  223. data/unittest/expected_creole/test_creole_ul_with_bold.creole +0 -0
  224. data/unittest/expected_creole/test_creole_ul_with_bold.html +0 -11
  225. data/unittest/expected_creole/test_creole_ul_with_bold.latex +0 -18
  226. data/unittest/expected_creole/test_creole_ul_with_bold.text +0 -7
  227. data/unittest/expected_creole/test_creole_verbatim.html +0 -25
  228. data/unittest/expected_creole/test_creole_verbatim.latex +0 -33
  229. data/unittest/expected_creole/test_creole_verbatim.text +0 -17
  230. data/unittest/expected_creole/test_creole_verbatim_inline.html +0 -6
  231. data/unittest/expected_creole/test_creole_verbatim_inline.latex +0 -8
  232. data/unittest/expected_creole/test_creole_verbatim_inline_at_start.html +0 -6
  233. data/unittest/expected_creole/test_creole_verbatim_inline_at_start.latex +0 -8
  234. data/unittest/expected_creole_rail/test_rail_creole_object.tex +0 -33
  235. data/unittest/expected_creole_rail/test_rail_creole_placeholder.tex +0 -40
  236. data/unittest/expected_rubycode4doc/creole_complete.html +0 -26
  237. data/unittest/expected_rubycode4doc/creole_complete.tex +0 -40
  238. data/unittest/expected_rubycode4doc/creole_in_tab.html +0 -4
  239. data/unittest/expected_rubycode4doc/creole_in_tab.tex +0 -6
  240. data/unittest/expected_rubycode4doc/creole_inline_ruby.html +0 -7
  241. data/unittest/expected_rubycode4doc/creole_output.html +0 -2
  242. data/unittest/expected_rubycode4doc/creole_output.tex +0 -4
  243. data/unittest/expected_rubycode4doc/creole_rubycode.html +0 -1
  244. data/unittest/expected_rubycode4doc/creole_rubycode.tex +0 -3
  245. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.html +0 -1
  246. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.tex +0 -3
  247. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.html +0 -3
  248. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.tex +0 -5
  249. data/unittest/expected_rubycode4doc/wiki_1.html +0 -8
  250. data/unittest/expected_rubycode4doc/wiki_2.html +0 -8
  251. data/unittest/expected_rubycode4doc/wiki_3.html +0 -9
  252. data/unittest/expected_rubycode4doc/wiki_immediate_1.html +0 -5
  253. data/unittest/expected_rubycode4doc/wiki_immediate_2.html +0 -5
  254. data/unittest/expected_rubycode4doc/wiki_immediate_3.html +0 -8
  255. data/unittest/expected_rubycode4doc/wiki_immediate_full.html +0 -21
  256. data/unittest/expected_wikimedia/test_wiki.html +0 -6
  257. data/unittest/expected_wikimedia/test_wiki.latex +0 -12
  258. data/unittest/expected_wikimedia/test_wiki.text +0 -14
  259. data/unittest/expected_wikimedia/test_wiki.wiki +0 -12
  260. data/unittest/expected_wikimedia/test_wiki_description.html +0 -7
  261. data/unittest/expected_wikimedia/test_wiki_description.latex +0 -11
  262. data/unittest/expected_wikimedia/test_wiki_description.text +0 -6
  263. data/unittest/expected_wikimedia/test_wiki_description.wiki +0 -6
  264. data/unittest/expected_wikimedia/test_wiki_footnote.html +0 -8
  265. data/unittest/expected_wikimedia/test_wiki_footnote.latex +0 -17
  266. data/unittest/expected_wikimedia/test_wiki_footnote.text +0 -10
  267. data/unittest/expected_wikimedia/test_wiki_footnote.wiki +0 -10
  268. data/unittest/expected_wikimedia/test_wiki_footnote_2.html +0 -8
  269. data/unittest/expected_wikimedia/test_wiki_footnote_groupid.html +0 -21
  270. data/unittest/expected_wikimedia/test_wiki_html_code.html +0 -7
  271. data/unittest/expected_wikimedia/test_wiki_html_code.latex +0 -10
  272. data/unittest/expected_wikimedia/test_wiki_html_code.text +0 -6
  273. data/unittest/expected_wikimedia/test_wiki_html_code.wiki +0 -6
  274. data/unittest/expected_wikimedia/test_wiki_inline.html +0 -6
  275. data/unittest/expected_wikimedia/test_wiki_inline.latex +0 -12
  276. data/unittest/expected_wikimedia/test_wiki_inline.text +0 -8
  277. data/unittest/expected_wikimedia/test_wiki_inline.wiki +0 -8
  278. data/unittest/expected_wikimedia/test_wiki_label.html +0 -6
  279. data/unittest/expected_wikimedia/test_wiki_link.html +0 -8
  280. data/unittest/expected_wikimedia/test_wiki_link.latex +0 -17
  281. data/unittest/expected_wikimedia/test_wiki_link.wiki +0 -11
  282. data/unittest/expected_wikimedia/test_wiki_list_ol.html +0 -24
  283. data/unittest/expected_wikimedia/test_wiki_list_ol.latex +0 -30
  284. data/unittest/expected_wikimedia/test_wiki_list_ol.text +0 -10
  285. data/unittest/expected_wikimedia/test_wiki_list_ol.wiki +0 -12
  286. data/unittest/expected_wikimedia/test_wiki_list_ol_after_ul.html +0 -16
  287. data/unittest/expected_wikimedia/test_wiki_list_ol_after_ul.latex +0 -24
  288. data/unittest/expected_wikimedia/test_wiki_list_ol_after_ul.text +0 -8
  289. data/unittest/expected_wikimedia/test_wiki_list_ol_after_ul.wiki +0 -10
  290. data/unittest/expected_wikimedia/test_wiki_list_ol_ul.html +0 -24
  291. data/unittest/expected_wikimedia/test_wiki_list_ol_ul.latex +0 -30
  292. data/unittest/expected_wikimedia/test_wiki_list_ol_ul.text +0 -10
  293. data/unittest/expected_wikimedia/test_wiki_list_ol_ul.wiki +0 -12
  294. data/unittest/expected_wikimedia/test_wiki_list_ul.html +0 -24
  295. data/unittest/expected_wikimedia/test_wiki_list_ul.latex +0 -30
  296. data/unittest/expected_wikimedia/test_wiki_list_ul.text +0 -10
  297. data/unittest/expected_wikimedia/test_wiki_list_ul.wiki +0 -12
  298. data/unittest/expected_wikimedia/test_wiki_list_ul_too_much.html +0 -39
  299. data/unittest/expected_wikimedia/test_wiki_list_ul_too_much.latex +0 -51
  300. data/unittest/expected_wikimedia/test_wiki_list_ul_too_much.text +0 -11
  301. data/unittest/expected_wikimedia/test_wiki_list_ul_too_much.wiki +0 -15
  302. data/unittest/expected_wikimedia/test_wiki_picture.html +0 -55
  303. data/unittest/expected_wikimedia/test_wiki_picture.latex +0 -76
  304. data/unittest/expected_wikimedia/test_wiki_picture_thumb.html +0 -5
  305. data/unittest/expected_wikimedia/test_wiki_tab1.html +0 -30
  306. data/unittest/expected_wikimedia/test_wiki_tab1.latex +0 -30
  307. data/unittest/expected_wikimedia/test_wiki_tab1.wiki +0 -29
  308. data/unittest/expected_wikimedia/test_wiki_textformatting.html +0 -7
  309. data/unittest/expected_wikimedia/test_wiki_textformatting.latex +0 -16
  310. data/unittest/expected_wikimedia/test_wiki_textformatting.text +0 -11
  311. data/unittest/expected_wikimedia/test_wiki_textformatting.wiki +0 -9
  312. data/unittest/expected_wikimedia/test_wiki_toc.html +0 -9
  313. data/unittest/expected_wikimedia/test_wiki_toc.latex +0 -18
  314. data/unittest/expected_wikimedia/test_wiki_toc.text +0 -21
  315. data/unittest/expected_wikimedia/test_wiki_toc.wiki +0 -18
  316. data/unittest/expected_wikimedia/test_wiki_ul_multiple_line.html +0 -18
  317. data/unittest/expected_wikimedia/test_wiki_ul_multiple_line.latex +0 -19
  318. data/unittest/expected_wikimedia/test_wiki_ul_multiple_line.text +0 -6
  319. data/unittest/expected_wikimedia/test_wiki_ul_multiple_line.wiki +0 -7
  320. data/unittest/unittest_creole.rb +0 -1361
  321. data/unittest/unittest_creole_placeholders.rb +0 -150
  322. data/unittest/unittest_creole_plugin_rail.rb +0 -147
  323. data/unittest/unittest_creole_tabular.rb +0 -207
  324. data/unittest/unittest_wikimedia.rb +0 -479
@@ -1,230 +0,0 @@
1
- =begin rdoc
2
- Creole plugins
3
-
4
- This classes define plugins for creole.
5
-
6
- Plugins are used later with <<xx>>
7
- more at http://www.wikicreole.org/wiki/Plugin
8
-
9
- You can extend Wikis with additional Plugin:
10
-
11
- wiki = Creole.new()
12
- wiki.plugin['xxx'] = Creole_plugin_xxx
13
- =end
14
-
15
- #
16
-
17
- module Docgenerator
18
- module Creole
19
-
20
- =begin rdoc
21
- Creole plugins
22
-
23
- This classes define plugins for creole.
24
-
25
- Plugins are used later with <<xx>>
26
- more at http://www.wikicreole.org/wiki/Plugin
27
-
28
- You can extend Wikis with additional Plugin:
29
-
30
- wiki = Creole.new()
31
- wiki.plugin['xxx'] = Creole_plugin_xxx
32
- =end
33
- module Plugins
34
-
35
- =begin rdoc
36
- Default Plugin for Creole.
37
- <<xx>>
38
- =end
39
- class Creole_default_plugin < Creole_inclusion_and_plugin
40
- def initialize( pluginname, description, options, wiki )
41
- super
42
- @wiki.log.warn("Use Default plugin instead requested #{pluginname}- nothing special done.") if @wiki.log.warn?
43
- end
44
- end
45
-
46
- #Collection of Plugins
47
- Collection = Hash.new(Creole_default_plugin)
48
-
49
-
50
- =begin rdoc
51
- Collection of footnotes.
52
-
53
- Makes sense for HTML-output.
54
-
55
- For LaTeX the support of bigfoot/manyfoot... may be an idea.
56
- =end
57
- class Creole_footnote_group < Creole_inclusion_and_plugin
58
- #
59
-
60
- Collection['footnotes'] = self
61
-
62
- def initialize( inclusionname, description, options, wiki )
63
- super
64
- description = Footnotegroup::DEFAULTGROUPID unless description
65
- @footnotesgroup = wiki.footnotegroups[description]
66
- wiki.log.error("Footnotesgroup #{description.inspect} not found") if ! @footnotesgroup and wiki.log.error?
67
- end
68
- =begin rdoc
69
- Call Docgenerator::Footnotegroup#to_doc
70
- =end
71
- def to_doc(target, options = {})
72
- #remove options for Docgenerator::Footnotegroup
73
- l_options = options.dup
74
- l_options.delete(:plugins)
75
- l_options.delete(:inclusions)
76
- @footnotesgroup.to_doc(target, l_options)
77
- end
78
- end #Creole_inclusion_footnote_group
79
-
80
- =begin rdoc
81
- One footnote
82
-
83
- Usage:
84
- <<footnote|text>>
85
- <<footnote|text|label=l1>>
86
- <<footnote|text|groupid=g1>>
87
-
88
- Bug: If you create more documents, you get a common footnote counting.
89
-
90
- Solution:
91
- * LaTeX: no problem, LaTeX has it's own output mechanism.
92
- * HTML: Use grouping.
93
- =end
94
- class Creole_footnote < Creole_inclusion_and_plugin
95
- Collection['footnote'] = self
96
-
97
- def initialize( inclusionname, description, options, wiki )
98
- super
99
-
100
- @groupid = Footnotegroup::DEFAULTGROUPID
101
- label = nil
102
-
103
- options.each{|option|
104
- case option
105
- when /label\s*=\s*(.*)/
106
- label = $1
107
- when /groupid\s*=\s*(.*)/
108
- @groupid = $1
109
- else
110
- @wiki.log.warn("Footnote with unknown option #{option.inspect} not found") if @wiki.log.warn?
111
- end
112
- }
113
-
114
- if ! wiki.footnotegroups[@groupid]
115
- wiki.footnotegroups[@groupid] = Footnotegroup.new(@groupid)
116
- end
117
-
118
- group = wiki.footnotegroups[@groupid]
119
-
120
- @footnote = element(:footnote,{
121
- :group => group,
122
- :label => label,
123
- }, description )
124
-
125
-
126
- end
127
- def to_doc(target, options ={})
128
- @footnote.to_doc(target, options)
129
- end
130
- end #Creole_inclusion_footnote
131
-
132
- =begin rdoc
133
- Some short latex
134
-
135
- Usage:
136
- <<latex|code>>
137
-
138
- Note:
139
- There is also a placeholder for larger latex:
140
- <<<latex
141
- content
142
- >>>
143
- =end
144
- class Creole_short_latex < Creole_inclusion_and_plugin
145
- #We don't use it as inclusion. Closing } from latex may be confusing as in:
146
- # {{latex|\texttt{kursuiv}}}
147
- set_plugin_key 'latex'
148
-
149
- def initialize( inclusionname, description, options, wiki )
150
- super
151
- options.each{|option|
152
- #~ case option
153
- #~ else
154
- @wiki.log.warn("latex with unknown option #{option.inspect} not found") if @wiki.log.warn?
155
- #~ end
156
- }
157
- @source = description
158
-
159
- end
160
- #Return content only for latex
161
- def to_doc( target, options = {})
162
- target == :latex ? @source.to_doc( target, options ) : ''
163
- end
164
- end #Creole_short_latex
165
-
166
-
167
- =begin rdoc
168
- Eval the given ruby-code and put it as "raw text".
169
-
170
-
171
- This is defined as a plugin.
172
- =end
173
- class Creole_plugin_ruby_raw < Creole_inclusion_and_plugin
174
- set_plugin_key 'ruby_raw'
175
-
176
- def initialize( inclusionname, description, options, wiki )
177
- #The ruby-code may contain | - so we have to ad it again
178
- description << "|#{options.join('|')}" unless options.empty?
179
- options = nil
180
- super
181
- @code = description
182
- begin
183
- @result = eval(@code)
184
- rescue => bang
185
- wiki.log.error("Plugin ruby_raw: <#{@code}> results in #{bang.class}/#{bang}") if wiki.log.error?
186
- end
187
- end #initialize
188
- def to_doc(target, options ={})
189
- @result.to_s
190
- end
191
- def inspect()
192
- "#<Creole_plugin_ruby_raw:#{@code}>"
193
- end
194
- end #Creole_plugin_ruby
195
-
196
- =begin rdoc
197
- Eval the given ruby-code and add it as a interpreted code.
198
-
199
- This is defined as a plugin.
200
-
201
- Ideas for further development: eval later, at doc generation.
202
- =end
203
- class Creole_plugin_ruby < Creole_inclusion_and_plugin
204
- set_plugin_key 'ruby'
205
-
206
- def initialize( inclusionname, description, options, wiki )
207
- #The ruby-code may contain | - so we have to ad it again
208
- description << "|#{options.join('|')}" unless options.empty?
209
- options = nil
210
- super
211
-
212
- @code = description
213
- begin
214
- @result = eval(@code)
215
- rescue => bang
216
- wiki.log.error("Plugin ruby: <#{@code}> results in #{bang.class}/#{bang}") if wiki.log.error?
217
- end
218
- end #initialize
219
- def to_doc(target, options = {})
220
- @wiki.normsource2elements(
221
- @wiki.parse(@result.to_s ), options
222
- ).to_doc(target, options )
223
- end
224
- def inspect()
225
- "#<Creole_plugin_ruby:#{@code}>"
226
- end
227
- end #Creole_plugin_ruby
228
- end #module Plugins
229
- end #module Creole
230
- end #module Docgenerator
@@ -1,401 +0,0 @@
1
- #encoding: UTF-8
2
-
3
- if $0 == __FILE__ #for immediate tests
4
- $:.unshift('..')
5
- require 'creole/creole2doc.rb'
6
- end
7
-
8
- module Docgenerator
9
- module Creole
10
- =begin
11
- "Original" creole tab.
12
-
13
- Defined as a collector, so we can collect the content first and
14
- build the tabular later.
15
-
16
- Details see http://www.wikicreole.org/wiki/Tables
17
-
18
- Usage:
19
- Tables are done like this:
20
- |=header col1|=header col2|
21
- |col1|col2|
22
- |you |can |
23
- |also |align\\ it. |
24
-
25
- =end
26
- class Creole_tab < Placeholder
27
- set_placeholder_key 'creole_tabular' #original creole-tab definition
28
-
29
- #Extend the class by a little structure
30
- Cell = Struct.new('Cell', :content, :type )
31
-
32
- #Finish the tabular.
33
- #Each cell is added left justified.
34
- def close(options)
35
- #~ @log.error("Standard creole tabulars not supported yet" )
36
-
37
- step = 0 #start
38
- head = []
39
- content = []
40
- @source.each{|line|
41
- content << []
42
- #delete trailing empty cells
43
- line.chomp.gsub(/\|\s*$/,'').split(/\|/)[1..-1].each{|cell|
44
- case cell
45
- when /^=/
46
- content.last << Cell.new(@wiki.inline($~.post_match.strip, options),:th)
47
- else
48
- content.last << Cell.new(@wiki.inline(cell.strip, options), :td)
49
- end
50
- }
51
- }
52
-
53
- max_size = 0
54
- content.each{|line|
55
- max_size = [max_size, line.size].max
56
- }
57
-
58
- @tab = element(:tabular, {#:style => tab_css,
59
- :columns => max_size,
60
- :columndescription => 'l' * max_size,
61
- }).cR
62
- content.each{|line|
63
- @tab << row = element(:row).cr
64
- line.each{|cell|
65
- row << element(cell.type,{}, cell.content).cr
66
- }
67
- }
68
- end
69
- def to_doc( target, options = {})
70
- self.close(options) unless @tab
71
- @tab.to_doc( target, options )
72
- end
73
- end #Creole_tab
74
-
75
- =begin rdoc
76
- Create tabulars analog to Wikimedia.
77
-
78
- Usage:
79
- before
80
- <<<tabular
81
- |!columns=3
82
- |!columndescription=ccc
83
- |!border=1px
84
- |!css= color: red
85
- |=1
86
- |=2
87
- |=3
88
- |-
89
- |eins
90
- |zwei
91
- |drei
92
- |-
93
- |one
94
- |two
95
- |three
96
- >>>
97
- after
98
-
99
- You can add additional settings to cells:
100
- <<<tabular
101
- |!columns=3
102
- |eins||css=color: red
103
- |css = zwei
104
- |||class=empty
105
- >>>
106
- =end
107
- class Creole_tabular < Placeholder
108
- set_placeholder_key 'tabular'
109
-
110
- #Define a container for cells
111
- class Row
112
- #Flag for hline
113
- attr_accessor :hline
114
- #Flag for toprule
115
- attr_accessor :toprule
116
- #Flag for midrule
117
- attr_accessor :midrule
118
- #Add a cell to a row
119
- def << (cell)
120
- @cells = [] unless @cells
121
- @cells << cell
122
- end
123
- def each
124
- @cells.each{|cell| yield cell }
125
- end
126
- #Return number of cells
127
- def size; @cells.size; end
128
- end
129
- #Extend the class by a little structure
130
- class Cell
131
- =begin rdoc
132
- The content of a cell is separated from settings by two ||
133
-
134
- If you have an empty cell with additional setting, you must write three |
135
-
136
- Supported additional settings:
137
- * css= define css-style options
138
- * class= define HTML-class
139
- * title= define a title (results in popup during mouse-over)
140
- =end
141
- def initialize( content, type, wiki, local_options )
142
- @content, options = content.split(/\|\|/,2)
143
- @content = '' unless @content #just in case of empty content
144
- @options = {}
145
- options.split(/\|/).each{|option|
146
- case option
147
- when /class\s*=\s*/
148
- @options[:class] = $~.post_match
149
- when /css\s*=\s*/
150
- @options[:style] = $~.post_match
151
- when /title\s*=\s*/
152
- @options[:title] = $~.post_match
153
- when /pos\s*=\s*/ #only for multicol
154
- @options[:pos] = $~.post_match
155
- when /columns\s*=\s*/
156
- wiki.log.debug("Creole_tabular::Cell #{type} converted to multicol")
157
- type = :multicolumn #loose th/td-information -- fixme
158
- @options[:colspan] = $~.post_match.to_i
159
- when '' #ignore them
160
- else
161
- wiki.log.warn("Creole_tabular::Cell: Undefined option #{option.inspect}")
162
- end
163
- } if options
164
- @type = type #:td or :th
165
- @wiki = wiki
166
- @local_options = local_options
167
- end
168
- #Return the content as a element.
169
- def cell_element()
170
- element(@type,@options, @wiki.inline(@content, @local_options)).cr
171
- end
172
- end #class Cell
173
-
174
- #Build the tabular.
175
- def close()
176
- #~ fixme:
177
- #~ *CSS-format
178
- #~ *generelle def
179
-
180
- step = 0 #start
181
- head = []
182
- content = [Row.new]
183
-
184
- options = { :log => @log }
185
- local_options = {
186
- :log => @log,
187
- :inclusions => @wiki.inclusions,
188
- :plugins => @wiki.plugins.dup
189
- }
190
- #No footnotes inside tabulars
191
- local_options[:plugins].delete('footnote')
192
- local_options[:plugins].delete('footnotes')
193
-
194
- tab_css = CSS.new( :log => @log )
195
- @source.each{|cell|
196
- case cell
197
- when /^\|!/ #generell cell definition
198
- case $~.post_match().strip
199
- when /columns\s*=\s*(.*)/
200
- options[:columns] = $1.to_i
201
- when /border\s*=\s*(.*)/
202
- options[:border] = $1
203
- when /columndescription\s*=\s*(.*)/
204
- options[:columndescription] = $1
205
- when /css\s*=\s*(.*)\s*:\s*(.*)/
206
- tab_css[$1] = $2
207
- when '' #
208
- else
209
- @log.warn("#{self}: Unknown tabular option #{$1}") if @log.warn?
210
- end
211
- when /^\|-(.*)/ #new line
212
- if $1 #there are options for the row
213
- $1.split(/\|/).each{|option|
214
- case option
215
- when /hline/; content.last.hline = true
216
- when /toprule/; content.last.toprule = true
217
- when /midrule/; content.last.midrule = true
218
- when /\A\s*\Z/, nil
219
- else
220
- @log.warn("#{self}: Unknown row option #{option.inspect}") if @log.warn?
221
- end
222
- }
223
- end
224
- content << Row.new #Start new row
225
- when /^\|=/ #header cell
226
- #~ content.last << Cell.new(@wiki.inline($~.post_match.strip, local_options), :th)
227
- content.last << Cell.new($~.post_match.strip, :th, @wiki, local_options)
228
- when /^\|/ #content of a cell
229
- #~ content.last << Cell.new(@wiki.inline($~.post_match.strip, local_options), :td)
230
- content.last << Cell.new($~.post_match.strip, :td, @wiki, local_options)
231
- else #error!
232
- raise "cell/log-warning in #{cell.inspect}"
233
- end
234
- }
235
-
236
- max_size = 0
237
- content.each{|line|
238
- max_size = [max_size, line.size].max
239
- }
240
-
241
- if options[:columns] and options[:columns] < max_size
242
- @log.warn("Creole-tabular: Defined size #{options[:columns]} < no of columns (#{max_size})") if @log.warn?
243
- end
244
-
245
- if self.is_a?(Docgenerator::Creole::Creole_longtable)
246
- @tab = element(:longtable, { :style => tab_css,
247
- }.merge(options) ).cR
248
- #~ elsif self.is_a?(Docgenerator::Creole::Creole_supertabular) #Not supported
249
- #~ @tab = element(:supertabular, { :style => tab_css,
250
- #~ }.merge(options) ).cR
251
- elsif self.is_a?(Docgenerator::Creole::Creole_tabular)
252
- @tab = element(:tabular, { :style => tab_css,
253
- }.merge(options) ).cR
254
- else
255
- raise ArgumentError, "Unsupported tabular-class #{self.class}"
256
- end
257
-
258
- content.each{|line|
259
- @tab << row = element(:row).cr
260
- row.hline if line.hline
261
- row.toprule if line.toprule
262
- row.midrule if line.midrule
263
- line.each{|cell|
264
- row << cell.cell_element.cr
265
- }
266
- }
267
- end
268
- def to_doc( target, options = {})
269
- @tab.to_doc( target, options )
270
- end
271
- end #Creole_tabular
272
-
273
- class Creole_longtable < Creole_tabular
274
- set_placeholder_key 'longtable'
275
- end
276
-
277
- #~ class Creole_supertabular < Creole_tabular ##Not supported
278
- #~ set_placeholder_key 'supertabular'
279
- #~ end
280
- =begin rdoc
281
- This class needs the CSV-package (the user is responsible to load it).
282
-
283
- The LaTeX document needs the booktabs-package
284
-
285
- Options:
286
- * headers=false: Firest line contains headers (default: true)
287
- * format or columndescription: LaTeX header description
288
-
289
- Fixmes:
290
- * More parameters:
291
- ** toprule, hline,
292
- ** Other table (supertabular...)
293
- * Bug: CSV without header returns Array of array
294
-
295
- =end
296
- class Creole_tabular_csv < Placeholder
297
- set_placeholder_key 'tabular_csv'
298
- def to_doc( target, options = {})
299
- if ! defined? CSV
300
- @log.fatal("tabular_csv needs CSV-package")
301
- raise "tabular_csv needs CSV-package"
302
- end
303
- @log.fatal("tabular_csv needs parameters (format, col_sep)") unless @parameters.respond_to? :split
304
- columndescription = nil
305
- headers = true #first CSV-line contains
306
- colsep = ';'
307
- @parameters.split(/[|;]/).each{|parameter|
308
- case parameter
309
- when /headers=false/; headers = false
310
- when /(format|columndescription)=(.*)/; columndescription = $2
311
- #Some separator get a name. This is made especially, of the separator is also used as parameter separator.
312
- when /(col_sep)=(.*)/; colsep = {'semicolon' => ';', 'tab' => "\t", 'bar' => '|'}[$2] || $2
313
- @log.warn("tabular_csv with undefined separator (use semicolon, tab or bar)" % parameter) unless colsep
314
- else
315
- @log.warn("tabular_csv with unknown option %s" % parameter)
316
- end
317
- }
318
-
319
- csv = CSV.parse(@source.join, :col_sep => colsep, :headers => true)
320
- if ! columndescription
321
- columndescription = 'c' * csv.headers.size
322
- @log.warn("tabular_csv without LaTeX columndescription. Use %s" % columndescription)
323
- end
324
- tab = element(:tabular, { :columns => csv.headers.size, :columndescription => columndescription }).cR
325
- tab << row = element(:row).cr.toprule
326
- csv.headers.each{|title|row << element(:th,{}, title) }
327
- csv.each{|line|
328
- tab << row = element(:row).cr
329
- line.each{|cell|
330
- row << element(:td,{}, cell.last)
331
- }
332
- }
333
- tab.to_doc( target, options )
334
- end
335
- end
336
-
337
- end #module Creole
338
-
339
- end #module Docgenerator
340
-
341
-
342
- if $0 == __FILE__
343
-
344
- creole = Docgenerator::Creole::Creole.new(
345
- :name => 'tabular_creole',
346
- :content => <<'creole'
347
- <<<tabular
348
- |!columns=3
349
- |!columndescription=ccc
350
- |=a
351
- |=b
352
- |=c
353
- |-
354
- |a
355
- |b
356
- |c
357
- >>>
358
- creole
359
- )
360
- require 'csv'
361
- creole = Docgenerator::Creole::Creole.new(
362
- :name => 'tabular_creole',
363
- :content => <<'creole'
364
- <<<tabular_csv|columndescription=rrr|col_sep=semicolon
365
- 1;2;3
366
- yy;yy;yy;
367
- xx;xx;xx;
368
- >>>
369
- creole
370
- ) #if false
371
-
372
- puts creole.to_html #testcode
373
- puts creole.to_latex #testcode
374
- end
375
- __END__
376
-
377
- class Creole_tabular_cvs
378
- include Placeholder
379
-
380
- <<<tabular_csv|CSV-Options
381
- yy;yy;yy;
382
- yy;yy;yy;
383
- yy;yy;yy;
384
- <<<
385
-
386
-
387
- Die Syntax:
388
- *{| beginnt eine Tabelle. Hier können zusätzliche Formatierungseigenschaften kommen.
389
- **Zumindest columns==__ sollte gesetzt sein
390
- *! beginnt eine neue Zelle einer Titelzeile
391
- *| beginnt eine neue Zelle
392
- *|format| z.B. rowspan...
393
- *|format|| Zwei || beenden die Parameter der Zelle.
394
- Dann sinnvoll, wenn im Text selbst ein | vorkommt
395
- (z.B. ein Macro verwendet wird)
396
- *|- trennt zwei Zeilen der Tabelle
397
- **hline: Zusätzlicher Trennstrich über der Zeile
398
- **toprule, midrule, bottomrule: Zusätzlicher Trennstrich über der Zeile (erfordert booktabs.sty)
399
- *|} beendet eine Tabelle
400
-
401
-