jamesgolick-webby 0.9.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (233) hide show
  1. data/History.txt +219 -0
  2. data/README.rdoc +92 -0
  3. data/Rakefile +62 -0
  4. data/bin/webby +41 -0
  5. data/bin/webby-gen +41 -0
  6. data/examples/blog/Sitefile +7 -0
  7. data/examples/blog/tasks/blog.rake +72 -0
  8. data/examples/blog/templates/atom_feed.erb +40 -0
  9. data/examples/blog/templates/blog/month.erb +22 -0
  10. data/examples/blog/templates/blog/post.erb +16 -0
  11. data/examples/blog/templates/blog/year.erb +22 -0
  12. data/examples/presentation/Sitefile +10 -0
  13. data/examples/presentation/content/css/uv/twilight.css +137 -0
  14. data/examples/presentation/content/presentation/_sample_code.txt +10 -0
  15. data/examples/presentation/content/presentation/index.txt +63 -0
  16. data/examples/presentation/content/presentation/s5/blank.gif +0 -0
  17. data/examples/presentation/content/presentation/s5/bodybg.gif +0 -0
  18. data/examples/presentation/content/presentation/s5/framing.css +23 -0
  19. data/examples/presentation/content/presentation/s5/iepngfix.htc +42 -0
  20. data/examples/presentation/content/presentation/s5/opera.css +7 -0
  21. data/examples/presentation/content/presentation/s5/outline.css +15 -0
  22. data/examples/presentation/content/presentation/s5/pretty.css +86 -0
  23. data/examples/presentation/content/presentation/s5/print.css +25 -0
  24. data/examples/presentation/content/presentation/s5/s5-core.css +9 -0
  25. data/examples/presentation/content/presentation/s5/slides.css +3 -0
  26. data/examples/presentation/content/presentation/s5/slides.js +553 -0
  27. data/examples/presentation/layouts/presentation.txt +43 -0
  28. data/examples/presentation/templates/_code_partial.erb +13 -0
  29. data/examples/presentation/templates/presentation.erb +40 -0
  30. data/examples/tumblog/Sitefile +9 -0
  31. data/examples/tumblog/content/css/tumblog.css +308 -0
  32. data/examples/tumblog/content/images/tumblog/permalink.gif +0 -0
  33. data/examples/tumblog/content/images/tumblog/rss.gif +0 -0
  34. data/examples/tumblog/content/tumblog/200806/the-noble-chicken/index.txt +12 -0
  35. data/examples/tumblog/content/tumblog/200807/historical-perspectives-on-the-classic-chicken-joke/index.txt +12 -0
  36. data/examples/tumblog/content/tumblog/200807/mad-city-chickens/index.txt +10 -0
  37. data/examples/tumblog/content/tumblog/200807/the-wisdom-of-the-dutch/index.txt +11 -0
  38. data/examples/tumblog/content/tumblog/200807/up-a-tree/index.txt +13 -0
  39. data/examples/tumblog/content/tumblog/index.txt +37 -0
  40. data/examples/tumblog/content/tumblog/rss.txt +37 -0
  41. data/examples/tumblog/layouts/tumblog/default.txt +44 -0
  42. data/examples/tumblog/layouts/tumblog/post.txt +15 -0
  43. data/examples/tumblog/lib/tumblog_helper.rb +32 -0
  44. data/examples/tumblog/tasks/tumblog.rake +30 -0
  45. data/examples/tumblog/templates/atom_feed.erb +40 -0
  46. data/examples/tumblog/templates/tumblog/conversation.erb +12 -0
  47. data/examples/tumblog/templates/tumblog/link.erb +10 -0
  48. data/examples/tumblog/templates/tumblog/photo.erb +13 -0
  49. data/examples/tumblog/templates/tumblog/post.erb +12 -0
  50. data/examples/tumblog/templates/tumblog/quote.erb +11 -0
  51. data/examples/webby/Sitefile +19 -0
  52. data/examples/webby/content/communicate/index.txt +28 -0
  53. data/examples/webby/content/css/background.gif +0 -0
  54. data/examples/webby/content/css/blueprint/print.css +76 -0
  55. data/examples/webby/content/css/blueprint/screen.css +696 -0
  56. data/examples/webby/content/css/coderay.css +96 -0
  57. data/examples/webby/content/css/site.css +196 -0
  58. data/examples/webby/content/css/uv/twilight.css +137 -0
  59. data/examples/webby/content/index.txt +37 -0
  60. data/examples/webby/content/learn/index.txt +28 -0
  61. data/examples/webby/content/reference/index.txt +204 -0
  62. data/examples/webby/content/release-notes/index.txt +21 -0
  63. data/examples/webby/content/release-notes/rel-0-9-0/index.txt +74 -0
  64. data/examples/webby/content/release-notes/rel-0-9-1/index.txt +93 -0
  65. data/examples/webby/content/release-notes/rel-0-9-2/index.txt +14 -0
  66. data/examples/webby/content/release-notes/rel-0-9-3/index.txt +47 -0
  67. data/examples/webby/content/robots.txt +6 -0
  68. data/examples/webby/content/script/jquery.corner.js +152 -0
  69. data/examples/webby/content/script/jquery.js +31 -0
  70. data/examples/webby/content/sitemap.txt +31 -0
  71. data/examples/webby/content/tips_and_tricks/index.txt +97 -0
  72. data/examples/webby/content/tutorial/index.txt +135 -0
  73. data/examples/webby/content/user-manual/index.txt +419 -0
  74. data/examples/webby/layouts/default.txt +49 -0
  75. data/examples/webby/templates/page.erb +10 -0
  76. data/examples/website/Sitefile +7 -0
  77. data/examples/website/content/css/blueprint/ie.css +26 -0
  78. data/examples/website/content/css/blueprint/plugins/buttons/icons/cross.png +0 -0
  79. data/examples/website/content/css/blueprint/plugins/buttons/icons/key.png +0 -0
  80. data/examples/website/content/css/blueprint/plugins/buttons/icons/tick.png +0 -0
  81. data/examples/website/content/css/blueprint/plugins/buttons/readme.txt +32 -0
  82. data/examples/website/content/css/blueprint/plugins/buttons/screen.css +97 -0
  83. data/examples/website/content/css/blueprint/plugins/fancy-type/readme.txt +14 -0
  84. data/examples/website/content/css/blueprint/plugins/fancy-type/screen.css +71 -0
  85. data/examples/website/content/css/blueprint/plugins/link-icons/icons/doc.png +0 -0
  86. data/examples/website/content/css/blueprint/plugins/link-icons/icons/email.png +0 -0
  87. data/examples/website/content/css/blueprint/plugins/link-icons/icons/external.png +0 -0
  88. data/examples/website/content/css/blueprint/plugins/link-icons/icons/feed.png +0 -0
  89. data/examples/website/content/css/blueprint/plugins/link-icons/icons/im.png +0 -0
  90. data/examples/website/content/css/blueprint/plugins/link-icons/icons/pdf.png +0 -0
  91. data/examples/website/content/css/blueprint/plugins/link-icons/icons/visited.png +0 -0
  92. data/examples/website/content/css/blueprint/plugins/link-icons/icons/xls.png +0 -0
  93. data/examples/website/content/css/blueprint/plugins/link-icons/readme.txt +18 -0
  94. data/examples/website/content/css/blueprint/plugins/link-icons/screen.css +40 -0
  95. data/examples/website/content/css/blueprint/plugins/rtl/readme.txt +10 -0
  96. data/examples/website/content/css/blueprint/plugins/rtl/screen.css +109 -0
  97. data/examples/website/content/css/blueprint/print.css +30 -0
  98. data/examples/website/content/css/blueprint/screen.css +251 -0
  99. data/examples/website/content/css/blueprint/src/forms.css +49 -0
  100. data/examples/website/content/css/blueprint/src/grid.css +212 -0
  101. data/examples/website/content/css/blueprint/src/grid.png +0 -0
  102. data/examples/website/content/css/blueprint/src/ie.css +59 -0
  103. data/examples/website/content/css/blueprint/src/print.css +85 -0
  104. data/examples/website/content/css/blueprint/src/reset.css +38 -0
  105. data/examples/website/content/css/blueprint/src/typography.css +105 -0
  106. data/examples/website/content/css/coderay.css +111 -0
  107. data/examples/website/content/css/site.css +67 -0
  108. data/examples/website/content/index.txt +19 -0
  109. data/examples/website/layouts/default.txt +61 -0
  110. data/examples/website/lib/breadcrumbs.rb +28 -0
  111. data/examples/website/templates/_partial.erb +10 -0
  112. data/examples/website/templates/page.erb +18 -0
  113. data/lib/webby.rb +233 -0
  114. data/lib/webby/apps.rb +12 -0
  115. data/lib/webby/apps/generator.rb +276 -0
  116. data/lib/webby/apps/main.rb +258 -0
  117. data/lib/webby/auto_builder.rb +157 -0
  118. data/lib/webby/builder.rb +172 -0
  119. data/lib/webby/core_ext/enumerable.rb +11 -0
  120. data/lib/webby/core_ext/hash.rb +28 -0
  121. data/lib/webby/core_ext/kernel.rb +26 -0
  122. data/lib/webby/core_ext/string.rb +163 -0
  123. data/lib/webby/core_ext/time.rb +9 -0
  124. data/lib/webby/filters.rb +85 -0
  125. data/lib/webby/filters/basepath.rb +97 -0
  126. data/lib/webby/filters/erb.rb +9 -0
  127. data/lib/webby/filters/haml.rb +18 -0
  128. data/lib/webby/filters/markdown.rb +16 -0
  129. data/lib/webby/filters/maruku.rb +16 -0
  130. data/lib/webby/filters/outline.rb +309 -0
  131. data/lib/webby/filters/sass.rb +17 -0
  132. data/lib/webby/filters/slides.rb +56 -0
  133. data/lib/webby/filters/textile.rb +16 -0
  134. data/lib/webby/filters/tidy.rb +76 -0
  135. data/lib/webby/filters/wiki_words.rb +14 -0
  136. data/lib/webby/helpers.rb +30 -0
  137. data/lib/webby/helpers/capture_helper.rb +141 -0
  138. data/lib/webby/helpers/coderay_helper.rb +69 -0
  139. data/lib/webby/helpers/graphviz_helper.rb +136 -0
  140. data/lib/webby/helpers/tag_helper.rb +65 -0
  141. data/lib/webby/helpers/tex_img_helper.rb +133 -0
  142. data/lib/webby/helpers/ultraviolet_helper.rb +63 -0
  143. data/lib/webby/helpers/url_helper.rb +241 -0
  144. data/lib/webby/journal.rb +126 -0
  145. data/lib/webby/link_validator.rb +160 -0
  146. data/lib/webby/renderer.rb +390 -0
  147. data/lib/webby/resources.rb +137 -0
  148. data/lib/webby/resources/db.rb +251 -0
  149. data/lib/webby/resources/layout.rb +54 -0
  150. data/lib/webby/resources/meta_file.rb +211 -0
  151. data/lib/webby/resources/page.rb +81 -0
  152. data/lib/webby/resources/partial.rb +85 -0
  153. data/lib/webby/resources/resource.rb +201 -0
  154. data/lib/webby/resources/static.rb +36 -0
  155. data/lib/webby/stelan/mktemp.rb +135 -0
  156. data/lib/webby/stelan/paginator.rb +165 -0
  157. data/lib/webby/tasks/build.rake +27 -0
  158. data/lib/webby/tasks/create.rake +25 -0
  159. data/lib/webby/tasks/deploy.rake +22 -0
  160. data/lib/webby/tasks/growl.rake +16 -0
  161. data/lib/webby/tasks/validate.rake +19 -0
  162. data/spec/core_ext/hash_spec.rb +47 -0
  163. data/spec/core_ext/string_spec.rb +110 -0
  164. data/spec/core_ext/time_spec.rb +19 -0
  165. data/spec/data/hooligans/bad_meta_data_1.txt +34 -0
  166. data/spec/data/hooligans/bad_meta_data_2.txt +34 -0
  167. data/spec/data/html/anchor.html +11 -0
  168. data/spec/data/html/external.html +10 -0
  169. data/spec/data/html/invalid-relative.html +10 -0
  170. data/spec/data/html/relative-anchor.html +10 -0
  171. data/spec/data/html/relative-invalid-anchor.html +10 -0
  172. data/spec/data/html/relative.html +10 -0
  173. data/spec/data/outline/basic.out +81 -0
  174. data/spec/data/outline/basic.txt +25 -0
  175. data/spec/data/outline/no_clobber.out +86 -0
  176. data/spec/data/outline/numbering.out +81 -0
  177. data/spec/data/outline/numbering_only.out +21 -0
  178. data/spec/data/outline/toc_range_1.out +66 -0
  179. data/spec/data/outline/toc_range_2.out +55 -0
  180. data/spec/data/outline/toc_style.out +81 -0
  181. data/spec/data/site/Sitefile +9 -0
  182. data/spec/data/site/content/_partial.txt +10 -0
  183. data/spec/data/site/content/css/coderay.css +111 -0
  184. data/spec/data/site/content/css/site.css +67 -0
  185. data/spec/data/site/content/css/tumblog.css +308 -0
  186. data/spec/data/site/content/images/tumblog/permalink.gif +0 -0
  187. data/spec/data/site/content/images/tumblog/rss.gif +0 -0
  188. data/spec/data/site/content/index.txt +19 -0
  189. data/spec/data/site/content/photos.txt +21 -0
  190. data/spec/data/site/content/tumblog/200806/the-noble-chicken/index.txt +12 -0
  191. data/spec/data/site/content/tumblog/200807/historical-perspectives-on-the-classic-chicken-joke/index.txt +12 -0
  192. data/spec/data/site/content/tumblog/200807/mad-city-chickens/index.txt +10 -0
  193. data/spec/data/site/content/tumblog/200807/the-wisdom-of-the-dutch/index.txt +11 -0
  194. data/spec/data/site/content/tumblog/200807/up-a-tree/index.txt +13 -0
  195. data/spec/data/site/content/tumblog/index.txt +37 -0
  196. data/spec/data/site/content/tumblog/rss.txt +37 -0
  197. data/spec/data/site/layouts/default.txt +58 -0
  198. data/spec/data/site/layouts/tumblog/default.txt +44 -0
  199. data/spec/data/site/layouts/tumblog/post.txt +15 -0
  200. data/spec/data/site/lib/breadcrumbs.rb +28 -0
  201. data/spec/data/site/lib/tumblog_helper.rb +32 -0
  202. data/spec/data/site/tasks/tumblog.rake +30 -0
  203. data/spec/data/site/templates/_partial.erb +10 -0
  204. data/spec/data/site/templates/atom_feed.erb +40 -0
  205. data/spec/data/site/templates/page.erb +18 -0
  206. data/spec/data/site/templates/presentation.erb +40 -0
  207. data/spec/data/site/templates/tumblog/conversation.erb +12 -0
  208. data/spec/data/site/templates/tumblog/link.erb +10 -0
  209. data/spec/data/site/templates/tumblog/photo.erb +13 -0
  210. data/spec/data/site/templates/tumblog/post.erb +12 -0
  211. data/spec/data/site/templates/tumblog/quote.erb +11 -0
  212. data/spec/spec.opts +1 -0
  213. data/spec/spec_helper.rb +58 -0
  214. data/spec/webby/apps/generator_spec.rb +117 -0
  215. data/spec/webby/apps/main_spec.rb +88 -0
  216. data/spec/webby/filters/basepath_spec.rb +167 -0
  217. data/spec/webby/filters/maruku_spec.rb +31 -0
  218. data/spec/webby/filters/outline_spec.rb +92 -0
  219. data/spec/webby/filters/textile_spec.rb +31 -0
  220. data/spec/webby/helpers/capture_helper_spec.rb +56 -0
  221. data/spec/webby/link_validator_spec.rb +154 -0
  222. data/spec/webby/renderer_spec.rb +139 -0
  223. data/spec/webby/resources/db_spec.rb +250 -0
  224. data/spec/webby/resources/layout_spec.rb +83 -0
  225. data/spec/webby/resources/meta_file_spec.rb +171 -0
  226. data/spec/webby/resources/page_spec.rb +111 -0
  227. data/spec/webby/resources/partial_spec.rb +58 -0
  228. data/spec/webby/resources/resource_spec.rb +219 -0
  229. data/spec/webby/resources/static_spec.rb +49 -0
  230. data/spec/webby/resources_spec.rb +69 -0
  231. data/tasks/mswin32.rake +38 -0
  232. data/tasks/website.rake +37 -0
  233. metadata +435 -0
data/History.txt ADDED
@@ -0,0 +1,219 @@
1
+ == 0.9.4 / 2009-02-
2
+
3
+ * 3 minor enhancements
4
+ - Added a Maruku filter (thanks to Martyn Loughran)
5
+ - Updated to version 0.8.0 of Blueprint css
6
+ - Better handling of errors generated by filters
7
+ * 4 bug fixes
8
+ - Work around for a parsing bug in the rdiscount gem (markdown handling)
9
+ - Editor launching now handles switches passed to the editor
10
+ - When a page fails to render, it no longer writes an empty file to
11
+ the output folder (thereby overwriting the last good page)
12
+ - Pagination bug
13
+
14
+ == 0.9.3 / 2008-10-08
15
+
16
+ * 4 minor enhancements
17
+ - Added a "wikiwords" filter to process [[text]] as links to other pages
18
+ (thanks to Paul)
19
+ - Added colorization to the output text (facets gem required)
20
+ - Replaced the Heel webserver with webrick
21
+ - Special windows version with windows line endings in generated files
22
+ * 2 bug fixes
23
+ - Fixed a bug on Windows where line endings were messing with meta-data
24
+ - The paginator was not linking correctly back to the first page from
25
+ subsequent pages in a list
26
+
27
+ == 0.9.2 / 2008-09-11
28
+
29
+ * 1 bug fix
30
+ - Layouts were not being found if more than one layout was in a directory
31
+ in the layouts folder
32
+
33
+ == 0.9.1 / 2008-09-10
34
+
35
+ * 1 major enhancement
36
+ - multiple output files can be generated from a single page
37
+ * 2 minor enhancements
38
+ - simplified the handling of meta-data at the top of files
39
+ - pagination now honors the "page per directory" flag
40
+ * 2 bug fixes
41
+ - filename extensions were not being preserved when creating a new page
42
+ - webby now works properly with rake 0.8.2
43
+
44
+ == 0.9.0 / 2008-08-25
45
+
46
+ * 2 major enhancements
47
+ - The "rake" command line tool has been replaced by the "webby"
48
+ command line tool for day to day site tasks
49
+ - Now using the "rdiscount" gem for markdown syntax
50
+ * 4 minor enhancements
51
+ - Layouts can exist in subdirectories of the layouts folder
52
+ - Addition of a "tumblog" template
53
+ - Addition of a sitemap file (Ana Nelson)
54
+ - Updated to version 6.4.2 of ImageMagick for tex2img conversions
55
+ * 5 bug fixes
56
+ - Better error message when an unkonwn filter is given
57
+ - Table of contents generation bug
58
+ - Failing to clean out the "content_for" cache when doing a
59
+ multi-page render
60
+ - Explicitly loading the RedCloth gem
61
+ - Handling exceptions from system calls on the Windows platform
62
+
63
+ == 0.8.4 / 2008-06-03
64
+
65
+ * 1 minor improvement
66
+ - Global defaults for HAML and SASS [Dag Odenhall]
67
+ * 1 bug fix
68
+ - Added the blog templates to the package
69
+
70
+ == 0.8.3 / 2008-06-02
71
+
72
+ * 2 major enhancements
73
+ - Added blogging support
74
+ - Added S5 slide presentation support
75
+ * 6 minor enhancements
76
+ - Changed the arguments to the DB#find method
77
+ - Added locals support for page templates
78
+ - Updated atom feed generation template
79
+ - Partials now support local variables when rendering
80
+ - Can guard rendering results from processing by subsequent filters
81
+ (useful when rendering partials or embedding other pages)
82
+ - Support for "content_for" style captures [M@ McCray]
83
+ * 5 bug fixes
84
+ - Fixed reference to an non-existent Error class
85
+ - Basepath filter now handles XML files properly
86
+ - Removed the "--delete" flag from the rsync options [Denis Defreyne]
87
+ - Fixed a nil cursor bug in the rendering filter stack
88
+ - Recursive find now works from the root content folder (bug 20281)
89
+
90
+ == 0.8.2 / 2008-03-12
91
+
92
+ * 2 bug fixes
93
+ - Fixed an error when paginating on an index page
94
+ - Fixed an error where leading and trailing whitespace was being
95
+ stripped from syntax highlighted code blocks
96
+
97
+ == 0.8.1 / 2008-03-09
98
+
99
+ * 2 major enhancement
100
+ - Added support for UltraViolet syntax highlighting
101
+ (code provided by Guillaume Carbonneau)
102
+ - Added rake tasks to validate the hyperlinks for the HTML files
103
+ in the output directory
104
+ * 2 minor enhancements
105
+ - Improved error handling and reporting during the build process
106
+ - Added site defaults for the helpers (coderay, graphviv, latex,
107
+ etc.)
108
+ * 1 bug fix
109
+ - Fixed an error with the prev / next calls in the paginator and
110
+ rendering links to those pages
111
+
112
+ == 0.8.0 / 2008-02-28
113
+
114
+ * 3 major enhancements
115
+ - Added support for partials
116
+ - Refactored the coderay and graphviz filters into helper methods
117
+ accessible from ERB
118
+ - Added support for embedding LaTeX mathematical equations
119
+ * 3 minor enhancements
120
+ - Added a template file for creating Atom feeds
121
+ - The SITE configuration is available in pages and layouts as
122
+ the @config variable
123
+ - Can specify the port the Heel webserver starts on using the
124
+ SITE.heel_port option in the Rakefile
125
+ * 2 bug fixes
126
+ - When creating pages in directory mode the full page path was
127
+ not being created
128
+ - Read only files were being created in the output folder
129
+ preventing them from being overwritten if changed
130
+
131
+ == 0.7.4 / 2008-02-15
132
+
133
+ * 3 minor enhancements
134
+ - Added "limit" and "sort_by" options to the pages find method
135
+ - Removed dependency on RedCloth for outline generation
136
+ - Added some more options for outline generation, numbering, and
137
+ table of contents generation
138
+ * 1 bug fix
139
+ - Fixed incompatibility with the new logging library
140
+
141
+ == 0.7.3 / 2008-02-05
142
+
143
+ * 2 bug fixes
144
+ - The setup.rb task now requires rubygems in case it is not in the
145
+ user's rubyopt
146
+ - Fixed file line endings on Windows when creating a new site
147
+
148
+ == 0.7.2 / 2008-02-02
149
+
150
+ * 4 minor enhancements
151
+ - Created a URI base path rewriter filter
152
+ - Create an outline filter for generating table of contents
153
+ - Pages can be created as files or as directories
154
+ - The @pages find method now recurses into sub-directories
155
+ * 3 bug fixes
156
+ - Fixed a bug in the graphviz filter where the wrong map ID was
157
+ being generated
158
+ - Now passing the binding of the Renderer to the HAML filter
159
+ (this makes the @page, @pages availabe in HAML pages)
160
+ - The created_at attribute was not being created as a YAML
161
+ time object
162
+
163
+ == 0.7.1 / 2008-01-03
164
+
165
+ * 2 bug fixes
166
+ - No longer appending a '.' to files without an extension (like .htaccess)
167
+ (patch supplied by Stephen Duncan)
168
+ - Fixed a "No such file or directory" error when creating pages
169
+ from templates
170
+
171
+ == 0.7.0 / 2008-01-01
172
+
173
+ * 1 major enhancement
174
+ - Refactored how the filters are handled (thanks Bruce Williams)
175
+ * 2 minor enhancements
176
+ - Added helper methods for URL and anchor generation
177
+ - Added rake task to delete the generated website
178
+ * 2 bug fixes
179
+ - Fixed a bug arising from the order of the logger creation
180
+ - Removed the file extension form the page defaults
181
+ (should be set in the layout or the page itself)
182
+
183
+ == 0.6.0 / 2007-12-04
184
+
185
+ * Added support for embedded graphviz images and image maps
186
+ * Tidy can be used as a filter to format HTML and check for errors
187
+ * Simplified coderay when used with textile
188
+
189
+ == 0.5.1 / 2007-11-29
190
+
191
+ * Growl notifications now work on Leopard / Tiger
192
+ * Fixed a few things for compatibility with Ruby 1.9
193
+
194
+ == 0.5.0 / 2007-11-26
195
+
196
+ * Launching heel now works on Windows boxen
197
+ * Now using "logging" gem to output build status
198
+ * Updated find routine for the pages DB
199
+ * First whack at pagination support
200
+
201
+ == 0.4.0 / 2007-09-18
202
+
203
+ * Updated the Blueprint CSS stylesheets to version 0.5
204
+ * Updating documentation and comments
205
+
206
+ == 0.3.0 / 2007-09-17
207
+
208
+ * Added support for CodeRay syntax highlighting
209
+
210
+ == 0.2.0 / 2007-08-28
211
+
212
+ * Updated rake tasks for website deployment
213
+ * Can use 'heel' and 'launchy' for viewing websites
214
+ * Webby executable can update rake tasks for existing websites
215
+ * Added more rdoc documentation to classes
216
+
217
+ == 0.1.0 / 2007-08-22
218
+
219
+ * Birthday!
data/README.rdoc ADDED
@@ -0,0 +1,92 @@
1
+ = Webby
2
+
3
+ * {Homepage}[http://webby.rubyforge.org/]
4
+ * {Rubyforge Project}[http://rubyforge.org/projects/webby]
5
+ * email tim dot pease at gmail dot com
6
+
7
+ == DESCRIPTION:
8
+
9
+ *Webby* is a fantastic little website management system. It would be called a *content management system* if it were a bigger kid. But, it's just a runt with a special knack for transforming text. And that's really all it does - manages the legwork of turning text into something else, an *ASCII Alchemist* if you will.
10
+
11
+ Webby works by combining the contents of a *page* with a *layout* to produce HTML. The layout contains everything common to all the pages - HTML headers, navigation menu, footer, etc. - and the page contains just the information for that page. You can use your favorite markup language to write your pages; Webby supports quite a few.
12
+
13
+ Install Webby and try it out!
14
+
15
+ == FEATURES:
16
+
17
+ * choose your templating language: *ERB*, *Textile*, *Markdown*, *HAML*, *SASS*
18
+ * support for {UltraViolet}[http://ultraviolet.rubyforge.org/] and {CodeRay}[http://coderay.rubychan.de/] syntax highlighting
19
+ * embeddable DOT scripts for {Graphviz}[http://www.graphviz.org/] graphs
20
+ * {LaTeX}[http://www.latex-project.org/] snippets for mathematical formulas
21
+ * automatically clean up generated content using {Tidy}[http://tidy.sourceforge.net/]
22
+ * quick and speedy - only builds pages that have changed
23
+ * deploy anywhere - it's just HTML, no special server stuff required
24
+ * happy {Rake}[http://docs.rubyrake.org/] tasks for deploying your website to a server
25
+ * build new pages from templates for quicker blog posts and news items
26
+
27
+ But Wait! There's More!
28
+
29
+ Webby has a great _autobuild_ feature that continuously generates HTML whenever the *pages* or *layouts* change. The HTML is served up via _WebBrick_, a simple webserver that comes with Ruby. Whenever you change a page, you can immediately see those changes without having to run any commands.
30
+
31
+ $ webby autobuild
32
+ [10:21:26] INFO: starting autobuild (Ctrl-C to stop)
33
+ [10:21:26] INFO: creating output/index.html
34
+ [10:22:57] INFO: creating output/index.html
35
+
36
+ Webby is not limited to producing HTML. By no means! Do you ever get tired of repeating the same color code *#D3C4A2* in your CSS files? Webby can help. Need some customized JavaScript for your website. Webby can help. Anytime you find yourself repeating the same bit of text over and over, then you should be using Webby.
37
+
38
+ == INSTALL:
39
+
40
+ gem install webby
41
+
42
+ == EXAMPLE:
43
+
44
+ $ webby-gen website my_site
45
+ creating my_site
46
+
47
+ $ cd my_site
48
+
49
+ $ webby create:page 'new page'
50
+ creating content/new-page.txt
51
+
52
+ $ webby create:page 'another/new page'
53
+ creating content/another/new-page.txt
54
+
55
+ $ webby autobuild
56
+ [10:21:26] INFO: starting autobuild (Ctrl-C to stop)
57
+ [10:21:26] INFO: creating output/index.html
58
+ [10:21:26] INFO: creating output/new-page.html
59
+ [10:21:26] INFO: creating output/another/new-page.html
60
+
61
+ == REQUIREMENTS:
62
+
63
+ * directory_watcher
64
+ * hpricot
65
+ * logging
66
+ * rake
67
+ * rspec
68
+ * bones
69
+
70
+ == LICENSE:
71
+
72
+ MIT License
73
+ Copyright (c) 2007 - 2008
74
+
75
+ Permission is hereby granted, free of charge, to any person obtaining
76
+ a copy of this software and associated documentation files (the
77
+ 'Software'), to deal in the Software without restriction, including
78
+ without limitation the rights to use, copy, modify, merge, publish,
79
+ distribute, sub-license, and/or sell copies of the Software, and to
80
+ permit persons to whom the Software is furnished to do so, subject to
81
+ the following conditions:
82
+
83
+ The above copyright notice and this permission notice shall be
84
+ included in all copies or substantial portions of the Software.
85
+
86
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
87
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
88
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
89
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
90
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
91
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
92
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile ADDED
@@ -0,0 +1,62 @@
1
+
2
+ begin
3
+ gem 'bones', '= 2.4.0'
4
+ require 'bones'
5
+ Bones.setup
6
+ rescue LoadError
7
+ begin
8
+ load 'tasks/setup.rb'
9
+ rescue LoadError
10
+ raise RuntimeError, '### please install the "bones" gem ###'
11
+ end
12
+ end
13
+
14
+ ensure_in_path 'lib'
15
+ require 'webby'
16
+
17
+ task :default => 'spec:specdoc'
18
+
19
+ PROJ.name = 'webby'
20
+ PROJ.summary = 'static website creation and management'
21
+ PROJ.authors = 'Tim Pease'
22
+ PROJ.email = 'tim.pease@gmail.com'
23
+ PROJ.url = 'http://webby.rubyforge.org/'
24
+ PROJ.rubyforge.name = 'webby'
25
+ PROJ.version = Webby::VERSION
26
+ PROJ.release_name = 'Bill Gates Alien Love Child'
27
+ PROJ.readme_file = 'README.rdoc'
28
+ PROJ.ignore_file = '.gitignore'
29
+
30
+ PROJ.ruby_opts = %w[-W0]
31
+ PROJ.exclude << %w(^webby.gemspec$)
32
+
33
+ PROJ.rdoc.dir = 'doc/rdoc'
34
+ PROJ.rdoc.remote_dir = 'rdoc'
35
+ PROJ.rdoc.exclude << %w(^examples)
36
+ PROJ.rdoc.include << PROJ.readme_file
37
+
38
+ PROJ.spec.opts << '--color'
39
+
40
+ PROJ.ann.email[:to] << 'webby-forum@googlegroups.com'
41
+ PROJ.ann.email[:server] = 'smtp.gmail.com'
42
+ PROJ.ann.email[:port] = 587
43
+ PROJ.ann.email[:from] = 'Tim Pease'
44
+
45
+ PROJ.ann.text = <<-ANN
46
+ == POST SCRIPT
47
+
48
+ Visit the Webby forum to chat with other Webby-Heads:
49
+ http://groups.google.com/group/webby-forum
50
+
51
+ Blessings,
52
+ TwP
53
+ ANN
54
+
55
+ depend_on 'directory_watcher'
56
+ depend_on 'hpricot', '= 0.6.0'
57
+ depend_on 'launchy'
58
+ depend_on 'logging'
59
+ depend_on 'rake'
60
+ depend_on 'rspec'
61
+
62
+ # EOF
data/bin/webby ADDED
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'logging'
5
+
6
+ ::Logging.configure {
7
+ logger('Webby') {
8
+ level :info
9
+ appenders 'stdout'
10
+ }
11
+
12
+ logger('Webby::Journal') {
13
+ level :info
14
+ additive false
15
+ appenders 'journal'
16
+ }
17
+
18
+ appender('stdout') {
19
+ type 'Stdout'
20
+ layout {
21
+ type 'Pattern'
22
+ pattern "[%d] %5l: %m\n"
23
+ date_pattern "%H:%M:%S"
24
+ }
25
+ }
26
+
27
+ appender('journal') {
28
+ type 'Stdout'
29
+ layout {
30
+ type 'Pattern'
31
+ pattern "%m\n"
32
+ }
33
+ }
34
+ }
35
+
36
+ require File.expand_path(
37
+ File.join(File.dirname(__FILE__), %w[.. lib webby]))
38
+
39
+ ::Webby::Apps::Main.run(ARGV)
40
+
41
+ # EOF
data/bin/webby-gen ADDED
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'logging'
5
+
6
+ ::Logging.configure {
7
+ logger('Webby') {
8
+ level :info
9
+ appenders 'stdout'
10
+ }
11
+
12
+ logger('Webby::Journal') {
13
+ level :info
14
+ additive false
15
+ appenders 'journal'
16
+ }
17
+
18
+ appender('stdout') {
19
+ type 'Stdout'
20
+ layout {
21
+ type 'Pattern'
22
+ pattern "[%d] %5l: %m\n"
23
+ date_pattern "%H:%M:%S"
24
+ }
25
+ }
26
+
27
+ appender('journal') {
28
+ type 'Stdout'
29
+ layout {
30
+ type 'Pattern'
31
+ pattern "%m\n"
32
+ }
33
+ }
34
+ }
35
+
36
+ require File.expand_path(
37
+ File.join(File.dirname(__FILE__), %w[.. lib webby]))
38
+
39
+ ::Webby::Apps::Generator.run(ARGV)
40
+
41
+ # EOF