webgen 0.5.17 → 1.0.0.beta1

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 (408) hide show
  1. data/API.rdoc +143 -0
  2. data/AUTHORS +0 -1
  3. data/COPYING +17 -8
  4. data/ChangeLog +4456 -0
  5. data/GPL +623 -289
  6. data/README.md +71 -0
  7. data/Rakefile +87 -99
  8. data/VERSION +1 -1
  9. data/bin/webgen +1 -7
  10. data/data/webgen/basic_website_template/ext/init.rb +15 -0
  11. data/data/webgen/basic_website_template/webgen.config +18 -0
  12. data/data/webgen/bundle_template_files/README.md.erb +24 -0
  13. data/data/webgen/bundle_template_files/Rakefile.erb +36 -0
  14. data/data/webgen/bundle_template_files/info.yaml.erb +16 -0
  15. data/data/webgen/bundle_template_files/init.rb.erb +1 -0
  16. data/data/webgen/passive_sources/default.metainfo +32 -0
  17. data/data/webgen/passive_sources/stylesheets/coderay-default.css +109 -118
  18. data/data/webgen/passive_sources/templates/feed.template +62 -0
  19. data/data/webgen/passive_sources/templates/sitemap.template +3 -6
  20. data/data/webgen/passive_sources/templates/tag.template +42 -0
  21. data/data/webgen/website_bundles/default/README +2 -2
  22. data/lib/webgen/blackboard.rb +15 -51
  23. data/lib/webgen/bundle/built-in-show-changes/init.rb +54 -0
  24. data/lib/webgen/bundle/built-in/init.rb +366 -0
  25. data/lib/webgen/bundle_loader.rb +126 -0
  26. data/lib/webgen/cache.rb +9 -18
  27. data/lib/webgen/cli.rb +131 -58
  28. data/lib/webgen/cli/bundle_command.rb +30 -0
  29. data/lib/webgen/cli/create_bundle_command.rb +46 -0
  30. data/lib/webgen/cli/create_command.rb +48 -60
  31. data/lib/webgen/cli/generate_command.rb +25 -0
  32. data/lib/webgen/cli/install_bundle_command.rb +34 -0
  33. data/lib/webgen/cli/list_bundle_command.rb +108 -0
  34. data/lib/webgen/cli/logger.rb +45 -0
  35. data/lib/webgen/cli/show_command.rb +30 -0
  36. data/lib/webgen/cli/show_config_command.rb +63 -0
  37. data/lib/webgen/cli/show_dependencies_command.rb +103 -0
  38. data/lib/webgen/cli/show_extensions_command.rb +74 -0
  39. data/lib/webgen/cli/utils.rb +68 -95
  40. data/lib/webgen/configuration.rb +143 -105
  41. data/lib/webgen/content_processor.rb +160 -0
  42. data/lib/webgen/content_processor/blocks.rb +96 -0
  43. data/lib/webgen/content_processor/builder.rb +25 -0
  44. data/lib/webgen/content_processor/erb.rb +25 -0
  45. data/lib/webgen/content_processor/erubis.rb +31 -0
  46. data/lib/webgen/content_processor/fragments.rb +82 -0
  47. data/lib/webgen/content_processor/haml.rb +25 -0
  48. data/lib/webgen/content_processor/html_head.rb +157 -0
  49. data/lib/webgen/content_processor/kramdown.rb +49 -0
  50. data/lib/webgen/content_processor/maruku.rb +39 -0
  51. data/lib/webgen/content_processor/r_discount.rb +21 -0
  52. data/lib/webgen/content_processor/rdoc.rb +22 -0
  53. data/lib/webgen/content_processor/redcloth.rb +23 -0
  54. data/lib/webgen/content_processor/ruby.rb +20 -0
  55. data/lib/webgen/content_processor/sass.rb +145 -0
  56. data/lib/webgen/content_processor/scss.rb +23 -0
  57. data/lib/webgen/content_processor/tags.rb +30 -0
  58. data/lib/webgen/content_processor/tidy.rb +32 -0
  59. data/lib/webgen/content_processor/tikz.rb +116 -0
  60. data/lib/webgen/content_processor/xmllint.rb +31 -0
  61. data/lib/webgen/context.rb +57 -29
  62. data/lib/webgen/context/html_head.rb +60 -0
  63. data/lib/webgen/context/nodes.rb +32 -27
  64. data/lib/webgen/context/rendering.rb +39 -0
  65. data/lib/webgen/context/webgen_tags.rb +25 -0
  66. data/lib/webgen/core_ext.rb +25 -0
  67. data/lib/webgen/destination.rb +151 -0
  68. data/lib/webgen/destination/file_system.rb +62 -0
  69. data/lib/webgen/error.rb +59 -49
  70. data/lib/webgen/extension_manager.rb +121 -0
  71. data/lib/webgen/item_tracker.rb +237 -0
  72. data/lib/webgen/item_tracker/file.rb +39 -0
  73. data/lib/webgen/item_tracker/missing_node.rb +61 -0
  74. data/lib/webgen/item_tracker/node_content.rb +40 -0
  75. data/lib/webgen/item_tracker/node_meta_info.rb +53 -0
  76. data/lib/webgen/item_tracker/nodes.rb +92 -0
  77. data/lib/webgen/logger.rb +26 -82
  78. data/lib/webgen/node.rb +122 -367
  79. data/lib/webgen/node_finder.rb +336 -0
  80. data/lib/webgen/page.rb +48 -85
  81. data/lib/webgen/path.rb +218 -156
  82. data/lib/webgen/path_handler.rb +400 -0
  83. data/lib/webgen/path_handler/base.rb +220 -0
  84. data/lib/webgen/path_handler/copy.rb +78 -0
  85. data/lib/webgen/path_handler/directory.rb +21 -0
  86. data/lib/webgen/path_handler/feed.rb +82 -0
  87. data/lib/webgen/path_handler/meta_info.rb +84 -0
  88. data/lib/webgen/path_handler/page.rb +38 -0
  89. data/lib/webgen/path_handler/page_utils.rb +79 -0
  90. data/lib/webgen/path_handler/sitemap.rb +52 -0
  91. data/lib/webgen/path_handler/template.rb +96 -0
  92. data/lib/webgen/path_handler/virtual.rb +85 -0
  93. data/lib/webgen/{webgentask.rb → rake_task.rb} +31 -27
  94. data/lib/webgen/source.rb +106 -24
  95. data/lib/webgen/source/file_system.rb +41 -0
  96. data/lib/webgen/source/stacked.rb +49 -53
  97. data/lib/webgen/source/tar_archive.rb +59 -0
  98. data/lib/webgen/tag.rb +250 -19
  99. data/lib/webgen/tag/breadcrumb_trail.rb +65 -0
  100. data/lib/webgen/tag/coderay.rb +32 -35
  101. data/lib/webgen/tag/date.rb +9 -9
  102. data/lib/webgen/tag/execute_command.rb +31 -0
  103. data/lib/webgen/tag/include_file.rb +32 -0
  104. data/lib/webgen/tag/langbar.rb +31 -47
  105. data/lib/webgen/tag/link.rb +17 -18
  106. data/lib/webgen/tag/menu.rb +27 -189
  107. data/lib/webgen/tag/meta_info.rb +31 -0
  108. data/lib/webgen/tag/relocatable.rb +48 -39
  109. data/lib/webgen/tag/tikz.rb +24 -100
  110. data/lib/webgen/task.rb +99 -0
  111. data/lib/webgen/task/create_bundle.rb +73 -0
  112. data/lib/webgen/task/create_website.rb +94 -0
  113. data/lib/webgen/task/generate_website.rb +47 -0
  114. data/lib/webgen/test_helper.rb +183 -0
  115. data/lib/webgen/tree.rb +95 -46
  116. data/lib/webgen/utils.rb +39 -0
  117. data/lib/webgen/utils/external_command.rb +27 -0
  118. data/lib/webgen/utils/tag_parser.rb +124 -0
  119. data/lib/webgen/version.rb +1 -1
  120. data/lib/webgen/website.rb +134 -296
  121. data/setup.rb +1 -1
  122. data/test/test_documentation.rb +43 -0
  123. data/test/webgen/cli/test_logger.rb +41 -0
  124. data/test/{test_contentprocessor_blocks.rb → webgen/content_processor/test_blocks.rb} +30 -28
  125. data/test/webgen/content_processor/test_builder.rb +25 -0
  126. data/test/webgen/content_processor/test_erb.rb +21 -0
  127. data/test/webgen/content_processor/test_erubis.rb +33 -0
  128. data/test/webgen/content_processor/test_fragments.rb +96 -0
  129. data/test/webgen/content_processor/test_haml.rb +24 -0
  130. data/test/webgen/content_processor/test_html_head.rb +78 -0
  131. data/test/webgen/content_processor/test_kramdown.rb +49 -0
  132. data/test/webgen/content_processor/test_maruku.rb +30 -0
  133. data/test/webgen/content_processor/test_r_discount.rb +18 -0
  134. data/test/webgen/content_processor/test_rdoc.rb +18 -0
  135. data/test/webgen/content_processor/test_redcloth.rb +23 -0
  136. data/test/webgen/content_processor/test_ruby.rb +24 -0
  137. data/test/webgen/content_processor/test_sass.rb +44 -0
  138. data/test/webgen/content_processor/test_scss.rb +23 -0
  139. data/test/webgen/content_processor/test_tags.rb +44 -0
  140. data/test/webgen/content_processor/test_tidy.rb +31 -0
  141. data/test/webgen/content_processor/test_tikz.rb +33 -0
  142. data/test/webgen/content_processor/test_xmllint.rb +32 -0
  143. data/test/webgen/destination/test_file_system.rb +54 -0
  144. data/test/webgen/item_tracker/test_file.rb +31 -0
  145. data/test/webgen/item_tracker/test_missing_node.rb +70 -0
  146. data/test/webgen/item_tracker/test_node_content.rb +42 -0
  147. data/test/webgen/item_tracker/test_node_meta_info.rb +44 -0
  148. data/test/webgen/item_tracker/test_nodes.rb +61 -0
  149. data/test/webgen/path_handler/test_base.rb +153 -0
  150. data/test/webgen/path_handler/test_copy.rb +56 -0
  151. data/test/webgen/path_handler/test_feed.rb +85 -0
  152. data/test/webgen/path_handler/test_meta_info.rb +98 -0
  153. data/test/webgen/path_handler/test_page.rb +25 -0
  154. data/test/webgen/path_handler/test_page_utils.rb +59 -0
  155. data/test/webgen/path_handler/test_sitemap.rb +95 -0
  156. data/test/webgen/path_handler/test_template.rb +64 -0
  157. data/test/webgen/path_handler/test_virtual.rb +87 -0
  158. data/test/webgen/source/test_file_system.rb +51 -0
  159. data/test/webgen/source/test_stacked.rb +35 -0
  160. data/test/{test_source_tararchive.rb → webgen/source/test_tar_archive.rb} +10 -25
  161. data/test/webgen/tag/test_breadcrumb_trail.rb +66 -0
  162. data/test/webgen/tag/test_coderay.rb +34 -0
  163. data/test/webgen/tag/test_date.rb +18 -0
  164. data/test/webgen/tag/test_execute_command.rb +36 -0
  165. data/test/webgen/tag/test_include_file.rb +35 -0
  166. data/test/webgen/tag/test_langbar.rb +50 -0
  167. data/test/webgen/tag/test_link.rb +40 -0
  168. data/test/webgen/tag/test_menu.rb +61 -0
  169. data/test/webgen/tag/test_meta_info.rb +25 -0
  170. data/test/webgen/tag/test_relocatable.rb +50 -0
  171. data/test/webgen/tag/test_tikz.rb +41 -0
  172. data/test/webgen/task/test_create_website.rb +46 -0
  173. data/test/webgen/test_blackboard.rb +31 -0
  174. data/test/webgen/test_bundle_loader.rb +55 -0
  175. data/test/{test_cache.rb → webgen/test_cache.rb} +3 -15
  176. data/test/webgen/test_cli.rb +41 -0
  177. data/test/webgen/test_configuration.rb +131 -0
  178. data/test/webgen/test_content_processor.rb +86 -0
  179. data/test/webgen/test_context.rb +73 -0
  180. data/test/webgen/test_core_ext.rb +20 -0
  181. data/test/webgen/test_destination.rb +48 -0
  182. data/test/webgen/test_error.rb +121 -0
  183. data/test/webgen/test_extension_manager.rb +70 -0
  184. data/test/webgen/test_item_tracker.rb +106 -0
  185. data/test/{test_languages.rb → webgen/test_languages.rb} +4 -4
  186. data/test/webgen/test_logger.rb +46 -0
  187. data/test/webgen/test_node.rb +178 -0
  188. data/test/webgen/test_node_finder.rb +127 -0
  189. data/test/{test_page.rb → webgen/test_page.rb} +44 -48
  190. data/test/webgen/test_path.rb +271 -0
  191. data/test/{test_webgentask.rb → webgen/test_rake_task.rb} +4 -4
  192. data/test/webgen/test_source.rb +59 -0
  193. data/test/webgen/test_tag.rb +137 -0
  194. data/test/webgen/test_task.rb +40 -0
  195. data/test/webgen/test_tree.rb +147 -0
  196. data/test/webgen/test_utils.rb +16 -0
  197. data/test/webgen/test_website.rb +45 -0
  198. data/test/webgen/utils/test_tag_parser.rb +99 -0
  199. metadata +292 -344
  200. data/data/webgen/passive_sources/templates/atom_feed.template +0 -39
  201. data/data/webgen/passive_sources/templates/rss_feed.template +0 -28
  202. data/data/webgen/resources.yaml +0 -4
  203. data/data/webgen/webgui/app.rb +0 -11
  204. data/data/webgen/webgui/controller/main.rb +0 -135
  205. data/data/webgen/webgui/layout/default.xhtml +0 -40
  206. data/data/webgen/webgui/overrides/win32console.rb +0 -0
  207. data/data/webgen/webgui/public/css/jquery.autocomplete.css +0 -50
  208. data/data/webgen/webgui/public/css/ramaze_error.css +0 -90
  209. data/data/webgen/webgui/public/css/style.css +0 -55
  210. data/data/webgen/webgui/public/img/headerbg.jpg +0 -0
  211. data/data/webgen/webgui/public/img/webgen_logo.png +0 -0
  212. data/data/webgen/webgui/public/js/jquery.autocomplete.js +0 -15
  213. data/data/webgen/webgui/public/js/jquery.js +0 -32
  214. data/data/webgen/webgui/start.rb +0 -9
  215. data/data/webgen/webgui/view/create_website.xhtml +0 -14
  216. data/data/webgen/webgui/view/error.xhtml +0 -64
  217. data/data/webgen/webgui/view/index.xhtml +0 -22
  218. data/data/webgen/webgui/view/manage_website.xhtml +0 -18
  219. data/data/webgen/website_skeleton/README +0 -10
  220. data/data/webgen/website_skeleton/Rakefile +0 -69
  221. data/data/webgen/website_skeleton/config.yaml +0 -35
  222. data/data/webgen/website_skeleton/ext/init.rb +0 -10
  223. data/doc/contentprocessor.template +0 -11
  224. data/doc/contentprocessor/blocks.page +0 -129
  225. data/doc/contentprocessor/builder.page +0 -79
  226. data/doc/contentprocessor/erb.page +0 -60
  227. data/doc/contentprocessor/erubis.page +0 -46
  228. data/doc/contentprocessor/fragments.page +0 -26
  229. data/doc/contentprocessor/haml.page +0 -46
  230. data/doc/contentprocessor/head.page +0 -31
  231. data/doc/contentprocessor/kramdown.page +0 -49
  232. data/doc/contentprocessor/less.page +0 -34
  233. data/doc/contentprocessor/maruku.page +0 -44
  234. data/doc/contentprocessor/rdiscount.page +0 -37
  235. data/doc/contentprocessor/rdoc.page +0 -36
  236. data/doc/contentprocessor/redcloth.page +0 -41
  237. data/doc/contentprocessor/sass.page +0 -31
  238. data/doc/contentprocessor/scss.page +0 -39
  239. data/doc/contentprocessor/tags.page +0 -73
  240. data/doc/contentprocessor/tidy.page +0 -14
  241. data/doc/contentprocessor/xmllint.page +0 -14
  242. data/doc/extensions.metainfo +0 -29
  243. data/doc/extensions.page +0 -15
  244. data/doc/extensions.template +0 -17
  245. data/doc/faq.page +0 -222
  246. data/doc/getting_started.page +0 -135
  247. data/doc/index.page +0 -71
  248. data/doc/manual.page +0 -727
  249. data/doc/reference_configuration.page +0 -1254
  250. data/doc/reference_metainfo.page +0 -265
  251. data/doc/reference_website_styles.page +0 -32
  252. data/doc/source/filesystem.page +0 -41
  253. data/doc/source/tararchive.page +0 -40
  254. data/doc/sourcehandler.template +0 -23
  255. data/doc/sourcehandler/copy.page +0 -19
  256. data/doc/sourcehandler/directory.page +0 -27
  257. data/doc/sourcehandler/feed.page +0 -102
  258. data/doc/sourcehandler/metainfo.page +0 -48
  259. data/doc/sourcehandler/page.page +0 -14
  260. data/doc/sourcehandler/sitemap.page +0 -46
  261. data/doc/sourcehandler/template.page +0 -45
  262. data/doc/sourcehandler/virtual.page +0 -49
  263. data/doc/tag.template +0 -25
  264. data/doc/tag/breadcrumbtrail.page +0 -40
  265. data/doc/tag/coderay.page +0 -53
  266. data/doc/tag/date.page +0 -31
  267. data/doc/tag/executecommand.page +0 -26
  268. data/doc/tag/includefile.page +0 -32
  269. data/doc/tag/langbar.page +0 -47
  270. data/doc/tag/link.page +0 -44
  271. data/doc/tag/menu.page +0 -109
  272. data/doc/tag/metainfo.page +0 -29
  273. data/doc/tag/relocatable.page +0 -38
  274. data/doc/tag/sitemap.page +0 -31
  275. data/doc/tag/tikz.page +0 -159
  276. data/doc/upgrading.page +0 -138
  277. data/doc/webgen_page_format.page +0 -129
  278. data/doc/website_styles.metainfo +0 -8
  279. data/lib/webgen/cli/apply_command.rb +0 -66
  280. data/lib/webgen/cli/run_command.rb +0 -22
  281. data/lib/webgen/cli/webgui_command.rb +0 -68
  282. data/lib/webgen/common.rb +0 -27
  283. data/lib/webgen/common/sitemap.rb +0 -83
  284. data/lib/webgen/contentprocessor.rb +0 -117
  285. data/lib/webgen/contentprocessor/blocks.rb +0 -92
  286. data/lib/webgen/contentprocessor/builder.rb +0 -29
  287. data/lib/webgen/contentprocessor/erb.rb +0 -26
  288. data/lib/webgen/contentprocessor/erubis.rb +0 -39
  289. data/lib/webgen/contentprocessor/fragments.rb +0 -25
  290. data/lib/webgen/contentprocessor/haml.rb +0 -34
  291. data/lib/webgen/contentprocessor/head.rb +0 -128
  292. data/lib/webgen/contentprocessor/kramdown.rb +0 -27
  293. data/lib/webgen/contentprocessor/kramdown/html.rb +0 -36
  294. data/lib/webgen/contentprocessor/less.rb +0 -35
  295. data/lib/webgen/contentprocessor/maruku.rb +0 -36
  296. data/lib/webgen/contentprocessor/rdiscount.rb +0 -19
  297. data/lib/webgen/contentprocessor/rdoc.rb +0 -20
  298. data/lib/webgen/contentprocessor/redcloth.rb +0 -21
  299. data/lib/webgen/contentprocessor/sass.rb +0 -22
  300. data/lib/webgen/contentprocessor/scss.rb +0 -22
  301. data/lib/webgen/contentprocessor/tags.rb +0 -170
  302. data/lib/webgen/contentprocessor/tidy.rb +0 -38
  303. data/lib/webgen/contentprocessor/xmllint.rb +0 -37
  304. data/lib/webgen/context/render.rb +0 -32
  305. data/lib/webgen/context/tags.rb +0 -20
  306. data/lib/webgen/coreext.rb +0 -13
  307. data/lib/webgen/default_config.rb +0 -240
  308. data/lib/webgen/loggable.rb +0 -25
  309. data/lib/webgen/output.rb +0 -86
  310. data/lib/webgen/output/filesystem.rb +0 -69
  311. data/lib/webgen/source/filesystem.rb +0 -61
  312. data/lib/webgen/source/resource.rb +0 -45
  313. data/lib/webgen/source/tararchive.rb +0 -78
  314. data/lib/webgen/sourcehandler.rb +0 -275
  315. data/lib/webgen/sourcehandler/base.rb +0 -281
  316. data/lib/webgen/sourcehandler/copy.rb +0 -44
  317. data/lib/webgen/sourcehandler/directory.rb +0 -30
  318. data/lib/webgen/sourcehandler/feed.rb +0 -92
  319. data/lib/webgen/sourcehandler/fragment.rb +0 -70
  320. data/lib/webgen/sourcehandler/memory.rb +0 -42
  321. data/lib/webgen/sourcehandler/metainfo.rb +0 -128
  322. data/lib/webgen/sourcehandler/page.rb +0 -64
  323. data/lib/webgen/sourcehandler/sitemap.rb +0 -60
  324. data/lib/webgen/sourcehandler/template.rb +0 -66
  325. data/lib/webgen/sourcehandler/virtual.rb +0 -117
  326. data/lib/webgen/tag/base.rb +0 -170
  327. data/lib/webgen/tag/breadcrumbtrail.rb +0 -70
  328. data/lib/webgen/tag/executecommand.rb +0 -31
  329. data/lib/webgen/tag/includefile.rb +0 -42
  330. data/lib/webgen/tag/metainfo.rb +0 -27
  331. data/lib/webgen/tag/sitemap.rb +0 -41
  332. data/lib/webgen/websiteaccess.rb +0 -31
  333. data/lib/webgen/websitemanager.rb +0 -125
  334. data/misc/default.css +0 -403
  335. data/misc/default.template +0 -76
  336. data/misc/htmldoc.metainfo +0 -26
  337. data/misc/htmldoc.virtual +0 -17
  338. data/misc/images/arrow.gif +0 -0
  339. data/misc/images/error.png +0 -0
  340. data/misc/images/headerbg.jpg +0 -0
  341. data/misc/images/important.png +0 -0
  342. data/misc/images/information.png +0 -0
  343. data/misc/images/quote.gif +0 -0
  344. data/misc/images/warning.png +0 -0
  345. data/misc/logo.svg +0 -313
  346. data/misc/style.page +0 -33
  347. data/test/helper.rb +0 -61
  348. data/test/test_blackboard.rb +0 -60
  349. data/test/test_cli.rb +0 -119
  350. data/test/test_common_sitemap.rb +0 -58
  351. data/test/test_configuration.rb +0 -68
  352. data/test/test_contentprocessor.rb +0 -39
  353. data/test/test_contentprocessor_builder.rb +0 -41
  354. data/test/test_contentprocessor_erb.rb +0 -33
  355. data/test/test_contentprocessor_erubis.rb +0 -62
  356. data/test/test_contentprocessor_fragments.rb +0 -43
  357. data/test/test_contentprocessor_haml.rb +0 -39
  358. data/test/test_contentprocessor_head.rb +0 -96
  359. data/test/test_contentprocessor_kramdown.rb +0 -56
  360. data/test/test_contentprocessor_less.rb +0 -40
  361. data/test/test_contentprocessor_maruku.rb +0 -33
  362. data/test/test_contentprocessor_rdiscount.rb +0 -21
  363. data/test/test_contentprocessor_rdoc.rb +0 -22
  364. data/test/test_contentprocessor_redcloth.rb +0 -26
  365. data/test/test_contentprocessor_sass.rb +0 -28
  366. data/test/test_contentprocessor_scss.rb +0 -28
  367. data/test/test_contentprocessor_tags.rb +0 -122
  368. data/test/test_contentprocessor_tidy.rb +0 -34
  369. data/test/test_contentprocessor_xmllint.rb +0 -38
  370. data/test/test_context.rb +0 -81
  371. data/test/test_error.rb +0 -93
  372. data/test/test_loggable.rb +0 -32
  373. data/test/test_logger.rb +0 -94
  374. data/test/test_node.rb +0 -469
  375. data/test/test_output_filesystem.rb +0 -60
  376. data/test/test_path.rb +0 -241
  377. data/test/test_source_filesystem.rb +0 -76
  378. data/test/test_source_resource.rb +0 -28
  379. data/test/test_source_stacked.rb +0 -49
  380. data/test/test_sourcehandler_base.rb +0 -136
  381. data/test/test_sourcehandler_copy.rb +0 -47
  382. data/test/test_sourcehandler_directory.rb +0 -38
  383. data/test/test_sourcehandler_feed.rb +0 -88
  384. data/test/test_sourcehandler_fragment.rb +0 -70
  385. data/test/test_sourcehandler_main.rb +0 -39
  386. data/test/test_sourcehandler_memory.rb +0 -44
  387. data/test/test_sourcehandler_metainfo.rb +0 -127
  388. data/test/test_sourcehandler_page.rb +0 -73
  389. data/test/test_sourcehandler_sitemap.rb +0 -68
  390. data/test/test_sourcehandler_template.rb +0 -68
  391. data/test/test_sourcehandler_virtual.rb +0 -106
  392. data/test/test_tag_base.rb +0 -62
  393. data/test/test_tag_breadcrumbtrail.rb +0 -91
  394. data/test/test_tag_coderay.rb +0 -45
  395. data/test/test_tag_date.rb +0 -18
  396. data/test/test_tag_executecommand.rb +0 -41
  397. data/test/test_tag_includefile.rb +0 -50
  398. data/test/test_tag_langbar.rb +0 -71
  399. data/test/test_tag_link.rb +0 -70
  400. data/test/test_tag_menu.rb +0 -207
  401. data/test/test_tag_metainfo.rb +0 -26
  402. data/test/test_tag_relocatable.rb +0 -60
  403. data/test/test_tag_sitemap.rb +0 -47
  404. data/test/test_tag_tikz.rb +0 -69
  405. data/test/test_tree.rb +0 -70
  406. data/test/test_website.rb +0 -130
  407. data/test/test_websiteaccess.rb +0 -25
  408. data/test/test_websitemanager.rb +0 -65
@@ -1,102 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Feed
3
- ---
4
- ## Description
5
-
6
- This source handler automatically generates an atom or RSS feed for a set of files from a file in
7
- [Webgen Page Format](../webgen_page_format.html) (the format which is also used for page files).
8
-
9
- The following meta information keys are supported:
10
-
11
- * `entries` (MANDATORY)
12
-
13
- A LCN pattern (or an array of LCN patterns) which specify the page files that should be
14
- used. Other matched files are excluded from the list.
15
-
16
- > Be aware that if you want to include a single file or files in a specific language only you
17
- > need to include the language part since this is a LCN and not a CN pattern, eg. `mypage.html`
18
- > won't work but `mypage.en.html` will!
19
- {:.information}
20
-
21
- * `number_of_entries` (OPTIONAL)
22
-
23
- The number of entries that should be included in the feed. Defaults to 10.
24
-
25
- * `atom` (OPTIONAL)
26
-
27
- An atom feed is generated if this key is set to `true`. Defaults to `true`. The generated file
28
- name derives from the feed file name but the extension is changed to `atom`.
29
-
30
- * `rss` (OPTIONAL)
31
-
32
- A RSS feed is generated if this key is set to `true`. Defaults to `true`. The generated file
33
- name derives from the feed file name but the extension is changed to `rss`.
34
-
35
- * `rss_version` (OPTIONAL)
36
-
37
- The RSS version that should be used for generating the RSS feed. Defaults to `2.0`.
38
-
39
- * `site_url` (MANDATORY)
40
-
41
- The base url of the website for which the feed is generated.
42
-
43
- * `author` (MANDATORY)
44
-
45
- Specifies the author of the feed.
46
-
47
- * `author_url` (OPTIONAL)
48
-
49
- Specifies the URL of the homepage of the author.
50
-
51
- * `title` (MANDATORY)
52
-
53
- The title of the feed.
54
-
55
- * `description` (OPTIONAL)
56
-
57
- A short description of the feed.
58
-
59
- * `created_at` (OPTIONAL)
60
-
61
- The time at which this feed was created. Defaults to the current time if not set. Has the same
62
- format as the meta information `created_at`.
63
-
64
- * `content_block_name` (OPTIONAL)
65
-
66
- The name of the block that should be used for the content of the feed entries. If not specified
67
- the name `content` is used. Be aware that each page file that can appear in the feed needs to
68
- have such a block!
69
-
70
- The following meta information keys of page files are used if they are specified:
71
-
72
- * `created_at`
73
-
74
- The time at which the page file was created, used as the publication time.
75
-
76
- * `modified_at`
77
-
78
- The time at which the page file was last modified, used as the time at which this feed entry was
79
- updated.
80
-
81
- > This is the field that is used to sort the entries.
82
- {:.information}
83
-
84
- * `title`
85
-
86
- The title of the page file, used as title of the feed entry.
87
-
88
- * `author`
89
-
90
- The name of the author of the page file, used as the author of the feed entry.
91
-
92
- * `author_url`
93
-
94
- The URL of the homepage of the author. Only used if the `author` meta information is also set.
95
-
96
- The default implementation supports the generation of atom and RSS feeds by using templates shipped
97
- with webgen (the extension `feed` is changed to `atom` for atom feeds and to `rss` for rss feeds).
98
- The default templates are located under the ALCNs `/templates/atom_feed.template` and
99
- `/templates/rss_feed.template` and are automatically created and used if no such paths exist in the
100
- webgen website. You can also override the default generation mechanism on a file per file basis by
101
- adding an `atom_template` and/or `rss_template` block in the feed file which are then used to
102
- generate the atom or the RSS feed respectively.
@@ -1,48 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Metainfo
3
- ---
4
- ## Description
5
-
6
- This source handler provides the ability to set meta information for any path. It uses files in
7
- [Webgen Page Format](../webgen_page_format.html) which can have two special blocks:
8
-
9
- * `paths`: This block specifies meta information for paths and therefore this meta information is
10
- applied before a node for a path is created. This can be used, for example, to change the output
11
- path style. When specifying patterns, remember that the patterns are matched against paths!
12
-
13
- * `alcn`: This block specifies meta information for nodes and this meta information is applied
14
- directly after a node has been created. When specifying patterns, remember that the patterns are
15
- matched against absolute localized canonical names! So you always need to take the language part
16
- into account, ie. `/index.html` won't match but `/index.en.html` will.
17
-
18
- When no name is specified in the meta information file, the first block is assumed to be the `paths`
19
- block and the second block is assumed to be the `alcn` block. The format of the two blocks is the
20
- same: they need to be in YAML format and provide a hash with path patterns as keys and the
21
- to-be-assigned meta information as values. The patterns can be normal file system paths or node
22
- (a)lcns but you can also use some special characters like `*` (match any file), `**` (match
23
- recursively or expansively) and `?` (match a single character). You can find the full information in
24
- the documentation for [File.fnmatch].
25
-
26
- All this is best showed in an example:
27
-
28
- --- name:paths
29
- /**/index.page:
30
- output_path_style: [:parent, :basename, :ext, [., :lang]]
31
-
32
- mypic.jpg:
33
- in_menu: true
34
- --- name:alcn
35
- **/index.en.html:
36
- in_menu: true
37
-
38
- All paths named `index.page` are assigned a new output path style. This has to be done in the
39
- `paths` block because otherwise it would have no effect. And the file `mypic.jpg` will show up in
40
- the menu. Notice, that the first form is specified as an absolute path pattern and the second
41
- not. If this meta information file lies in the root directory there is no difference between those
42
- two approaches. However, when it lies in a sub directory, the first form is still absolute but the
43
- second form is taken relative to the directory in which the meta information file is in.
44
-
45
- And last but not least, all nodes with a localized canonical name of `index.en.html` will show up in
46
- the menu (again, notice that the pattern is relative).
47
-
48
- [File.fnmatch]: http://ruby-doc.org/core/classes/File.html#M002603
@@ -1,14 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Page
3
- ---
4
- ## Description
5
-
6
- This source handler uses page files which are used to specify the actual content for the website.
7
- These files are written using [Webgen Page Format](../webgen_page_format.html). Therefore they
8
- contain the content for the web page and, optionally, meta information. The extension `page` is
9
- changed to `html` for the output file and canonical names.
10
-
11
- *In contrast* to other handled files, page files can never be unlocalized! If they have no language
12
- set, the default language specified using the configuration option `website.lang` is used. This
13
- means that for the default language set to English and a source path named `index.page`, the
14
- language meta information is automatically set to English.
@@ -1,46 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Sitemap
3
- ---
4
- ## Description
5
-
6
- This source handler automatically generates a sitemap based on the specification of
7
- [sitemaps.org](http://sitemaps.org) from a file in [Webgen Page Format](../webgen_page_format.html).
8
- The output and canonical names have the extension `xml` instead of `sitemap`.
9
-
10
- The following meta information keys are supported:
11
-
12
- * `site_url` (MANDATORY)
13
-
14
- The base url of the website for which the sitemap is generated.
15
-
16
- * `default_change_freq` (OPTIONAL)
17
-
18
- The default change frequency of a file.
19
-
20
- * `default_priority` (OPTIONAL)
21
-
22
- The default priority of a file.
23
-
24
- You can also specify all common sitemap configuration options to customize the output of the source
25
- handler.
26
-
27
- The following meta information keys of files are used if they are specified:
28
-
29
- * `modified_at`
30
-
31
- The time at which the file was last modified, used as the time at which this feed entry was
32
- updated.
33
-
34
- * `change_freq`
35
-
36
- The change frequency of the the file.
37
-
38
- * `priority`
39
-
40
- The priority of the file in respect to the other files.
41
-
42
- The generation of the sitemap is done via a template and the template used needs to be located under
43
- the ALCN `/templates/sitemap.template`. This default template is automatically created and used if
44
- no such path exists in the webgen website. You can also override the default generation mechanism on
45
- a file per file basis by adding a `template` block in the sitemap file which is then used to generate
46
- the sitemap.
@@ -1,45 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Template
3
- ---
4
- ## Description
5
-
6
- The template handler processes the templates files. Templates, as the name already implies, normally
7
- specify the layout and the overall "picture" of a web page that is defined using a page file. These
8
- files are in [Webgen Page Format](../webgen_page_format.html) (the format which is also used for
9
- page files).
10
-
11
- The configuration option `sourcehandler.template.default_template` specifies the name of the default
12
- template which is used when no explicit template is set via the meta information `template`. webgen
13
- assumes that the default template is in the same directory as the page file. However, if it can not
14
- be found there, the parent directory is searched for it and so on. If a default template isn't found
15
- in the root directory, no template is used at all. This means that when you create a default
16
- template in the root directory, it is used as template for all page files that have no explicit
17
- template set.
18
-
19
- webgen also uses the concept of a template chain to support multiple templates for one page
20
- file. For example, assume that
21
-
22
- * the page file `index.page` has set the `template` meta information to `special.template`,
23
- * the template `special.template` has no `template` meta information set and
24
- * the page file `other.page` also has no `template` meta information set.
25
-
26
- The template chain for `index.page` would look like this
27
-
28
- default.template <-- special.template <-- index.page
29
-
30
- whereas the template chain for `other.page` would look like this
31
-
32
- default.template <-- index.page
33
-
34
- The first case also means that the `special.template` is nested in the `default.template`. This
35
- makes it possible, for example, to create a general website layout and then to create a special
36
- image gallery layout which uses the general one.
37
-
38
- To stop the template handler from further searching for a template, you explicitly need to set a
39
- null template for the page or template file:
40
-
41
- template: ~
42
-
43
- This is useful if you want to have a different `default.template` in a sub directory which should
44
- provide a different look-and-feel for this subtree as the `default.template` in the root of the
45
- website.
@@ -1,49 +0,0 @@
1
- ---
2
- title: Webgen::SourceHandler::Virtual
3
- ---
4
- ## Description
5
-
6
- This source handler uses files in [Webgen Page Format](../webgen_page_format.html) which are used to
7
- specify virtual paths. Virtual paths don't really exist as source paths but are useful nonetheless.
8
- For example, they allow to include links to external content in automatically generated menus. They
9
- are never written out since they define no real content!
10
-
11
- The `content` block of the source path is used and its content needs to be a hash in YAML
12
- format. The keys are relative or absolute source paths names and the values meta information for
13
- them. Any meta information can be set on a virtual path but one meta information key is special:
14
- `url`. This meta information specifies, relative to the directory in which the source file is in,
15
- the output path for the virtual node. If no `url` meta information is specified, the source path
16
- itself is used as output path.
17
-
18
- Following is a sample virtual source files with explanations afterwards:
19
-
20
- \--- !omap
21
- - /documentation/:
22
-
23
- - /documentation/index.html:
24
- routed_title: Documentation
25
-
26
- - download_and_installation.html:
27
- in_menu: true
28
- sort_info: 25
29
- url: index.html#download__installation
30
-
31
- - /documentation/api.html:
32
- title: API Reference
33
- url: http://myhost.com/api
34
-
35
- > The example does not use a normal hash but an ordered YAML map. This ensures that the virtual
36
- > nodes are created in the order they appear in the file.
37
- {:.information}
38
-
39
- The first entry specifies that a directory `/documentation` should be created. The virtual file
40
- handler recognizes this because the given path ends in a slash!. Then a virtual index file for the
41
- virtual directory is created. This would be done, for example, when the documentation directory is
42
- created by an external program.
43
-
44
- The third entry specifies a virtual file that should in the menu and should have a certain sort
45
- information. When this virtual file is referenced, the path given by the `url` key is returned. This
46
- example shows how to make a single link to a fragment appear in automatically generated menus.
47
-
48
- And the fourth entry specifies another virtual file whose output path is an URL pointing to
49
- `http://myhost.com/api`.
data/doc/tag.template DELETED
@@ -1,25 +0,0 @@
1
- ---
2
- template: extensions.template
3
- --- name:summary pipeline:erb,tags,maruku,blocks
4
-
5
- The following tag names are registered for this tag class:
6
- <%= context.website.config['contentprocessor.tags.map'].
7
- select {|k,v| v == context.content_node['title']}.
8
- map {|k,v| '`' + (k.kind_of?(Symbol) ? k.inspect : k.to_s) + '`'}.join(', ') %>
9
-
10
- <% if context.content_node['used_options'] %>
11
- This tag uses the following options:
12
-
13
- <%
14
- for option in context.content_node['used_options']
15
- temp = 'mandatory' if !context.website.config.meta_info[option][:mandatory].nil?
16
- temp += ' default' if context.website.config.meta_info[option][:mandatory] == 'default'
17
- %>* [`<%= option %>`]({relocatable: reference_configuration.html#<%= option.tr('._', '') %>}) <%= temp ? '(' + temp + ')' : '' %>
18
- <%
19
- temp = nil
20
- end
21
- %>
22
-
23
- <% end %>
24
- --- name:content
25
- <webgen:block name='content' />
@@ -1,40 +0,0 @@
1
- ---
2
- title: Webgen::Tag::BreadcrumbTrail
3
- used_options:
4
- - tag.breadcrumbtrail.separator
5
- - tag.breadcrumbtrail.omit_index_path
6
- - tag.breadcrumbtrail.start_level
7
- - tag.breadcrumbtrail.end_level
8
- ---
9
- ## Description
10
-
11
- The breadcrumb trail tag is used for displaying the hierarchy of the current page. The behavior of
12
- the `tag.breadcrumbtrail.omit_index_path` option can be overridden for individual index paths by
13
- setting the meta information `omit_index_path` accordingly.
14
-
15
- The amount of levels shown can be customized by using the options `tag.breadcrumbtrail.start_level`
16
- and `tag.breadcrumbtrail.end_level`, see the examples below.
17
-
18
- ## Examples
19
-
20
- <table class="examples">
21
- <tr>
22
- <th>Usage</th><th>Output</th>
23
- </tr>
24
- <tr>
25
- <td>\{breadcrumb_trail:}</td>
26
- <td>{breadcrumb_trail:}</td>
27
- </tr>
28
- <tr>
29
- <td>\{breadcrumb_trail: {separator: " HELLO "}}</td>
30
- <td>{breadcrumb_trail: {separator: " HELLO "}}</td>
31
- </tr>
32
- <tr>
33
- <td>\{breadcrumb_trail: {end_level: -2}}</td>
34
- <td>{breadcrumb_trail: {end_level: -2}}</td>
35
- </tr>
36
- <tr>
37
- <td>\{breadcrumb_trail: {start_level: 1}}</td>
38
- <td>{breadcrumb_trail: {start_level: 1}}</td>
39
- </tr>
40
- </table>
data/doc/tag/coderay.page DELETED
@@ -1,53 +0,0 @@
1
- ---
2
- title: Webgen::Tag::Coderay
3
- used_options:
4
- - tag.coderay.lang
5
- - tag.coderay.process_body
6
- - tag.coderay.wrap
7
- - tag.coderay.line_numbers
8
- - tag.coderay.line_number_start
9
- - tag.coderay.bold_every
10
- - tag.coderay.tab_width
11
- - tag.coderay.css
12
- ---
13
- ## Description
14
-
15
- This tag applies syntax highlighting to its body by using the [coderay][1] library which can be used
16
- to highlight many different languages (see `tag.coderay.lang` documentation). The body of the tag
17
- specifies what should be highlighted.
18
-
19
- By using the configuration option `tag.coderay.css` you can specify whether you want to have inline
20
- styles, the default external stylesheet file or your own stylesheet file.
21
-
22
- > It is easy to include and highlight an entire file by combining this tag with the `include_file` tag:
23
- >
24
- > \{coderay:: ruby}{include_file: test.rb}{coderay}
25
- {:.information}
26
-
27
- > This extension is only available if you have installed the [coderay][1] library. The preferred
28
- > way to do this is via Rubygems:
29
- >
30
- > gem install coderay
31
- {:.warning}
32
-
33
- [1]: http://coderay.rubychan.de/ "The Coderay homepage"
34
-
35
- ## Examples
36
-
37
- <table class="examples">
38
- <tr>
39
- <th>Usage</th><th>Output</th>
40
- </tr>
41
- <tr>
42
- <td>\{coderay:: {lang: ruby, bold_every: 2}}{include_file: lib/webgen/version.rb}{coderay}</td>
43
- <% if File.exists?(File.join(context.website.directory, 'lib/webgen/version.rb')) %>
44
- <td>{coderay:: {lang: ruby, bold_every: 2}}{include_file: lib/webgen/version.rb}{coderay}</td>
45
- <% else %>
46
- <td>{coderay:: {lang: ruby, bold_every: 2}}{include_file: ../lib/webgen/version.rb}{coderay}</td>
47
- <% end %>
48
- </tr>
49
- <tr>
50
- <td>\{coderay:: {lang: ruby, wrap: span, css: class}}puts 5+5{coderay}</td>
51
- <td><code>{coderay:: {lang: ruby, wrap: span, css: class}}puts 5+5{coderay}</code></td>
52
- </tr>
53
- </table>
data/doc/tag/date.page DELETED
@@ -1,31 +0,0 @@
1
- ---
2
- title: Webgen::Tag::Date
3
- used_options:
4
- - tag.date.format
5
- ---
6
- ## Description
7
-
8
- The date tag is used to display the current time in a specific format (the format of Ruby's inbuilt
9
- method [Time#strftime][1]). Have a look a the examples below to see some possible outputs.
10
-
11
- [1]: http://www.ruby-doc.org/core/classes/Time.html
12
-
13
- ## Examples
14
-
15
- <table class="examples">
16
- <tr>
17
- <th>Usage</th><th>Output</th>
18
- </tr>
19
- <tr>
20
- <td>\{date:}</td>
21
- <td>{date:}</td>
22
- </tr>
23
- <tr>
24
- <td>\{date: {format: '%A, %Y-%m-%d'}}</td>
25
- <td>{date: {format: '%A, %Y-%m-%d'}}</td>
26
- </tr>
27
- <tr>
28
- <td>\{date: {format: %x - %X}}</td>
29
- <td>{date: {format: %x - %X}}</td>
30
- </tr>
31
- </table>