webgen 0.3.8 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (618) hide show
  1. data/ChangeLog +2565 -14
  2. data/README +4 -6
  3. data/Rakefile +207 -89
  4. data/TODO +175 -17
  5. data/VERSION +1 -1
  6. data/bin/webgen +1 -2
  7. data/data/webgen/gallery-creator/default.png +0 -0
  8. data/data/webgen/gallery_styles/default/README +6 -0
  9. data/data/webgen/gallery_styles/default/gallery_gallery.template +38 -0
  10. data/data/webgen/gallery_styles/default/gallery_image.template +30 -0
  11. data/data/webgen/gallery_styles/default/gallery_main.template +18 -0
  12. data/data/webgen/gallery_styles/slides/README +18 -0
  13. data/data/webgen/gallery_styles/slides/collage.rb +334 -0
  14. data/data/webgen/gallery_styles/slides/gallery_gallery.template +62 -0
  15. data/data/webgen/gallery_styles/slides/gallery_image.template +53 -0
  16. data/data/webgen/gallery_styles/slides/gallery_main.template +32 -0
  17. data/data/webgen/resources/images/generated_by_webgen.png +0 -0
  18. data/data/webgen/resources/images/webgen_logo.png +0 -0
  19. data/data/webgen/website_styles/1024px/README +10 -0
  20. data/data/webgen/website_styles/1024px/default.css +188 -0
  21. data/data/webgen/website_styles/1024px/default.template +62 -0
  22. data/data/webgen/website_styles/1024px/images/background.gif +0 -0
  23. data/data/webgen/website_styles/andreas00/README +10 -0
  24. data/data/webgen/website_styles/andreas00/default.css +290 -0
  25. data/data/webgen/website_styles/andreas00/default.template +62 -0
  26. data/data/webgen/website_styles/andreas00/images/bg.gif +0 -0
  27. data/data/webgen/website_styles/andreas00/images/front.jpg +0 -0
  28. data/data/webgen/website_styles/andreas00/images/menubg.gif +0 -0
  29. data/data/webgen/website_styles/andreas00/images/menubg2.gif +0 -0
  30. data/data/webgen/website_styles/andreas01/README +11 -0
  31. data/data/webgen/website_styles/andreas01/default.css +310 -0
  32. data/data/webgen/website_styles/andreas01/default.template +63 -0
  33. data/data/webgen/website_styles/andreas01/images/bg.gif +0 -0
  34. data/data/webgen/website_styles/andreas01/images/front.jpg +0 -0
  35. data/data/webgen/website_styles/andreas01/print.css +35 -0
  36. data/data/webgen/website_styles/andreas03/README +11 -0
  37. data/data/webgen/website_styles/andreas03/default.css +223 -0
  38. data/data/webgen/website_styles/andreas03/default.template +60 -0
  39. data/data/webgen/website_styles/andreas03/images/bodybg.png +0 -0
  40. data/data/webgen/website_styles/andreas03/images/contbg.png +0 -0
  41. data/data/webgen/website_styles/andreas03/images/footerbg.png +0 -0
  42. data/data/webgen/website_styles/andreas03/images/gradient1.png +0 -0
  43. data/data/webgen/website_styles/andreas03/images/gradient2.png +0 -0
  44. data/data/webgen/website_styles/andreas04/README +12 -0
  45. data/data/webgen/website_styles/andreas04/default.css +290 -0
  46. data/data/webgen/website_styles/andreas04/default.template +83 -0
  47. data/data/webgen/website_styles/andreas04/images/blinkarrow.gif +0 -0
  48. data/data/webgen/website_styles/andreas04/images/bodybg.png +0 -0
  49. data/data/webgen/website_styles/andreas04/images/contentbg.png +0 -0
  50. data/data/webgen/website_styles/andreas04/images/entrybg.png +0 -0
  51. data/data/webgen/website_styles/andreas04/images/flash.gif +0 -0
  52. data/data/webgen/website_styles/andreas04/images/flash2.gif +0 -0
  53. data/data/webgen/website_styles/andreas04/images/globe.gif +0 -0
  54. data/data/webgen/website_styles/andreas04/images/globebottom.gif +0 -0
  55. data/data/webgen/website_styles/andreas04/images/linkarrow.gif +0 -0
  56. data/data/webgen/website_styles/andreas04/images/menuhover.png +0 -0
  57. data/data/webgen/website_styles/andreas05/README +11 -0
  58. data/data/webgen/website_styles/andreas05/default.css +33 -0
  59. data/data/webgen/website_styles/andreas05/default.template +42 -0
  60. data/data/webgen/website_styles/andreas05/images/bodybg.gif +0 -0
  61. data/data/webgen/website_styles/andreas05/images/front.png +0 -0
  62. data/data/webgen/website_styles/andreas06/README +11 -0
  63. data/data/webgen/website_styles/andreas06/default.css +353 -0
  64. data/data/webgen/website_styles/andreas06/default.template +72 -0
  65. data/data/webgen/website_styles/andreas06/images/bodybg.gif +0 -0
  66. data/data/webgen/website_styles/andreas06/images/boxbg.gif +0 -0
  67. data/data/webgen/website_styles/andreas06/images/greypx.gif +0 -0
  68. data/data/webgen/website_styles/andreas06/images/header.jpg +0 -0
  69. data/data/webgen/website_styles/andreas06/images/innerbg.gif +0 -0
  70. data/data/webgen/website_styles/andreas06/images/leaves.jpg +0 -0
  71. data/data/webgen/website_styles/andreas06/images/tabs.gif +0 -0
  72. data/data/webgen/website_styles/andreas07/README +12 -0
  73. data/data/webgen/website_styles/andreas07/browserfix.css +7 -0
  74. data/data/webgen/website_styles/andreas07/default.css +92 -0
  75. data/data/webgen/website_styles/andreas07/default.template +44 -0
  76. data/data/webgen/website_styles/andreas07/images/bodybg.gif +0 -0
  77. data/data/webgen/website_styles/andreas07/images/sidebarbg.gif +0 -0
  78. data/data/webgen/website_styles/andreas08/README +11 -0
  79. data/data/webgen/website_styles/andreas08/default.css +224 -0
  80. data/data/webgen/website_styles/andreas08/default.template +53 -0
  81. data/data/webgen/website_styles/andreas09/README +11 -0
  82. data/data/webgen/website_styles/andreas09/default.css +308 -0
  83. data/data/webgen/website_styles/andreas09/default.template +70 -0
  84. data/data/webgen/website_styles/andreas09/images/bodybg-black.jpg +0 -0
  85. data/data/webgen/website_styles/andreas09/images/bodybg-green.jpg +0 -0
  86. data/data/webgen/website_styles/andreas09/images/bodybg-orange.jpg +0 -0
  87. data/data/webgen/website_styles/andreas09/images/bodybg-purple.jpg +0 -0
  88. data/data/webgen/website_styles/andreas09/images/bodybg-red.jpg +0 -0
  89. data/data/webgen/website_styles/andreas09/images/bodybg.jpg +0 -0
  90. data/data/webgen/website_styles/andreas09/images/footerbg.jpg +0 -0
  91. data/data/webgen/website_styles/andreas09/images/menuhover-black.jpg +0 -0
  92. data/data/webgen/website_styles/andreas09/images/menuhover-green.jpg +0 -0
  93. data/data/webgen/website_styles/andreas09/images/menuhover-orange.jpg +0 -0
  94. data/data/webgen/website_styles/andreas09/images/menuhover-purple.jpg +0 -0
  95. data/data/webgen/website_styles/andreas09/images/menuhover-red.jpg +0 -0
  96. data/data/webgen/website_styles/andreas09/images/menuhover.jpg +0 -0
  97. data/data/webgen/website_styles/default/README +6 -0
  98. data/data/webgen/website_styles/default/default.css +1 -1
  99. data/data/webgen/website_styles/default/default.template +9 -3
  100. data/data/webgen/website_styles/plain/README +12 -0
  101. data/data/webgen/website_styles/plain/default.css +244 -0
  102. data/data/webgen/website_styles/plain/default.template +63 -0
  103. data/data/webgen/website_styles/plain/images/a_hover.jpg +0 -0
  104. data/data/webgen/website_styles/plain/images/desc.jpg +0 -0
  105. data/data/webgen/website_styles/plain/images/li.gif +0 -0
  106. data/data/webgen/website_styles/plain/images/mainbar.jpg +0 -0
  107. data/data/webgen/website_styles/plain/images/menu.jpg +0 -0
  108. data/data/webgen/website_styles/plain/images/submenua.gif +0 -0
  109. data/data/webgen/website_styles/plain/images/submenua_hover.jpg +0 -0
  110. data/data/webgen/website_templates/default/README +7 -5
  111. data/data/webgen/website_templates/personal_hp/README +7 -5
  112. data/data/webgen/website_templates/project/README +8 -6
  113. data/doc/config.yaml +2 -2
  114. data/doc/examples/website_styles/1024px/README +9 -0
  115. data/doc/examples/website_styles/1024px/config.yaml +2 -0
  116. data/doc/examples/website_styles/1024px/src/about.page +12 -0
  117. data/doc/examples/website_styles/1024px/src/default.css +188 -0
  118. data/doc/examples/website_styles/1024px/src/default.template +62 -0
  119. data/doc/examples/website_styles/1024px/src/download.page +15 -0
  120. data/doc/examples/website_styles/1024px/src/features.page +8 -0
  121. data/doc/examples/website_styles/1024px/src/images/background.gif +0 -0
  122. data/doc/examples/website_styles/1024px/src/index.page +9 -0
  123. data/doc/examples/website_styles/1024px/src/screenshots.page +18 -0
  124. data/doc/examples/website_styles/andreas00/README +9 -0
  125. data/doc/examples/website_styles/andreas00/config.yaml +2 -0
  126. data/doc/examples/website_styles/andreas00/src/about.page +12 -0
  127. data/doc/examples/website_styles/andreas00/src/default.css +290 -0
  128. data/doc/examples/website_styles/andreas00/src/default.template +62 -0
  129. data/doc/examples/website_styles/andreas00/src/download.page +15 -0
  130. data/doc/examples/website_styles/andreas00/src/features.page +8 -0
  131. data/doc/examples/website_styles/andreas00/src/images/bg.gif +0 -0
  132. data/doc/examples/website_styles/andreas00/src/images/front.jpg +0 -0
  133. data/doc/examples/website_styles/andreas00/src/images/menubg.gif +0 -0
  134. data/doc/examples/website_styles/andreas00/src/images/menubg2.gif +0 -0
  135. data/doc/examples/website_styles/andreas00/src/index.page +9 -0
  136. data/doc/examples/website_styles/andreas00/src/screenshots.page +18 -0
  137. data/doc/examples/website_styles/andreas01/README +9 -0
  138. data/doc/examples/website_styles/andreas01/config.yaml +2 -0
  139. data/doc/examples/website_styles/andreas01/src/about.page +12 -0
  140. data/doc/examples/website_styles/andreas01/src/default.css +310 -0
  141. data/doc/examples/website_styles/andreas01/src/default.template +63 -0
  142. data/doc/examples/website_styles/andreas01/src/download.page +15 -0
  143. data/doc/examples/website_styles/andreas01/src/features.page +8 -0
  144. data/doc/examples/website_styles/andreas01/src/images/bg.gif +0 -0
  145. data/doc/examples/website_styles/andreas01/src/images/front.jpg +0 -0
  146. data/doc/examples/website_styles/andreas01/src/index.page +9 -0
  147. data/doc/examples/website_styles/andreas01/src/print.css +35 -0
  148. data/doc/examples/website_styles/andreas01/src/screenshots.page +18 -0
  149. data/doc/examples/website_styles/andreas03/README +9 -0
  150. data/doc/examples/website_styles/andreas03/config.yaml +2 -0
  151. data/doc/examples/website_styles/andreas03/src/about.page +12 -0
  152. data/doc/examples/website_styles/andreas03/src/default.css +223 -0
  153. data/doc/examples/website_styles/andreas03/src/default.template +60 -0
  154. data/doc/examples/website_styles/andreas03/src/download.page +15 -0
  155. data/doc/examples/website_styles/andreas03/src/features.page +8 -0
  156. data/doc/examples/website_styles/andreas03/src/images/bodybg.png +0 -0
  157. data/doc/examples/website_styles/andreas03/src/images/contbg.png +0 -0
  158. data/doc/examples/website_styles/andreas03/src/images/footerbg.png +0 -0
  159. data/doc/examples/website_styles/andreas03/src/images/gradient1.png +0 -0
  160. data/doc/examples/website_styles/andreas03/src/images/gradient2.png +0 -0
  161. data/doc/examples/website_styles/andreas03/src/index.page +9 -0
  162. data/doc/examples/website_styles/andreas03/src/screenshots.page +18 -0
  163. data/doc/examples/website_styles/andreas04/README +9 -0
  164. data/doc/examples/website_styles/andreas04/config.yaml +2 -0
  165. data/doc/examples/website_styles/andreas04/src/about.page +12 -0
  166. data/doc/examples/website_styles/andreas04/src/default.css +290 -0
  167. data/doc/examples/website_styles/andreas04/src/default.template +83 -0
  168. data/doc/examples/website_styles/andreas04/src/download.page +15 -0
  169. data/doc/examples/website_styles/andreas04/src/features.page +8 -0
  170. data/doc/examples/website_styles/andreas04/src/images/blinkarrow.gif +0 -0
  171. data/doc/examples/website_styles/andreas04/src/images/bodybg.png +0 -0
  172. data/doc/examples/website_styles/andreas04/src/images/contentbg.png +0 -0
  173. data/doc/examples/website_styles/andreas04/src/images/entrybg.png +0 -0
  174. data/doc/examples/website_styles/andreas04/src/images/flash.gif +0 -0
  175. data/doc/examples/website_styles/andreas04/src/images/flash2.gif +0 -0
  176. data/doc/examples/website_styles/andreas04/src/images/globe.gif +0 -0
  177. data/doc/examples/website_styles/andreas04/src/images/globebottom.gif +0 -0
  178. data/doc/examples/website_styles/andreas04/src/images/linkarrow.gif +0 -0
  179. data/doc/examples/website_styles/andreas04/src/images/menuhover.png +0 -0
  180. data/doc/examples/website_styles/andreas04/src/index.page +9 -0
  181. data/doc/examples/website_styles/andreas04/src/screenshots.page +18 -0
  182. data/doc/examples/website_styles/andreas05/README +9 -0
  183. data/doc/examples/website_styles/andreas05/config.yaml +2 -0
  184. data/doc/examples/website_styles/andreas05/src/about.page +12 -0
  185. data/doc/examples/website_styles/andreas05/src/default.css +33 -0
  186. data/doc/examples/website_styles/andreas05/src/default.template +42 -0
  187. data/doc/examples/website_styles/andreas05/src/download.page +15 -0
  188. data/doc/examples/website_styles/andreas05/src/features.page +8 -0
  189. data/doc/examples/website_styles/andreas05/src/images/bodybg.gif +0 -0
  190. data/doc/examples/website_styles/andreas05/src/images/front.png +0 -0
  191. data/doc/examples/website_styles/andreas05/src/index.page +9 -0
  192. data/doc/examples/website_styles/andreas05/src/screenshots.page +18 -0
  193. data/doc/examples/website_styles/andreas06/README +9 -0
  194. data/doc/examples/website_styles/andreas06/config.yaml +2 -0
  195. data/doc/examples/website_styles/andreas06/src/about.page +12 -0
  196. data/doc/examples/website_styles/andreas06/src/default.css +353 -0
  197. data/doc/examples/website_styles/andreas06/src/default.template +72 -0
  198. data/doc/examples/website_styles/andreas06/src/download.page +15 -0
  199. data/doc/examples/website_styles/andreas06/src/features.page +8 -0
  200. data/doc/examples/website_styles/andreas06/src/images/bodybg.gif +0 -0
  201. data/doc/examples/website_styles/andreas06/src/images/boxbg.gif +0 -0
  202. data/doc/examples/website_styles/andreas06/src/images/greypx.gif +0 -0
  203. data/doc/examples/website_styles/andreas06/src/images/header.jpg +0 -0
  204. data/doc/examples/website_styles/andreas06/src/images/innerbg.gif +0 -0
  205. data/doc/examples/website_styles/andreas06/src/images/leaves.jpg +0 -0
  206. data/doc/examples/website_styles/andreas06/src/images/tabs.gif +0 -0
  207. data/doc/examples/website_styles/andreas06/src/index.page +9 -0
  208. data/doc/examples/website_styles/andreas06/src/screenshots.page +18 -0
  209. data/doc/examples/website_styles/andreas07/README +9 -0
  210. data/doc/examples/website_styles/andreas07/config.yaml +2 -0
  211. data/doc/examples/website_styles/andreas07/src/about.page +12 -0
  212. data/doc/examples/website_styles/andreas07/src/browserfix.css +7 -0
  213. data/doc/examples/website_styles/andreas07/src/default.css +92 -0
  214. data/doc/examples/website_styles/andreas07/src/default.template +44 -0
  215. data/doc/examples/website_styles/andreas07/src/download.page +15 -0
  216. data/doc/examples/website_styles/andreas07/src/features.page +8 -0
  217. data/doc/examples/website_styles/andreas07/src/images/bodybg.gif +0 -0
  218. data/doc/examples/website_styles/andreas07/src/images/sidebarbg.gif +0 -0
  219. data/doc/examples/website_styles/andreas07/src/index.page +9 -0
  220. data/doc/examples/website_styles/andreas07/src/screenshots.page +18 -0
  221. data/doc/examples/website_styles/andreas08/README +9 -0
  222. data/doc/examples/website_styles/andreas08/config.yaml +2 -0
  223. data/doc/examples/website_styles/andreas08/src/about.page +12 -0
  224. data/doc/examples/website_styles/andreas08/src/default.css +224 -0
  225. data/doc/examples/website_styles/andreas08/src/default.template +53 -0
  226. data/doc/examples/website_styles/andreas08/src/download.page +15 -0
  227. data/doc/examples/website_styles/andreas08/src/features.page +8 -0
  228. data/doc/examples/website_styles/andreas08/src/index.page +9 -0
  229. data/doc/examples/website_styles/andreas08/src/screenshots.page +18 -0
  230. data/doc/examples/website_styles/andreas09/README +9 -0
  231. data/doc/examples/website_styles/andreas09/config.yaml +2 -0
  232. data/doc/examples/website_styles/andreas09/src/about.page +12 -0
  233. data/doc/examples/website_styles/andreas09/src/default.css +308 -0
  234. data/doc/examples/website_styles/andreas09/src/default.template +70 -0
  235. data/doc/examples/website_styles/andreas09/src/download.page +15 -0
  236. data/doc/examples/website_styles/andreas09/src/features.page +8 -0
  237. data/doc/examples/website_styles/andreas09/src/images/bodybg-black.jpg +0 -0
  238. data/doc/examples/website_styles/andreas09/src/images/bodybg-green.jpg +0 -0
  239. data/doc/examples/website_styles/andreas09/src/images/bodybg-orange.jpg +0 -0
  240. data/doc/examples/website_styles/andreas09/src/images/bodybg-purple.jpg +0 -0
  241. data/doc/examples/website_styles/andreas09/src/images/bodybg-red.jpg +0 -0
  242. data/doc/examples/website_styles/andreas09/src/images/bodybg.jpg +0 -0
  243. data/doc/examples/website_styles/andreas09/src/images/footerbg.jpg +0 -0
  244. data/doc/examples/website_styles/andreas09/src/images/menuhover-black.jpg +0 -0
  245. data/doc/examples/website_styles/andreas09/src/images/menuhover-green.jpg +0 -0
  246. data/doc/examples/website_styles/andreas09/src/images/menuhover-orange.jpg +0 -0
  247. data/doc/examples/website_styles/andreas09/src/images/menuhover-purple.jpg +0 -0
  248. data/doc/examples/website_styles/andreas09/src/images/menuhover-red.jpg +0 -0
  249. data/doc/examples/website_styles/andreas09/src/images/menuhover.jpg +0 -0
  250. data/doc/examples/website_styles/andreas09/src/index.page +9 -0
  251. data/doc/examples/website_styles/andreas09/src/screenshots.page +18 -0
  252. data/doc/examples/website_styles/default/README +9 -0
  253. data/doc/examples/website_styles/default/config.yaml +2 -0
  254. data/doc/examples/website_styles/default/src/about.page +12 -0
  255. data/doc/examples/website_styles/default/src/default.css +84 -0
  256. data/doc/examples/website_styles/default/src/default.template +38 -0
  257. data/doc/examples/website_styles/default/src/download.page +15 -0
  258. data/doc/examples/website_styles/default/src/features.page +8 -0
  259. data/doc/examples/website_styles/default/src/index.page +9 -0
  260. data/doc/examples/website_styles/default/src/screenshots.page +18 -0
  261. data/doc/examples/website_styles/plain/README +9 -0
  262. data/doc/examples/website_styles/plain/config.yaml +2 -0
  263. data/doc/examples/website_styles/plain/src/about.page +12 -0
  264. data/doc/examples/website_styles/plain/src/default.css +244 -0
  265. data/doc/examples/website_styles/plain/src/default.template +63 -0
  266. data/doc/examples/website_styles/plain/src/download.page +15 -0
  267. data/doc/examples/website_styles/plain/src/features.page +8 -0
  268. data/doc/examples/website_styles/plain/src/images/a_hover.jpg +0 -0
  269. data/doc/examples/website_styles/plain/src/images/desc.jpg +0 -0
  270. data/doc/examples/website_styles/plain/src/images/li.gif +0 -0
  271. data/doc/examples/website_styles/plain/src/images/mainbar.jpg +0 -0
  272. data/doc/examples/website_styles/plain/src/images/menu.jpg +0 -0
  273. data/doc/examples/website_styles/plain/src/images/submenua.gif +0 -0
  274. data/doc/examples/website_styles/plain/src/images/submenua_hover.jpg +0 -0
  275. data/doc/examples/website_styles/plain/src/index.page +9 -0
  276. data/doc/examples/website_styles/plain/src/screenshots.page +18 -0
  277. data/doc/examples/website_templates/default/README +8 -0
  278. data/doc/examples/website_templates/default/config.yaml +2 -0
  279. data/doc/examples/website_templates/default/src/default.css +84 -0
  280. data/doc/examples/website_templates/default/src/default.template +38 -0
  281. data/doc/examples/website_templates/default/src/index.page +8 -0
  282. data/doc/examples/website_templates/personal_hp/README +8 -0
  283. data/doc/examples/website_templates/personal_hp/config.yaml +2 -0
  284. data/doc/examples/website_templates/personal_hp/src/about.page +12 -0
  285. data/doc/examples/website_templates/personal_hp/src/default.css +84 -0
  286. data/doc/examples/website_templates/personal_hp/src/default.template +38 -0
  287. data/doc/examples/website_templates/personal_hp/src/index.page +9 -0
  288. data/doc/examples/website_templates/personal_hp/src/links.page +22 -0
  289. data/doc/examples/website_templates/personal_hp/src/projects.page +20 -0
  290. data/doc/examples/website_templates/project/README +9 -0
  291. data/doc/examples/website_templates/project/config.yaml +2 -0
  292. data/doc/examples/website_templates/project/src/about.page +12 -0
  293. data/doc/examples/website_templates/project/src/default.css +84 -0
  294. data/doc/examples/website_templates/project/src/default.template +38 -0
  295. data/doc/examples/website_templates/project/src/download.page +15 -0
  296. data/doc/examples/website_templates/project/src/features.page +8 -0
  297. data/doc/examples/website_templates/project/src/index.page +9 -0
  298. data/doc/examples/website_templates/project/src/screenshots.page +18 -0
  299. data/doc/metainfo.yaml +85 -0
  300. data/doc/plugin/emoticon.rb +19 -21
  301. data/doc/plugin/extension.rb +134 -55
  302. data/doc/plugin/gallery/slides/collage.rb +334 -0
  303. data/doc/plugin/listpluginparameters.rb +24 -26
  304. data/doc/plugin/resources.rb +20 -22
  305. data/doc/src/default.css +333 -154
  306. data/doc/src/default.template +92 -39
  307. data/doc/src/documentation/extending_webgen.page +1 -2
  308. data/doc/src/documentation/gettingstarted.page +161 -44
  309. data/doc/src/documentation/index.page +15 -28
  310. data/doc/src/documentation/plugins/contentconverter/default.page +15 -0
  311. data/doc/src/documentation/plugins/contentconverter/html.page +10 -0
  312. data/doc/src/documentation/plugins/contentconverter/markdown.page +21 -0
  313. data/doc/src/documentation/plugins/contentconverter/rdoc.page +11 -0
  314. data/doc/src/documentation/plugins/contentconverter/textile.page +21 -0
  315. data/doc/src/documentation/plugins/contentconverter/xmlbuilder.page +61 -0
  316. data/doc/src/documentation/plugins/core/configuration.page +11 -0
  317. data/doc/src/documentation/plugins/core/filehandler.page +214 -0
  318. data/doc/src/documentation/plugins/core/index.page +11 -0
  319. data/doc/src/documentation/plugins/core/resourcemanager.page +46 -0
  320. data/doc/src/documentation/plugins/core/tagprocessor.page +17 -0
  321. data/doc/src/documentation/plugins/file/copyhandler.page +26 -0
  322. data/doc/src/documentation/plugins/file/defaulthandler.page +15 -0
  323. data/doc/src/documentation/plugins/file/directoryhandler.page +37 -0
  324. data/doc/src/documentation/plugins/file/galleryhandler.page +181 -0
  325. data/doc/src/documentation/plugins/file/pagehandler.page +154 -0
  326. data/doc/src/documentation/plugins/file/templatehandler.page +34 -0
  327. data/doc/src/documentation/plugins/file/thumbnailwriter.page +39 -0
  328. data/doc/src/documentation/plugins/htmlvalidator/default.page +12 -0
  329. data/doc/src/documentation/plugins/htmlvalidator/xmllint.page +12 -0
  330. data/doc/src/documentation/plugins/index.page +32 -11
  331. data/doc/src/documentation/plugins/menustyle/default.page +19 -0
  332. data/doc/src/documentation/plugins/menustyle/horizontal.page +32 -0
  333. data/doc/src/documentation/plugins/{menustyles → menustyle}/horizontaldropdown.page +25 -19
  334. data/doc/src/documentation/plugins/menustyle/section.page +34 -0
  335. data/doc/src/documentation/plugins/menustyle/vertical.page +48 -0
  336. data/doc/src/documentation/plugins/menustyle/verticaldropdown.page +29 -0
  337. data/doc/src/documentation/plugins/misc/index.page +9 -0
  338. data/doc/src/documentation/plugins/{miscplugins → misc}/smileyreplacer.page +15 -14
  339. data/doc/src/documentation/plugins/misc/syntaxhighlighter.page +26 -0
  340. data/doc/src/documentation/plugins/tag/block.page +29 -0
  341. data/doc/src/documentation/plugins/tag/breadcrumbtrail.page +29 -0
  342. data/doc/src/documentation/plugins/tag/date.page +34 -0
  343. data/doc/src/documentation/plugins/tag/default.page +27 -0
  344. data/doc/src/documentation/plugins/tag/download.page +60 -0
  345. data/doc/src/documentation/plugins/tag/executecommand.page +29 -0
  346. data/doc/src/documentation/plugins/tag/includefile.page +30 -0
  347. data/doc/src/documentation/plugins/{tags → tag}/langbar.de.page +1 -1
  348. data/doc/src/documentation/plugins/tag/langbar.fr.page +6 -0
  349. data/doc/src/documentation/plugins/tag/langbar.page +41 -0
  350. data/doc/src/documentation/plugins/tag/menu.page +78 -0
  351. data/doc/src/documentation/plugins/{tags → tag}/meta.page +8 -7
  352. data/doc/src/documentation/plugins/tag/relocatable.page +46 -0
  353. data/doc/src/documentation/plugins/tag/resource.page +35 -0
  354. data/doc/src/documentation/plugins/tag/sitemap.page +35 -0
  355. data/doc/src/documentation/plugins/tag/wikilink.page +33 -0
  356. data/doc/src/documentation/references/index.page +0 -1
  357. data/doc/src/documentation/references/meta_info_reference.page +90 -13
  358. data/doc/src/documentation/references/parameter_reference.page +0 -1
  359. data/doc/src/documentation/references/webpage_format.page +249 -0
  360. data/doc/src/download.page +50 -21
  361. data/doc/src/examples/gallery_styles/default/default.gallery +78 -0
  362. data/doc/src/examples/gallery_styles/default/gallery_gallery.template +38 -0
  363. data/doc/src/examples/gallery_styles/default/gallery_image.template +30 -0
  364. data/doc/src/examples/gallery_styles/default/gallery_main.template +18 -0
  365. data/doc/src/examples/gallery_styles/index.page +22 -0
  366. data/doc/src/examples/gallery_styles/slides/gallery_gallery.template +62 -0
  367. data/doc/src/examples/gallery_styles/slides/gallery_image.template +53 -0
  368. data/doc/src/examples/gallery_styles/slides/gallery_main.template +32 -0
  369. data/doc/src/examples/gallery_styles/slides/slides.gallery +79 -0
  370. data/doc/src/examples/images/image01.jpg +0 -0
  371. data/doc/src/examples/images/image02.jpg +0 -0
  372. data/doc/src/examples/images/image03.jpg +0 -0
  373. data/doc/src/examples/images/image04.jpg +0 -0
  374. data/doc/src/examples/images/image05.jpg +0 -0
  375. data/doc/src/examples/images/image06.jpg +0 -0
  376. data/doc/src/examples/images/image07.jpg +0 -0
  377. data/doc/src/examples/images/image08.jpg +0 -0
  378. data/doc/src/examples/images/image09.jpg +0 -0
  379. data/doc/src/examples/images/image10.jpg +0 -0
  380. data/doc/src/examples/images/image11.jpg +0 -0
  381. data/doc/src/examples/images/image12.jpg +0 -0
  382. data/doc/src/examples/images/image13.jpg +0 -0
  383. data/doc/src/examples/images/image14.jpg +0 -0
  384. data/doc/src/examples/images/image15.jpg +0 -0
  385. data/doc/src/examples/images/image16.jpg +0 -0
  386. data/doc/src/examples/images/image17.jpg +0 -0
  387. data/doc/src/examples/images/image18.jpg +0 -0
  388. data/doc/src/examples/index.page +18 -0
  389. data/doc/src/examples/website_styles/1024px.page +5 -0
  390. data/doc/src/examples/website_styles/andreas00.page +5 -0
  391. data/doc/src/examples/website_styles/andreas01.page +5 -0
  392. data/doc/src/examples/website_styles/andreas03.page +5 -0
  393. data/doc/src/examples/website_styles/andreas04.page +5 -0
  394. data/doc/src/examples/website_styles/andreas05.page +5 -0
  395. data/doc/src/examples/website_styles/andreas06.page +5 -0
  396. data/doc/src/examples/website_styles/andreas07.page +5 -0
  397. data/doc/src/examples/website_styles/andreas08.page +5 -0
  398. data/doc/src/examples/website_styles/andreas09.page +5 -0
  399. data/doc/src/examples/website_styles/default.page +5 -0
  400. data/doc/src/examples/website_styles/index.page +71 -0
  401. data/doc/src/examples/website_styles/plain.page +5 -0
  402. data/doc/src/examples/website_templates/default.page +5 -0
  403. data/doc/src/examples/website_templates/index.page +24 -0
  404. data/doc/src/examples/website_templates/personal_hp.page +5 -0
  405. data/doc/src/examples/website_templates/project.page +5 -0
  406. data/doc/src/features.page +16 -14
  407. data/doc/src/images/bodybg.jpg +0 -0
  408. data/doc/src/images/footerbg.jpg +0 -0
  409. data/doc/src/images/menuhover.jpg +0 -0
  410. data/doc/src/images/node_diagram.svg +7132 -0
  411. data/doc/src/images/thumb_example.jpg +0 -0
  412. data/doc/src/images/thumb_example_cropped.jpg +0 -0
  413. data/doc/src/images/thumb_example_normal.jpg +0 -0
  414. data/doc/src/index.page +14 -102
  415. data/doc/src/news.page +154 -0
  416. data/doc/src/plugin.template +10 -0
  417. data/lib/webgen/cli.rb +427 -0
  418. data/lib/webgen/composite.rb +11 -11
  419. data/lib/webgen/config.rb +52 -0
  420. data/lib/webgen/content.rb +172 -0
  421. data/lib/webgen/extcommand.rb +23 -0
  422. data/lib/webgen/languages.rb +110 -0
  423. data/lib/webgen/listener.rb +1 -1
  424. data/lib/webgen/node.rb +196 -124
  425. data/lib/webgen/plugin.rb +480 -144
  426. data/lib/webgen/plugins/{contenthandlers → contentconverters}/default.rb +10 -9
  427. data/lib/webgen/plugins/{contenthandlers → contentconverters}/html.rb +11 -8
  428. data/lib/webgen/plugins/contentconverters/markdown.rb +54 -0
  429. data/lib/webgen/plugins/{contenthandlers → contentconverters}/rdoc.rb +16 -12
  430. data/lib/webgen/plugins/{contenthandlers → contentconverters}/textile.rb +18 -13
  431. data/lib/webgen/plugins/contentconverters/xmlbuilder.rb +58 -0
  432. data/lib/webgen/plugins/coreplugins/configuration.rb +11 -102
  433. data/lib/webgen/plugins/coreplugins/resourcemanager.rb +95 -74
  434. data/lib/webgen/plugins/filehandlers/copy.rb +41 -19
  435. data/lib/webgen/plugins/filehandlers/directory.rb +52 -50
  436. data/lib/webgen/plugins/filehandlers/filehandler.rb +370 -123
  437. data/lib/webgen/plugins/filehandlers/gallery.rb +368 -117
  438. data/lib/webgen/plugins/filehandlers/page.rb +160 -146
  439. data/lib/webgen/plugins/filehandlers/template.rb +65 -52
  440. data/lib/webgen/plugins/htmlvalidators/default.rb +9 -7
  441. data/lib/webgen/plugins/htmlvalidators/xmllint.rb +17 -33
  442. data/lib/webgen/plugins/menustyles/default.rb +27 -25
  443. data/lib/webgen/plugins/menustyles/horizontal.rb +22 -41
  444. data/lib/webgen/plugins/menustyles/horizontal_dropdown.rb +25 -39
  445. data/lib/webgen/plugins/menustyles/section.rb +68 -0
  446. data/lib/webgen/plugins/menustyles/vertical.rb +36 -56
  447. data/lib/webgen/plugins/menustyles/vertical_dropdown.rb +24 -32
  448. data/lib/webgen/plugins/miscplugins/smileyreplacer.rb +20 -17
  449. data/lib/webgen/plugins/miscplugins/syntax_highlighter.rb +72 -0
  450. data/lib/webgen/plugins/miscplugins/treewalker.rb +9 -36
  451. data/lib/webgen/plugins/tags/block.rb +65 -0
  452. data/lib/webgen/plugins/tags/breadcrumbtrail.rb +15 -11
  453. data/lib/webgen/plugins/tags/date.rb +11 -7
  454. data/lib/webgen/plugins/tags/download.rb +38 -38
  455. data/lib/webgen/plugins/tags/executecommand.rb +30 -15
  456. data/lib/webgen/plugins/tags/includefile.rb +26 -13
  457. data/lib/webgen/plugins/tags/langbar.rb +23 -18
  458. data/lib/webgen/plugins/tags/menu.rb +49 -70
  459. data/lib/webgen/plugins/tags/meta.rb +12 -9
  460. data/lib/webgen/plugins/tags/relocatable.rb +41 -13
  461. data/lib/webgen/plugins/tags/sitemap.rb +32 -28
  462. data/lib/webgen/plugins/tags/tag_processor.rb +279 -0
  463. data/lib/webgen/plugins/tags/wikilink.rb +25 -20
  464. data/lib/webgen/test.rb +202 -0
  465. data/lib/webgen/website.rb +310 -0
  466. data/test/fixtures/sample_site/src/chained.template +3 -0
  467. data/test/fixtures/sample_site/src/default.template +3 -0
  468. data/test/fixtures/sample_site/src/dir1/dir11/file111.de.page +3 -0
  469. data/test/fixtures/sample_site/src/dir1/dir11/file111.page +3 -0
  470. data/test/fixtures/sample_site/src/dir1/dir11/index.page +3 -0
  471. data/test/fixtures/sample_site/src/dir1/file11.page +3 -0
  472. data/test/fixtures/sample_site/src/dir2/file21.page +3 -0
  473. data/test/fixtures/sample_site/src/embedded.rhtml +1 -0
  474. data/test/fixtures/sample_site/src/file1.page +8 -0
  475. data/test/fixtures/sample_site/src/file2.de.page +6 -0
  476. data/test/fixtures/sample_site/src/index.de.page +4 -0
  477. data/test/fixtures/sample_site/src/index.en.page +1 -0
  478. data/test/fixtures/sample_site/src/invalid.template +3 -0
  479. data/test/fixtures/sample_site/src/test.jpg +1 -0
  480. data/test/fixtures/sample_site/src/test.template +3 -0
  481. data/test/fixtures/tc_content/blocks.yaml +40 -0
  482. data/test/fixtures/tc_content/correct.yaml +65 -0
  483. data/test/fixtures/tc_content/incorrect.yaml +42 -0
  484. data/test/fixtures/tc_filehandler_filehandler/backing/metainfo.yaml +9 -0
  485. data/test/fixtures/tc_filehandler_filehandler/backing_empty/metainfo.yaml +6 -0
  486. data/test/fixtures/tc_filehandler_filehandler/sample_plugin.rb +49 -0
  487. data/test/fixtures/tc_filehandler_filehandler/unmodified +0 -0
  488. data/test/fixtures/tc_filehandler_gallery/test.gallery +2 -0
  489. data/test/fixtures/tc_filehandler_gallery/test1.gallery +2 -0
  490. data/test/fixtures/tc_filehandler_gallery/test1.jpg +0 -0
  491. data/test/fixtures/tc_filehandler_gallery/test2.jpg +0 -0
  492. data/test/fixtures/tc_filehandler_gallery/test3.jpg +0 -0
  493. data/test/fixtures/tc_filehandler_gallery/test4.jpg +0 -0
  494. data/test/fixtures/tc_filehandler_page/testdata.yaml +10 -0
  495. data/test/fixtures/tc_menustyles_default/menustyle.rb +7 -0
  496. data/test/fixtures/tc_node/nodes.yaml +64 -0
  497. data/test/fixtures/tc_plugin/handlerplugin.rb +15 -0
  498. data/test/fixtures/tc_plugin/plugin1.rb +33 -0
  499. data/test/fixtures/tc_plugin/plugin2.rb +8 -0
  500. data/test/fixtures/tc_tags_includefile/testfile +1 -0
  501. data/test/fixtures/tc_tags_tag_processor/test_file1 +1 -0
  502. data/test/fixtures/tc_tags_tag_processor/testtag.rb +17 -0
  503. data/test/fixtures/tc_website/correct.yaml +6 -0
  504. data/test/fixtures/tc_website/incorrect_structure.yaml +2 -0
  505. data/test/fixtures/tc_website/incorrect_yaml.yaml +5 -0
  506. data/test/fixtures/tc_website/meta_info_test.yaml +10 -0
  507. data/test/fixtures/tc_website/testdir/README +1 -0
  508. data/test/fixtures/tc_website/testdir/falsedir/README +1 -0
  509. data/test/runtests.rb +2 -0
  510. data/test/unittests/tc_composite.rb +82 -0
  511. data/test/unittests/tc_config.rb +18 -0
  512. data/test/unittests/tc_content.rb +88 -0
  513. data/test/unittests/tc_contentconverters_default.rb +13 -0
  514. data/test/unittests/tc_contentconverters_html.rb +16 -0
  515. data/test/unittests/tc_contentconverters_markdown.rb +22 -0
  516. data/test/unittests/tc_contentconverters_rdoc.rb +16 -0
  517. data/test/unittests/tc_contentconverters_textile.rb +22 -0
  518. data/test/unittests/tc_contentconverters_xmlbuilder.rb +22 -0
  519. data/test/unittests/tc_filehandler_copy.rb +65 -0
  520. data/test/unittests/tc_filehandler_directory.rb +134 -0
  521. data/test/unittests/tc_filehandler_filehandler.rb +294 -0
  522. data/test/unittests/tc_filehandler_gallery.rb +165 -0
  523. data/test/unittests/tc_filehandler_page.rb +183 -0
  524. data/test/unittests/tc_filehandler_template.rb +60 -0
  525. data/test/unittests/tc_htmlvalidators_default.rb +12 -0
  526. data/test/unittests/tc_htmlvalidators_xmllint.rb +19 -0
  527. data/test/unittests/tc_languages.rb +57 -0
  528. data/test/unittests/tc_listener.rb +72 -0
  529. data/test/unittests/tc_menustyles_default.rb +51 -0
  530. data/test/unittests/tc_menustyles_horizontal.rb +18 -0
  531. data/test/unittests/tc_menustyles_horizontal_dropdown.rb +18 -0
  532. data/test/unittests/tc_menustyles_section.rb +59 -0
  533. data/test/unittests/tc_menustyles_vertical.rb +79 -0
  534. data/test/unittests/tc_menustyles_vertical_dropdown.rb +18 -0
  535. data/test/unittests/tc_node.rb +202 -0
  536. data/test/unittests/tc_plugin.rb +214 -0
  537. data/test/unittests/tc_resourcemanager.rb +42 -0
  538. data/test/unittests/tc_smileyreplacer.rb +25 -0
  539. data/test/unittests/tc_syntax_highlighter.rb +30 -0
  540. data/test/unittests/tc_tags_block.rb +27 -0
  541. data/test/unittests/tc_tags_breadcrumbtrail.rb +22 -0
  542. data/test/unittests/tc_tags_date.rb +15 -0
  543. data/test/unittests/tc_tags_download.rb +32 -0
  544. data/test/unittests/tc_tags_executecommand.rb +37 -0
  545. data/test/unittests/tc_tags_includefile.rb +53 -0
  546. data/test/unittests/tc_tags_langbar.rb +42 -0
  547. data/test/unittests/tc_tags_menu.rb +50 -0
  548. data/test/unittests/tc_tags_meta.rb +19 -0
  549. data/test/unittests/tc_tags_relocatable.rb +66 -0
  550. data/test/unittests/tc_tags_sitemap.rb +33 -0
  551. data/test/unittests/tc_tags_tag_processor.rb +107 -0
  552. data/test/unittests/tc_tags_wikilink.rb +22 -0
  553. data/test/unittests/tc_treewalker.rb +44 -0
  554. data/test/unittests/tc_website.rb +188 -0
  555. metadata +829 -312
  556. data/bin/webgen-gallery-editor +0 -654
  557. data/bin/webgen-gui +0 -10
  558. data/data/webgen/website_templates/default/config.yaml +0 -2
  559. data/doc/plugin/clidesc.rb +0 -46
  560. data/doc/plugin/source.rb +0 -21
  561. data/doc/src/about.page +0 -22
  562. data/doc/src/documentation/cli.page +0 -12
  563. data/doc/src/documentation/plugins/contenthandlers/html.page +0 -11
  564. data/doc/src/documentation/plugins/contenthandlers/index.page +0 -7
  565. data/doc/src/documentation/plugins/contenthandlers/markdown.page +0 -11
  566. data/doc/src/documentation/plugins/contenthandlers/rdoc.page +0 -11
  567. data/doc/src/documentation/plugins/contenthandlers/textile.page +0 -11
  568. data/doc/src/documentation/plugins/coreplugins/configuration.page +0 -12
  569. data/doc/src/documentation/plugins/coreplugins/index.page +0 -7
  570. data/doc/src/documentation/plugins/coreplugins/logging.page +0 -13
  571. data/doc/src/documentation/plugins/coreplugins/resourcemanager.page +0 -34
  572. data/doc/src/documentation/plugins/filehandlers/backing.page +0 -46
  573. data/doc/src/documentation/plugins/filehandlers/copy.page +0 -12
  574. data/doc/src/documentation/plugins/filehandlers/directoryhandler.page +0 -35
  575. data/doc/src/documentation/plugins/filehandlers/gallery.page +0 -86
  576. data/doc/src/documentation/plugins/filehandlers/index.page +0 -34
  577. data/doc/src/documentation/plugins/filehandlers/page.page +0 -170
  578. data/doc/src/documentation/plugins/filehandlers/template.page +0 -21
  579. data/doc/src/documentation/plugins/gallerylayouters/index.page +0 -18
  580. data/doc/src/documentation/plugins/htmlvalidators/index.page +0 -6
  581. data/doc/src/documentation/plugins/htmlvalidators/xmllint.page +0 -14
  582. data/doc/src/documentation/plugins/menustyles/horizontal.page +0 -21
  583. data/doc/src/documentation/plugins/menustyles/index.page +0 -12
  584. data/doc/src/documentation/plugins/menustyles/partial.page +0 -27
  585. data/doc/src/documentation/plugins/menustyles/vertical.page +0 -32
  586. data/doc/src/documentation/plugins/menustyles/verticaldropdown.page +0 -23
  587. data/doc/src/documentation/plugins/miscplugins/index.page +0 -7
  588. data/doc/src/documentation/plugins/tags/breadcrumbtrail.page +0 -20
  589. data/doc/src/documentation/plugins/tags/date.page +0 -19
  590. data/doc/src/documentation/plugins/tags/download.page +0 -23
  591. data/doc/src/documentation/plugins/tags/executecommand.page +0 -18
  592. data/doc/src/documentation/plugins/tags/includefile.page +0 -15
  593. data/doc/src/documentation/plugins/tags/index.page +0 -44
  594. data/doc/src/documentation/plugins/tags/langbar.page +0 -27
  595. data/doc/src/documentation/plugins/tags/menu.de.page +0 -12
  596. data/doc/src/documentation/plugins/tags/menu.page +0 -19
  597. data/doc/src/documentation/plugins/tags/multilang.de.page +0 -4
  598. data/doc/src/documentation/plugins/tags/multilang.fr.page +0 -4
  599. data/doc/src/documentation/plugins/tags/multilang.page +0 -4
  600. data/doc/src/documentation/plugins/tags/relocatable.page +0 -16
  601. data/doc/src/documentation/plugins/tags/resource.page +0 -22
  602. data/doc/src/documentation/plugins/tags/sitemap.page +0 -17
  603. data/doc/src/documentation/plugins/tags/wikilink.page +0 -18
  604. data/doc/src/documentation/webgen_gallery_editor.page +0 -82
  605. data/doc/src/images/screenshots/wge-image.png +0 -0
  606. data/doc/src/images/screenshots/wge-layout-preview.png +0 -0
  607. data/doc/src/images/screenshots/wge-main-disabled.png +0 -0
  608. data/doc/src/images/screenshots/wge-main.png +0 -0
  609. data/doc/src/meta.info +0 -30
  610. data/doc/src/screenshots.gallery +0 -33
  611. data/install.rb +0 -19
  612. data/lib/webgen.rb +0 -277
  613. data/lib/webgen/plugins/contenthandlers/markdown.rb +0 -50
  614. data/lib/webgen/plugins/coreplugins/logging.rb +0 -101
  615. data/lib/webgen/plugins/filehandlers/backing.rb +0 -159
  616. data/lib/webgen/plugins/gallerylayouters/default.rb +0 -152
  617. data/lib/webgen/plugins/menustyles/partial.rb +0 -95
  618. data/lib/webgen/plugins/tags/tags.rb +0 -254
data/README CHANGED
@@ -1,16 +1,14 @@
1
1
  webgen - a template based static website generator
2
2
 
3
- Copyright (C) 2004 Thomas Leitner
3
+ Copyright (C) 2006 Thomas Leitner
4
4
 
5
5
  >>> The documentation for webgen is in the doc/src subdirectory. <<<
6
6
 
7
- You can build the documentation by
8
- invoking
7
+ You can build the documentation by executing
9
8
  $ rake doc
10
9
 
11
- in the root of the package or by running webgen manually in the +doc+ directory:
12
- $ ruby -I../lib ../bin/webgen
10
+ in the root of the package. This command will build the documentation and place it in doc/output.
13
11
 
14
- This documentation is actually the same as the one on webgen.rubyforge.org. When releasing a new
12
+ This documentation is actually the same as the one on http://webgen.rubyforge.org. When releasing a new
15
13
  version of webgen, I run one of the above commands to create the pages and then only copy it to the
16
14
  website! :-)
data/Rakefile CHANGED
@@ -24,6 +24,7 @@ begin
24
24
  rescue Exception
25
25
  end
26
26
 
27
+ require 'fileutils'
27
28
  require 'rake/clean'
28
29
  require 'rake/packagetask'
29
30
  require 'rake/rdoctask'
@@ -32,7 +33,7 @@ require 'rake/testtask'
32
33
  # General actions ##############################################################
33
34
 
34
35
  $:.push 'lib'
35
- require 'webgen/plugins/coreplugins/configuration'
36
+ require 'webgen/config'
36
37
 
37
38
  PKG_NAME = "webgen"
38
39
  PKG_VERSION = Webgen::VERSION.join( '.' )
@@ -62,19 +63,164 @@ task :install => [:prepare] do
62
63
  ruby "setup.rb install"
63
64
  end
64
65
 
65
-
66
+ CLEAN.exclude( 'doc/src/documentation/plugins/core' )
66
67
  task :clean do
67
68
  ruby "setup.rb clean"
68
69
  end
69
70
 
71
+ desc "Creates the whole documentation"
72
+ task :doc => [:rdoc, :webgen_doc]
70
73
 
71
- CLOBBER << "doc/output"
72
- desc "Builds the documentation"
73
- task :doc => [:rdoc] do
74
- chdir 'doc' do
75
- puts "\nGenerating online documentation..."
76
- ruby %{-I../lib ../bin/webgen -V 2 }
74
+ CLOBBER << "doc/examples"
75
+ CLOBBER << "doc/src/examples/website_templates"
76
+ CLOBBER << "doc/src/examples/website_styles"
77
+ CLOBBER << "doc/src/examples/gallery_styles"
78
+ CLOBBER << "doc/plugin/gallery"
79
+ desc "Creates the files for the examples section of the docu"
80
+ task :create_examples do
81
+ require 'webgen/website'
82
+
83
+ # website templates
84
+ data = {}
85
+ data[:dirname] = 'Website Templates'
86
+ data[:desc]= "h2. List of website templates
87
+
88
+ The website templates open in an iframe when you use the menu items. Use the links provided below to
89
+ open the website templates directly (fullscreen).
90
+
91
+ Following is the list of all available website templates:
92
+ "
93
+ data[:entries] = Webgen::WebSiteTemplate.entries
94
+ create_examples( 'website_templates', data, nil, 'default' )
95
+
96
+ # website styles
97
+ data = {}
98
+ data[:dirname] = 'Website Styles'
99
+ data[:desc]= "h2. List of website styles
100
+
101
+ The website styles open in an iframe when you use the menu items. Use the links provided below to
102
+ open the website styles directly (fullscreen).
103
+
104
+ Following is the list of all available website styles:
105
+ "
106
+ data[:entries] = Webgen::WebSiteStyle.entries
107
+ create_examples( 'website_styles', data, 'project', nil )
108
+
109
+ # gallery styles
110
+ Webgen::GalleryStyle.entries.each do |name, entry|
111
+ puts "Creating example files for gallery style '#{name}'..."
112
+ mkdir_p( "doc/plugin/gallery/#{name}" )
113
+ FileUtils.cp( entry.plugin_files, "doc/plugin/gallery/#{name}" )
114
+ base_dir = "doc/src/examples/gallery_styles/#{name}"
115
+ mkdir_p( base_dir )
116
+ entry.copy_to( base_dir )
117
+
118
+ additional = case name
119
+ when 'slides' then "layouter: slides\nthumbnailResizeMethod: :cropped"
120
+ else ''
121
+ end
122
+ File.open( File.join( base_dir, "#{name}.gallery" ), 'w+' ) do |f|
123
+ f.write("title: index
124
+ images: ../../images/*
125
+ imagesPerPage: 8
126
+ mainPageMetaInfo:
127
+ inMenu: true
128
+ #{additional}
129
+ ---
130
+ ../../images/image01.jpg:
131
+ title: Chinese Garden
132
+ description: This picture show the Chinese Garden located in the outskirts of Vienna (Austria).
133
+
134
+ ../../images/image02.jpg:
135
+ title: Goldenes Dach
136
+ description: This is the landmark of Innsbruck (Tyrol, Austria), called the 'Goldene Dach' (golden roof).
137
+
138
+ ../../images/image03.jpg:
139
+ title: Mountains in Innsbruck
140
+ description: A view from the <a href='http://www.nordpark.com'>NordPark</a> in Innsbruck.
141
+
142
+ ../../images/image04.jpg:
143
+ title: Kristallwelten 1
144
+ description: The entry to the 'Kristallwelten' of <a href='http://www.swarovski.com'>Swarovski</a> in Innsbruck.
145
+
146
+ ../../images/image05.jpg:
147
+ title: Kristallwelten 2
148
+ description: On the roof of the building.
149
+
150
+ ../../images/image06.jpg:
151
+ title: Kristallwelten 3
152
+ description: Some crystals.
153
+
154
+ ../../images/image07.jpg:
155
+ title: Minimundus 1
156
+ description: A french castle
157
+
158
+ ../../images/image08.jpg:
159
+ title: Minimundus 2
160
+ description: A small copy of the <a href=''>Sagrada Familia</a> of Barcelona.
161
+
162
+ ../../images/image09.jpg:
163
+ title: Minimundus 3
164
+ description: The Stephansdom in Vienna.
165
+
166
+ ../../images/image10.jpg:
167
+ title: Minimundus 4
168
+ description: Overview of Minimundus, a place with smaller versions of famous buildings.
169
+
170
+ ../../images/image11.jpg:
171
+ title: Velden
172
+ description: Photo from Velden, Wörtersee, Carinthia, Austria
173
+
174
+ ../../images/image12.jpg:
175
+ title: Stockholm 1
176
+ description: A 300-year-old ship, the Wasa, located in the Wasamuseet in Stockholm.
177
+
178
+ ../../images/image13.jpg:
179
+ title: Stockholm 2
180
+ description: A fort near Stockholm.
181
+
182
+ ../../images/image14.jpg:
183
+ title: Stockholm 3
184
+ description: Overview of Gamla Stan (old town centre of Stockholm)
185
+
186
+ ../../images/image15.jpg:
187
+ title: Stockholm 4
188
+ description: View from a bridge in the direction of Gamla Stan
189
+
190
+ ../../images/image16.jpg:
191
+ title: Zakynthos 1
192
+ description: An isle that looks like a turtle
193
+
194
+ ../../images/image17.jpg:
195
+ title: Zakynthos 2
196
+ description: The oldest olive tree of Zakynthos.
197
+
198
+ ../../images/image18.jpg:
199
+ title: Zakynthos 3
200
+ description: The Navagio ship wreck, very famous Greek tourist destination.
201
+ ")
202
+ end
77
203
  end
204
+
205
+ data = {}
206
+ data[:dirname] = 'Gallery Styles'
207
+ data[:desc]= "h2. List of gallery styles
208
+
209
+ The gallery style example pages open in an iframe when you use the menu items. Use the links
210
+ provided below to open the gallery style example pages directly (fullscreen).
211
+
212
+ Following is the list of all available gallery styles:
213
+ "
214
+ data[:entries] = Webgen::GalleryStyle.entries
215
+ create_example_index( "doc/src/examples/gallery_styles/index.page", data )
216
+
217
+ end
218
+
219
+ CLOBBER << "doc/output"
220
+ desc "Generates the webgen documentation"
221
+ task :webgen_doc => [:create_examples] do
222
+ puts "\nGenerating online documentation..."
223
+ ruby %{-Ilib bin/webgen -d doc -V 2 }
78
224
  end
79
225
 
80
226
  rd = Rake::RDocTask.new do |rdoc|
@@ -85,11 +231,8 @@ rd = Rake::RDocTask.new do |rdoc|
85
231
  rdoc.rdoc_files.include( 'lib/**/*.rb' )
86
232
  end
87
233
 
88
- CLOBBER << "test/webgen.log"
89
- task :test do |t|
90
- chdir 'test' do
91
- ruby "-I../lib -I. runtests.rb"
92
- end
234
+ task :test do
235
+ ruby "-Ilib -Itest test/runtests.rb"
93
236
  end
94
237
 
95
238
  # Developer tasks ##############################################################
@@ -103,12 +246,11 @@ PKG_FILES = FileList.new( [
103
246
  'Rakefile',
104
247
  'ChangeLog',
105
248
  'VERSION',
106
- 'install.rb',
107
- 'bin/**/*',
249
+ 'bin/webgen',
108
250
  'lib/**/*.rb',
109
251
  'data/**/*',
110
252
  'testsite/**/*',
111
- 'tests/**/*',
253
+ 'test/**/*',
112
254
  'doc/**/*'
113
255
  ]) do |fl|
114
256
  fl.exclude( /\bsvn\b/ )
@@ -117,12 +259,6 @@ PKG_FILES = FileList.new( [
117
259
  fl.exclude( 'doc/output' )
118
260
  end
119
261
 
120
- task :package => [:gen_files, :create_gal_layout_pics] do
121
- chdir 'pkg' do
122
- sh "rpaadmin packport #{PKG_NAME}-#{PKG_VERSION}"
123
- end
124
- end
125
-
126
262
  CLOBBER << "otherdata/web-for-gallery-pics/output"
127
263
  task :create_gal_layout_pics do
128
264
  chdir 'otherdata/web-for-gallery-pics' do
@@ -130,43 +266,18 @@ task :create_gal_layout_pics do
130
266
  end
131
267
  end
132
268
 
269
+ CLOBBER << "ChangeLog"
133
270
  task :gen_changelog do
134
271
  sh "svn log -r HEAD:1 -v > ChangeLog"
135
272
  end
136
273
 
274
+ CLOBBER << "VERSION"
137
275
  task :gen_version do
138
276
  puts "Generating VERSION file"
139
277
  File.open( 'VERSION', 'w+' ) do |file| file.write( PKG_VERSION + "\n" ) end
140
278
  end
141
279
 
142
- task :gen_installrb do
143
- puts "Generating install.rb file"
144
- File.open( 'install.rb', 'w+' ) do |file|
145
- file.write "
146
- require 'rpa/install'
147
-
148
- class Install_#{PKG_NAME} < RPA::Install::FullInstaller
149
- name '#{PKG_NAME}'
150
- version '#{PKG_VERSION}-1'
151
- classification Application
152
- build do
153
- installdocs %w[COPYING ChangeLog TODO]
154
- installdocs 'docs'
155
- installrdoc %w[README] + Dir['lib/**/*.rb']
156
- installdata
157
- end
158
- description <<-EOF
159
- #{PKG_SUMMARY}
160
-
161
- #{PKG_DESCRIPTION}
162
- EOF
163
- end
164
- "
165
- end
166
- end
167
-
168
- task :gen_files => [:gen_changelog, :gen_version, :gen_installrb]
169
- CLOBBER << "ChangeLog" << "VERSION" << "install.rb"
280
+ task :package => [:gen_changelog, :gen_version]
170
281
 
171
282
  Rake::PackageTask.new( PKG_NAME, PKG_VERSION ) do |p|
172
283
  p.need_tar = true
@@ -218,15 +329,6 @@ else
218
329
 
219
330
  end
220
331
 
221
- =begin
222
- desc "Creates a tag in the repository"
223
- task :tag do
224
- repositoryPath = File.dirname( $1 ) if `svn info` =~ /^URL: (.*)$/
225
- fail "Tag already created in repository " if /#{PKG_NAME}/ =~ `svn ls #{repositoryPath}/versions`
226
- sh "svn cp -m 'Created version #{PKG_NAME}' #{repositoryPath}/trunk #{repositoryPath}/versions/#{PKG_NAME}"
227
- end
228
- =end
229
-
230
332
  desc "Upload documentation to homepage"
231
333
  task :uploaddoc => [:doc] do
232
334
  Dir.chdir('doc/output')
@@ -234,39 +336,55 @@ task :uploaddoc => [:doc] do
234
336
  end
235
337
 
236
338
 
237
- # Misc tasks ###################################################################
238
-
239
-
240
- def count_lines( filename )
241
- lines = 0
242
- codelines = 0
243
- open( filename ) do |f|
244
- f.each do |line|
245
- lines += 1
246
- next if line =~ /^\s*$/
247
- next if line =~ /^\s*#/
248
- codelines += 1
339
+ # Helper methods ###################################################################
340
+
341
+ def create_examples( dir_name, data, template = nil, style = nil )
342
+ base_dir = 'doc/examples'
343
+ src_dir = 'doc/src/examples'
344
+
345
+ mkdir_p( File.join( src_dir, dir_name ) )
346
+ mkdir_p( File.join( base_dir, dir_name ) )
347
+ data[:entries].sort.each do |name, entry|
348
+ dir = File.join( base_dir, dir_name, name )
349
+ files_mtime = entry.files.collect {|f| File.mtime( f ) }.max
350
+ dir_mtime = File.mtime( dir ) rescue Time.parse("1970-1-1")
351
+ if dir_mtime < files_mtime
352
+ puts "Creating example files for #{dir_name} '#{name}'..."
353
+ rm_rf( dir )
354
+ Webgen::WebSite.create_website( dir, template || name, style || name )
355
+ File.open( File.join( dir, 'config.yaml' ), 'w+' ) do |f|
356
+ f.write( "Core/Configuration: \n"+
357
+ " outDir: ../../../output/examples/#{dir_name}/#{name}" )
358
+ end
359
+ Webgen::WebSite.new( dir ).render
360
+ end
361
+ File.open( File.join( src_dir, dir_name, "#{name}.page" ), 'w+' ) do |f|
362
+ f.write("---
363
+ title: #{name}
364
+ inMenu: true
365
+ --- content, html
366
+ <object type='text/html' data='#{name}/index.html' width='100%' height='600px' />
367
+ ")
249
368
  end
250
369
  end
251
- [lines, codelines]
370
+ create_example_index( File.join( src_dir, dir_name, "index.page" ), data )
252
371
  end
253
372
 
254
-
255
- def show_line( msg, lines, loc )
256
- printf "%6s %6s %s\n", lines.to_s, loc.to_s, msg
257
- end
258
-
259
-
260
- desc "Show statistics"
261
- task :statistics do
262
- total_lines = 0
263
- total_code = 0
264
- show_line( "File Name", "Lines", "LOC" )
265
- SRC_RB.each do |fn|
266
- lines, codelines = count_lines fn
267
- show_line( fn, lines, codelines )
268
- total_lines += lines
269
- total_code += codelines
373
+ def create_example_index( filename, data )
374
+ mkdir_p( File.dirname( filename ) )
375
+ index = File.open( File.join( filename ), 'w+' )
376
+ index.puts("---
377
+ title: Index
378
+ directoryName: #{data[:dirname]}
379
+ ---
380
+ #{data[:desc]}
381
+
382
+ ")
383
+ data[:entries].sort.each do |name, entry|
384
+ index.puts("* <a href='#{name}/index.html'>#{name}</a>\n\n")
385
+ entry.infos.sort.each do |info_name, info_value|
386
+ index.puts(" * *#{info_name.capitalize}*: #{info_value}")
387
+ end
270
388
  end
271
- show_line( "Total", total_lines, total_code )
389
+ index.close
272
390
  end
data/TODO CHANGED
@@ -1,32 +1,64 @@
1
1
  ---- CURRENT ----
2
2
 
3
- * BUG command clean does not delete all files (e.g. no resources, other files generated by plugins [source plugin])
4
- * show available styles and templates in docu and in online help (webgen help create)
5
- * think about plugin system, @@config etc - should work from within webgen-gui, not only once from webgen
6
- * make webgen source installation work with correct cmdparse version
7
- * FileCopyHandler#initialize not reentrant
8
- * make menu generation faster (for webgen: 5.2s without menus in template, 9.2s with menus!)
9
- * create tests for methods in webgen.rb
10
- * check if duplicate nodes are created??? by using a tag in a template
11
- * allow a template to use another template (templates as page description files?) (template2 uses template1)
12
- * use code generator to create test file with all tags and all tag parameter configurations
3
+ * show error message when configuration file is invalid (Webgen::WebSite)
4
+ * fix website styles menus to have a style for current menu item with <span> instead of <a>
5
+ * add a common class to the menu element (either a or span, depending on Fil/DefaultFileHandler:linkToCurrentPage) for easier referencing in CSS styles (update menu CSS style afterwards for horiz-dd, vert-dd, ...)
6
+ * add parameters startLevel, minLevels, maxLevels to horizontal menu style
7
+ * make linking to image galleries possible by specifing the gallery file
8
+ * change namespace of tag plugins from tags to tag
9
+ * send bug report to rdoc maintainer (rdoc does not handle nested method defintions correctly)
10
+ * make source installation work again (because of help forum entry)?
11
+ * rethink plugin config handling (maybe all in a list which is traversed and stopped when one item returns a value)
12
+ * extend usage of tags by allowing the following: {highlight: ruby}content to highlightasd {highlight} and add tag for syntax highlighting???
13
+ * add listener which checks that after reading the tree no new nodes are created
14
+ * if a meta info is not available on the current page, look for it in the template, then in the template of the template, aso.
15
+ -> not easily or not all possible
16
+ * refactor menu style plugins so that indivdual parts of the menu can be overridden (by e.g. singleton methods)
17
+ * search for TODO items
13
18
 
14
19
  ---- DOCU ----
15
20
 
16
- * examples for each type of plugins in extending webgen section
21
+ * documentation: add a glossary (webgen, node, page file, gallery file, parameter, path pattern, plugin, ...)
22
+ * document how to create gallery styles
23
+ * documentation: add info about what webgen does during a run (read files, create nodes, write nodes)
24
+ * documentation: add a page about YAML and basic use
25
+ * documentation: add a resource reference file with the table of resources
26
+ * document: check for consistent naming (page files, tags,...)
27
+ * document homepage structure (where is plugin docu, api docu,...)
28
+ * document tag @processOutput changed to @process_output
29
+ * param values must not be changed during the run by a plugin!!!, see source code of DefaultTag for an example to override params nonetheless
30
+ * document speed boost by precalculating node values (costs memory, saves runtime)
31
+ * changed structure of blocks meta_info
32
+ * provide a sample blog (with andreas04 style)
33
+ * website_template/website_style/gallery_style -> README first infos are shown in help, after --- ignored for infos hash
34
+ * files must not have spaces in their names!
35
+ * all hooks are now lower case!!!
36
+ * DefaultFileHandler#node_for_lang
37
+ - should return the node for the given lang if available
38
+ - default behaviour is to return node itself (useful for pics, stylesheets, ...)
39
+ * DirectoryHandler#node_for_lang
40
+ - if no node in lang found, return default node, emit warning
41
+ - if node in lang found, return found node
42
+ - if no index file, return default node, emit warning
43
+ * update copyright year in all files
44
+ * examples for each type of plugins in extending webgen section -> better into API docs
17
45
 
18
46
  ---- FUTURE ----
19
47
 
48
+ * remove duplicate code from file handler plugins' create_node method
49
+ * add flag images for language bar which are (control through param) used instead of language abbr
50
+ * allow resources to reference URLs???
51
+ * allow following configuration file syntax:
52
+ if the key is of the form 'add <name>' then it is assumed that the default value for param name is an array or hash
53
+ and the given entries are added instead of overwriting the array/hash
54
+ * google sitemap generator
55
+ * blogging and rss handlers
20
56
  * Configuration:outDirectory should support FTP and SFTP protocols
21
- * refactor code sothat one source file can be used by 0..n processors
22
- * tag 'link' which provides a link to the file optionally showing an icon
23
- * parameter for including page icons in menus
24
- * parameter for setting the orderInfo of index pages so that they always appear as first entry
25
- * implement plugin which creates nodes for fragment identifiers (#info) in html
57
+ * tag 'link' which provides a link to the file optionally showing an icon -> see mail
58
+ * parameter for including page icons in menus (use key pageIcon in node meta info, if set use it in DefaultMenuStyle#menu_item_details)
26
59
  * include spell checker (ispell, aspell, MS Word OLE on Win32,...)
27
60
  * tag 'resume', uses xmlresume2x to provide HTML version of xml resume
28
61
  * multi-lingual picture/gallery files
29
- * include exif info for pictures
30
62
 
31
63
  ---- DONE ----
32
64
 
@@ -211,3 +243,129 @@ W do not allow two or more page files in the same language, print warn
211
243
  * adapt clidesc to cmdparse 2.0.0
212
244
  * webgen show config => output same info as on docu pages
213
245
  * test usage for en, deu, eng (ISO-639-2 codes)
246
+ * rename Plugin.add_param to Plugin.param
247
+ * rename ContentHandlers to ContentFormatters
248
+ * how to use Node#resolve_node to resolve page nodes given like index.page (tree uses output names)???
249
+ * think about plugin system, @@config etc - should work from within webgen-gui, not only once from webgen
250
+ * FileCopyHandler#initialize not reentrant
251
+ * allow a template to use another template (templates as page description files?) (template2 uses template1)
252
+ * refactor code sothat one source file can be used by 0..n processors
253
+ * implement plugin which creates nodes for fragment identifiers (#info) in html
254
+ * Node#resolve_node: query part has to be removed from URL for this function to work correctly -> no, works with query part too!
255
+ * ruby 1.8.2 (2004-11-06) [i386-mswin32]: bug in File.join: File.join('asdf', '/') -> 'asdf//' instead of 'asdf/' -> works with 1.8.4
256
+ * BUG make tc_tags_executecommand work on windows (with windows echo command)
257
+ * test on Windows with Ruby 1.8.4
258
+ * make tests independent from RedCloth (overwrite default content converter for PageFileHandler)
259
+ * rename tags/tags.rb to tags/tag_processor.rb
260
+ * is metainfo orderInfo incorrectly named? sortInfo better? -> Node#order_info --> let this be orderInfo for now
261
+ * test on windows after update to newest ruby version!
262
+ * add test case for SmileyReplacer
263
+ * implement system which allows to specify which files/types of files should be read in which order by FileHandler
264
+ * renamed handle_extension, handle_path_pattern to register_extension and register_path_pattern
265
+ * new semantics for param changehandler: if set, use it to set the new value (useful for updating hashs instead of overwriting) --> no changehandler anymore
266
+ * ev. use change handler for not substituting PageHandler:defaultPageMetaData, but merging with old values --> no changehandler anymore
267
+ * add object for main gallery page to galleryinfo object
268
+ * depends_on accepts only strings
269
+ * implement output backing file functionality
270
+ * mail to comic site creator that nav links for gallery in main template now possible
271
+ * Catch ERB errors
272
+ * all nodes should be created through a FileHandler method (should be used by, e.g., GalleryFileHandler)
273
+ - method should have hooks before_create_node and after_create_node
274
+ * plugin#param calls are expensive, use local variable if possible (eg. TemplateFileHandler#get_default_template)
275
+ * use relocatable tag in gallery templates for page and image references
276
+ * create tag block for substituting page blocks
277
+ * add tests in page files to check if used language code is correct (use LanguageManager)
278
+ * provide more hooks into system
279
+ * add syntax highlighting to includefile tag, executecommand tag, and ev. others
280
+ * relocatable: path has to be changed so that it has correct lang in it if it is a page node path or split in path + fragment and search for path, then get correct lang node, then search fragment
281
+ * gallery layouts not with plugins, but with nested templates (one for each: main page, gallery pages, pictures page)
282
+ put a special GalleryInfo object in node.node_info[:ginfo] which holds all information about the gallery and
283
+ provides helper functions (next_pindex, next_gindex,...)
284
+ -> provide a command to copy provided gallery layout templates to a website dir (webgen use gallerylayout <name>)
285
+ -> "webgen use" can also be used for: webgen use style
286
+ -> then its possible to put navigational buttons outside of the {block: content}, namely in the super template
287
+ (see mail from comic site author)
288
+ * new option for create command: -u --update-style-only (for only updating the style info) -> see above webgen use style
289
+ * problem loading a website twice due to using require -> now loading site specific plugins into a module
290
+ * use new scheme for plugin names which does not use the class name
291
+ * add a few good opensource website styles (e.g. some from andreas viklund)
292
+ * add CLI command plugins again
293
+ * use Text::Format or something similar for formatting CLI output (e.g. webgen help create) -> using own simple formatter method
294
+ * css styles should NOT do styling of content!!! only whats necessary to fulfill the job (eg. dropdown behaviour)
295
+ * add parameter to vertical menu style: startLevel -> level at which menu should be started -> use it in andreas06/plain website style
296
+ * print files copied by create and use commands!
297
+ * andreas01 style bug: when no submenus, menu is moved down a little bit -> mail to a.viklund
298
+ * partial menu: should only show menu level UNDER the current level (i.e. if a dir on top level selected, show pages in dir) -> use vertical style with startLevel dynamically set via ERB
299
+ * add possibility to only update one file -> instead of whole site, one or more files can now be generated
300
+ * eventually use two levels of info: one for infos that should be displayed normally and one for additional infos
301
+ - always displayed: node creation, node writing, thumbnail writing
302
+ --> not two info levels: the messages that are too verbose go into the debug level
303
+ * add posibility to add attr=value pairs to links (in the #link_from method, use a meta_info prop link_attrs)
304
+ * redo docu for webgen run command: Runs webgen, ie. generates the HTML files
305
+ * BUG command clean does not delete all files (e.g. no resources, other files generated by plugins [source plugin]) -> no clean command anymore, maybe later again when caching of website nodes is possible
306
+ * make webgen source installation work with correct cmdparse version -> installation via rubygem is the preferred way, and much easier
307
+ * new configuration file syntax:
308
+ - should be ruby file -> still yaml for consistency (meta info in page file and backing file are yaml)
309
+ - should allow changing of parameters with opt. updater function -> not implemented
310
+ - should allow changing of file handler patterns -> not really useful (would be like changing the ext. of a OO.o
311
+ * better system for setting default page meta data like default content format/block names etc -> see above
312
+ * integrate xml builder for HTML/XML generation
313
+ * file handler for rcss files (CSS files with ERB code) -> redo website style CSS files in rcss
314
+ not only rcss but any kind of preprocessed files, include param paths like copy handler,
315
+ strip the letter r from extension: default.rcss -> default.css, mytest.rtxt -> mytest.txt
316
+ -> handle this via copy handler, new param erbPaths -> are preprocessed with erb
317
+ * remove SYNTAX_HIGHLIGHTING constant by using a method in manager which returns if an optional part is loaded
318
+ * new CLI command for checking availability of add. libraries (opt. libraries should be wrapped by a special method load_optional_part() )
319
+ parameters: :name, :error_msg, :about, :needed_gems
320
+ * new CLI command for checking configuration file
321
+ * include exif info for pictures (use exif library from RAA) -> using exifr gem as it is available as gem and pure ruby!
322
+ * pre-compile ERB templates -> should give a little speed boost -> which it does a little ;-)
323
+ * Node#route_to can't handle '..'!!! -> now it can by using the pathname library
324
+ * implement static menus, ie. if a file menu.yaml is in the website dir, use it instead of building menu trees
325
+ - file format simliar to page files, one block for a menu tree in one language, if menu trees for more than one
326
+ language then use more blocks with e.g. "--- de" separators, if no separator at beginning of file -> menu tree
327
+ for default language
328
+ - need to rethink the definition of a menu tree for static menus where categories do not need to be directories
329
+ -->> implemented, but differently: not menu.yaml, but 'static' menus are defined using the output backing mechanism
330
+ * parameter for setting the orderInfo of index pages so that they always appear as first entry
331
+ -> no really useful, one can just set the orderInfo using the meta info backing file or in the index files themselves
332
+ * optimize param_for_plugin by not using exception but return values (return [param_found, param_value])
333
+ * optimize PluginManager#plugin_class_for_name (store plugin_classes as hash)
334
+ * it seems that precalculating the param values and then using them does not boost the speed so much :-(
335
+ * maybe: precalculate full_path, absolute_path, to_url when parent or path changed -> huge speed boost!!!
336
+ * make website generation faster (webgen 0.3.8: ~6.5s, new webgen ~13.0s!)
337
+ * adapt GalleryInfo object: add a general data object which holds general information about the gallery (imagesPerPage, thumbnailSize,...)
338
+ -> the general data object should be unique among all gallery info objects
339
+ * document which plugin uses which resource (eg. menu plugins depend on webgen-css resource)
340
+ * new plugin naming convention:
341
+ - Core/ - core plugins, File/ - file handler plugins, Tags/ - tag processors, Misc/ - misc plugins
342
+ - HtmlValidator/ - html validators, MenuStyle/ - menu styles, ContentConverter/ - content converters
343
+ * document how plugin naming works (namespace/pluginname)
344
+ * documentation: create an example section where gallery styles, website style, aso are showcased!
345
+ * place a note about the spelling of webgen (all lowercase) somewhere very prominently
346
+ * Coderay version 0.7.4.215 required at least
347
+ * document how to build a menu with arbitrary section and menu items (also menu items under several different headings)
348
+ * document default plugin name (derived from class name)
349
+ * provide a sample for each website style on the webgen homepage
350
+ * describe how path patterns work -> ri Dir.glob
351
+ * file handlers which want to create a node that does already exist have to return the node
352
+ * filehandler ignores hidden directories, ie. ones with a leading dot
353
+ * depends_on only accepts strings
354
+ * document new dependencies like builder and coderay and exifr
355
+ * document on gallery style slides that collage/slide images are only created if they do not exist!
356
+ * doucment that when using the slides gallery style there has to be an 'layouter: slides' entry in the gallery file!
357
+ * documentation: put api specific documentation into RDOC, user specific docus on homepage
358
+ * document install page: two sections (Download/Install) and refer to special windows install issues
359
+ * document fields for plugin infos method
360
+ * docoument new CLI commands (check config/libs, use gallery_style/website_style, ...)
361
+ * loader.load_from_dir/load_from_file wraps the loaded classes in a module, load_from_block does not!
362
+ * document that website styles have be edited and full demos are available on the given homepage
363
+ * documentation: what else to say generally about file handlers?
364
+ * documentation: plugin names should have the form namespace/namespace/.../name where namespace and name should only have alphanumeric chars
365
+ * show available styles and templates in docu and in online help (webgen help create)
366
+ * documentation: new meta info linkAttrs used in links: should be a hash of attribute-value pairs which will be added to a link to this page node
367
+ * document linkAttrs meta info (eg. used for adding custom attributes to links, e.g. custom icons using css or accessibility features, use backing file for setting icons for directories)
368
+ * the use commands only copy files, they do not delete files in the src dir
369
+ * document that source directory is now always called src - no parameter anymore
370
+ * document somewhere which objects are available when processing templates/pages files with ERB
371
+ * document evaluation order of page files (first content converted from Textile/Markdown/... to HTML, then ERB, then tags)