webgen 0.5.17 → 1.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
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>