inversion 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data.tar.gz.sig +2 -0
  2. data/.gemtest +0 -0
  3. data/ChangeLog +836 -0
  4. data/History.md +4 -0
  5. data/Manifest.txt +74 -0
  6. data/README.rdoc +171 -0
  7. data/Rakefile +55 -0
  8. data/bin/inversion +276 -0
  9. data/lib/inversion.rb +98 -0
  10. data/lib/inversion/exceptions.rb +21 -0
  11. data/lib/inversion/mixins.rb +236 -0
  12. data/lib/inversion/monkeypatches.rb +20 -0
  13. data/lib/inversion/renderstate.rb +337 -0
  14. data/lib/inversion/sinatra.rb +35 -0
  15. data/lib/inversion/template.rb +250 -0
  16. data/lib/inversion/template/attrtag.rb +120 -0
  17. data/lib/inversion/template/calltag.rb +16 -0
  18. data/lib/inversion/template/codetag.rb +164 -0
  19. data/lib/inversion/template/commenttag.rb +54 -0
  20. data/lib/inversion/template/conditionaltag.rb +49 -0
  21. data/lib/inversion/template/configtag.rb +60 -0
  22. data/lib/inversion/template/containertag.rb +45 -0
  23. data/lib/inversion/template/elsetag.rb +62 -0
  24. data/lib/inversion/template/elsiftag.rb +49 -0
  25. data/lib/inversion/template/endtag.rb +55 -0
  26. data/lib/inversion/template/escapetag.rb +26 -0
  27. data/lib/inversion/template/fortag.rb +120 -0
  28. data/lib/inversion/template/iftag.rb +69 -0
  29. data/lib/inversion/template/importtag.rb +70 -0
  30. data/lib/inversion/template/includetag.rb +51 -0
  31. data/lib/inversion/template/node.rb +102 -0
  32. data/lib/inversion/template/parser.rb +297 -0
  33. data/lib/inversion/template/pptag.rb +28 -0
  34. data/lib/inversion/template/publishtag.rb +72 -0
  35. data/lib/inversion/template/subscribetag.rb +88 -0
  36. data/lib/inversion/template/tag.rb +150 -0
  37. data/lib/inversion/template/textnode.rb +43 -0
  38. data/lib/inversion/template/unlesstag.rb +60 -0
  39. data/lib/inversion/template/uriencodetag.rb +30 -0
  40. data/lib/inversion/template/yieldtag.rb +51 -0
  41. data/lib/inversion/tilt.rb +82 -0
  42. data/lib/inversion/utils.rb +235 -0
  43. data/spec/data/sinatra/hello.inversion +1 -0
  44. data/spec/inversion/mixins_spec.rb +177 -0
  45. data/spec/inversion/monkeypatches_spec.rb +35 -0
  46. data/spec/inversion/renderstate_spec.rb +291 -0
  47. data/spec/inversion/sinatra_spec.rb +59 -0
  48. data/spec/inversion/template/attrtag_spec.rb +216 -0
  49. data/spec/inversion/template/calltag_spec.rb +30 -0
  50. data/spec/inversion/template/codetag_spec.rb +51 -0
  51. data/spec/inversion/template/commenttag_spec.rb +84 -0
  52. data/spec/inversion/template/configtag_spec.rb +105 -0
  53. data/spec/inversion/template/containertag_spec.rb +54 -0
  54. data/spec/inversion/template/elsetag_spec.rb +105 -0
  55. data/spec/inversion/template/elsiftag_spec.rb +87 -0
  56. data/spec/inversion/template/endtag_spec.rb +78 -0
  57. data/spec/inversion/template/escapetag_spec.rb +59 -0
  58. data/spec/inversion/template/fortag_spec.rb +98 -0
  59. data/spec/inversion/template/iftag_spec.rb +241 -0
  60. data/spec/inversion/template/importtag_spec.rb +106 -0
  61. data/spec/inversion/template/includetag_spec.rb +108 -0
  62. data/spec/inversion/template/node_spec.rb +81 -0
  63. data/spec/inversion/template/parser_spec.rb +170 -0
  64. data/spec/inversion/template/pptag_spec.rb +51 -0
  65. data/spec/inversion/template/publishtag_spec.rb +69 -0
  66. data/spec/inversion/template/subscribetag_spec.rb +60 -0
  67. data/spec/inversion/template/tag_spec.rb +97 -0
  68. data/spec/inversion/template/textnode_spec.rb +86 -0
  69. data/spec/inversion/template/unlesstag_spec.rb +84 -0
  70. data/spec/inversion/template/uriencodetag_spec.rb +49 -0
  71. data/spec/inversion/template/yieldtag_spec.rb +54 -0
  72. data/spec/inversion/template_spec.rb +269 -0
  73. data/spec/inversion/tilt_spec.rb +47 -0
  74. data/spec/inversion_spec.rb +95 -0
  75. data/spec/lib/constants.rb +9 -0
  76. data/spec/lib/helpers.rb +160 -0
  77. metadata +316 -0
  78. metadata.gz.sig +0 -0
@@ -0,0 +1,2 @@
1
+ M�q�4�+5(tjͧR�I�
2
+ 苌08$��-�e��?n��W9稙��Z�A[!�c�@��"�[���Gl�"�Ɍ|��>s#mg6�A��t�>��U'�����ewu#a��u@̧x<��J��=\���{M�ā)�l�������
File without changes
@@ -0,0 +1,836 @@
1
+ 2011-08-15 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .hgtags:
4
+ Added tag v0.0.1 for changeset 42184d34d45d
5
+ [e9e43e8d1060] [tip]
6
+
7
+ * .hgsigs:
8
+ Added signature for changeset 0bca14d50d50
9
+ [42184d34d45d] [v0.0.1]
10
+
11
+ * Rakefile, manual/lib/api-filter.rb, manual/src/templates.page:
12
+ Update to hoe-manualgen 0.2.0.
13
+ [0bca14d50d50]
14
+
15
+ * manual/src/examples.page:
16
+ Stripping expanded Id tag
17
+ [9613e2c60530]
18
+
19
+ 2011-08-15 Mahlon E. Smith <mahlon@martini.nu>
20
+
21
+ * Branch merge with d3ed941ec7ef
22
+ [07cde3b1ffba]
23
+
24
+ * .hgignore, Manual Diagrams.graffle, README.rdoc, Rakefile,
25
+ experiments/demo.rb, experiments/templates/demo-content.tmpl,
26
+ lib/inversion/template/subscribetag.rb, manual/layouts/default.erb,
27
+ manual/lib/api-filter.rb, manual/lib/editorial-filter.rb, manual/lib
28
+ /examples-filter.rb, manual/lib/links-filter.rb,
29
+ manual/resources/css/manual.css,
30
+ manual/resources/fonts/GraublauWeb.otf,
31
+ manual/resources/fonts/GraublauWebBold.otf,
32
+ manual/resources/fonts/Inconsolata.otf,
33
+ manual/resources/images/arrow_225_small.png,
34
+ manual/resources/images/arrow_315_small.png,
35
+ manual/resources/images/arrow_skip.png, manual/resources/images/cc-
36
+ by.png, manual/resources/images/dialog-error.png,
37
+ manual/resources/images/dialog-information.png,
38
+ manual/resources/images/dialog-warning.png, manual/resources/images
39
+ /emblem-important.png, manual/resources/images/help.png,
40
+ manual/resources/images/information.png,
41
+ manual/resources/images/magnifier.png,
42
+ manual/resources/images/magnifier_left.png,
43
+ manual/resources/images/page_white_code.png,
44
+ manual/resources/images/page_white_copy.png,
45
+ manual/resources/images/printer.png,
46
+ manual/resources/images/question.png,
47
+ manual/resources/images/scripts_code.png,
48
+ manual/resources/images/wrap.png,
49
+ manual/resources/images/wrapping.png,
50
+ manual/resources/js/jquery-1.4.4.min.js,
51
+ manual/resources/js/manual.js, manual/resources/js/sh.js,
52
+ manual/resources/swf/clipboard.swf, manual/src/examples.page,
53
+ manual/src/gettingstarted.page, manual/src/index.page,
54
+ manual/src/tags.page, manual/src/templates.page:
55
+ Adding a manual.
56
+ [8d85088f0601]
57
+
58
+ 2011-08-02 Michael Granger <ged@FaerieMUD.org>
59
+
60
+ * lib/inversion/tilt.rb, spec/inversion/template/configtag_spec.rb,
61
+ spec/inversion/tilt_spec.rb:
62
+ Fixes for Ruby 1.9.3-preview1.
63
+ [d3ed941ec7ef]
64
+
65
+ * lib/inversion.rb:
66
+ Add a warning for older versions of Ruby
67
+ [73c3d8215868]
68
+
69
+ * .irbrc:
70
+ Guard against load errors in .irbrc
71
+ [663ff80c4a69]
72
+
73
+ 2011-07-30 Michael Granger <ged@FaerieMUD.org>
74
+
75
+ * lib/inversion/tilt.rb:
76
+ Adding more workaround code for Sinatra
77
+ [dd6eb02835f4]
78
+
79
+ * lib/inversion/template/tag.rb:
80
+ Commented out some of the spammier debugging in the tag-loading
81
+ code.
82
+ [277a65ffa0bf]
83
+
84
+ 2011-07-27 Michael Granger <ged@FaerieMUD.org>
85
+
86
+ * Rakefile, lib/inversion/template/timedeltatag.rb,
87
+ spec/inversion/mixins_spec.rb,
88
+ spec/inversion/template/timedeltatag_spec.rb,
89
+ spec/inversion_spec.rb:
90
+ Added some specs to improve coverage
91
+ [5fb307e8605a]
92
+
93
+ * Manifest.txt, README.md, README.rdoc, Rakefile, bin/inversion,
94
+ lib/inversion.rb, lib/inversion/exceptions.rb,
95
+ lib/inversion/mixins.rb, lib/inversion/monkeypatches.rb,
96
+ lib/inversion/renderstate.rb, lib/inversion/sinatra.rb,
97
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
98
+ lib/inversion/template/codetag.rb,
99
+ lib/inversion/template/commenttag.rb,
100
+ lib/inversion/template/conditionaltag.rb,
101
+ lib/inversion/template/configtag.rb,
102
+ lib/inversion/template/containertag.rb,
103
+ lib/inversion/template/defaulttag.rb,
104
+ lib/inversion/template/elsetag.rb,
105
+ lib/inversion/template/elsiftag.rb,
106
+ lib/inversion/template/endtag.rb,
107
+ lib/inversion/template/escapetag.rb,
108
+ lib/inversion/template/fortag.rb,
109
+ lib/inversion/template/importtag.rb,
110
+ lib/inversion/template/includetag.rb,
111
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
112
+ lib/inversion/template/publishtag.rb,
113
+ lib/inversion/template/rescuetag.rb, lib/inversion/template/tag.rb,
114
+ lib/inversion/template/textnode.rb,
115
+ lib/inversion/template/timedeltatag.rb,
116
+ lib/inversion/template/uriencodetag.rb, lib/inversion/tilt.rb,
117
+ lib/inversion/utils.rb,
118
+ spec/inversion/template/timedeltatag_spec.rb:
119
+ Documentation cleanup, remove some leftover YARD crap
120
+ [4876bcc91507]
121
+
122
+ * spec/inversion/renderstate_spec.rb, spec/inversion/template_spec.rb:
123
+ Fixed a few things caused by changes for the begin/rescue tag.
124
+ [1a698b24bc45]
125
+
126
+ * README.md, experiments/templates/demo-content.tmpl,
127
+ lib/inversion/renderstate.rb, lib/inversion/template/begintag.rb,
128
+ lib/inversion/template/defaulttag.rb,
129
+ lib/inversion/template/elsetag.rb,
130
+ lib/inversion/template/rescuetag.rb,
131
+ spec/inversion/renderstate_spec.rb,
132
+ spec/inversion/template/begintag_spec.rb,
133
+ spec/inversion/template/rescuetag_spec.rb:
134
+ Add the begin/rescue tags.
135
+ [44db647d7a1a]
136
+
137
+ 2011-07-20 Michael Granger <ged@FaerieMUD.org>
138
+
139
+ * lib/inversion/mixins.rb, lib/inversion/utils.rb:
140
+ Merging ANSIColor methods into the ColorLogFormatter, which was the
141
+ only place the code was used.
142
+ [fb8c209aaa28]
143
+
144
+ 2011-07-20 Mahlon E. Smith <mahlon@martini.nu>
145
+
146
+ * experiments/demo.rb, experiments/templates/demo-content.tmpl,
147
+ experiments/templates/demo-layout.tmpl,
148
+ lib/inversion/renderstate.rb, lib/inversion/template/attrtag.rb,
149
+ lib/inversion/template/defaulttag.rb,
150
+ spec/inversion/template/defaulttag_spec.rb:
151
+ Adding the 'default' tag
152
+ [f95e6a8167c6]
153
+
154
+ 2011-07-18 Michael Granger <ged@FaerieMUD.org>
155
+
156
+ * Manifest.txt, README.md, lib/inversion/renderstate.rb,
157
+ lib/inversion/template.rb, lib/inversion/template/yieldtag.rb,
158
+ spec/inversion/renderstate_spec.rb,
159
+ spec/inversion/template/yieldtag_spec.rb,
160
+ spec/inversion/template_spec.rb:
161
+ Adding a 'yield' tag
162
+ [3f7a7fb440b8]
163
+
164
+ 2011-07-13 Michael Granger <ged@FaerieMUD.org>
165
+
166
+ * lib/inversion/template/timedeltatag.rb,
167
+ spec/inversion/template/timedeltatag_spec.rb:
168
+ Fixed the timedelta specs for machines without modern timezones (I
169
+ think). This should fix the FreeBSD build.
170
+ [5c2b595a1e35]
171
+
172
+ * experiments/demo.rb, experiments/templates/demo-content.tmpl,
173
+ experiments/templates/demo-layout.tmpl, experiments/templates/demo-
174
+ menu.tmpl:
175
+ Adding a demo to experiments/
176
+ [b1b3b7895982]
177
+
178
+ * README.md:
179
+ Updating the README
180
+ [50ff925706ee]
181
+
182
+ * lib/inversion/template/iftag.rb:
183
+ Fixed in bug in the 'if' tag that caused conditional nodes to be
184
+ double-appended, the second time as a stringified array
185
+ [6485006e82d9]
186
+
187
+ * lib/inversion/renderstate.rb:
188
+ Squelched some spammy debugging
189
+ [0f134e004f34]
190
+
191
+ * lib/inversion/template/timedeltatag.rb,
192
+ spec/inversion/template/timedeltatag_spec.rb:
193
+ Added the 'timedelta' tag.
194
+ [ab8e5eb37b44]
195
+
196
+ 2011-07-12 Michael Granger <ged@FaerieMUD.org>
197
+
198
+ * lib/inversion/template/iftag.rb,
199
+ spec/inversion/template/iftag_spec.rb:
200
+ Fixing a bug in the 'if' tag that caused renderstate to recursively
201
+ try to stringify itself.
202
+ [106d0d6bd2e1]
203
+
204
+ * lib/inversion/renderstate.rb:
205
+ Adding Inversion::RenderState#inspect and fixing a debug log message
206
+ [b58a659fc93b]
207
+
208
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
209
+
210
+ * .hgignore:
211
+ Add the package directory to the ignorefile
212
+ [50b33db61aad]
213
+
214
+ * Manifest.txt, bin/inversion:
215
+ Adding a command-line template-API tool
216
+ [b2dbb3f0f286]
217
+
218
+ * Manifest.txt:
219
+ Remove accidentally-committed manifest changes from pending patches.
220
+ [e387d6954154]
221
+
222
+ 2011-07-11 Mahlon E. Smith <mahlon@martini.nu>
223
+
224
+ * lib/inversion/template.rb, lib/inversion/template/textnode.rb,
225
+ spec/inversion/template/textnode_spec.rb,
226
+ spec/inversion/template_spec.rb:
227
+ Adding code to strip extra blank lines from output
228
+ [2ad072cd87ab]
229
+
230
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
231
+
232
+ * lib/inversion/template/attrtag.rb,
233
+ lib/inversion/template/escapetag.rb, lib/inversion/template/node.rb,
234
+ lib/inversion/template/pptag.rb,
235
+ lib/inversion/template/uriencodetag.rb,
236
+ spec/inversion/template/configtag_spec.rb:
237
+ Make Inversion::Template::Node#render consistently take a
238
+ RenderState argument across all tags.
239
+ [15857a26de10]
240
+
241
+ * lib/inversion/template/uriencodetag.rb,
242
+ spec/inversion/template/uriencodetag_spec.rb:
243
+ Fixed a bug in the uriencode tag for non-string attributes.
244
+ [fe52500a302b]
245
+
246
+ 2011-07-11 Mahlon E. Smith <mahlon@martini.nu>
247
+
248
+ * lib/inversion/template/parser.rb,
249
+ spec/inversion/template/parser_spec.rb:
250
+ Converted parser to use String#scan instead of StringScanner to make
251
+ dealing with encoding issues easier
252
+ [f16cd5fc4255]
253
+
254
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
255
+
256
+ * lib/inversion/template/tag.rb:
257
+ Bugfix for Inversion::Template::Tag#as_comment_body for tags with
258
+ null bodies.
259
+ [5579ca88f7ac]
260
+
261
+ * Manifest.txt:
262
+ Updating the Manifest
263
+ [f2b67bf8db76]
264
+
265
+ 2011-07-08 Michael Granger <ged@FaerieMUD.org>
266
+
267
+ * experiments/benchmark-parser.rb:
268
+ Adding a little parser-benchmarking utility. Just point it at a
269
+ directory full of *.tmpl template files.
270
+ [06af47a12ed6]
271
+
272
+ * .hgignore, Rakefile, spec/lib/helpers.rb:
273
+ Rakefile cleanup/separate coverage from specs
274
+ - Remove all the release stuff from the Rakefile that's already in
275
+ hoe-deveiate.
276
+ - Add a 'coverage' task to enable coverage generation so it doesn't
277
+ get run by default.
278
+ [cc53d24b4c56]
279
+
280
+ 2011-07-07 Michael Granger <ged@FaerieMUD.org>
281
+
282
+ * lib/inversion/template/attrtag.rb,
283
+ spec/inversion/template/attrtag_spec.rb:
284
+ Adding format syntax to attr with a methodchain
285
+ [739dfd64abba]
286
+
287
+ * lib/inversion/template/parser.rb:
288
+ Cleaned up parser logging
289
+ [1799cab39156]
290
+
291
+ 2011-07-07 Mahlon E. Smith <mahlon@martini.nu>
292
+
293
+ * spec/lib/helpers.rb:
294
+ Add SimpleCov to the Rakefile.
295
+ [9d871bbfa95d] [github/master]
296
+
297
+ 2011-07-07 Michael Granger <ged@FaerieMUD.org>
298
+
299
+ * lib/inversion/template/elsetag.rb,
300
+ spec/inversion/template/elsetag_spec.rb:
301
+ Fix the ElseTag constructor so it handles creation from the parser.
302
+ [3d53a4f4a2b4]
303
+
304
+ * lib/inversion/template/tag.rb, spec/inversion/template/tag_spec.rb:
305
+ Fixing a bug in Inversion::Template::Tag.create when given an
306
+ illegal tagname.
307
+ [75b323c6bc84]
308
+
309
+ 2011-07-06 Michael Granger <ged@FaerieMUD.org>
310
+
311
+ * Merged with b822cc9b6ff2
312
+ [f46b1ff133cd]
313
+
314
+ * .hgignore, README.md, Rakefile, lib/inversion.rb,
315
+ lib/inversion/monkeypatches.rb, lib/inversion/renderstate.rb,
316
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
317
+ lib/inversion/template/codetag.rb,
318
+ lib/inversion/template/conditionaltag.rb,
319
+ lib/inversion/template/configtag.rb,
320
+ lib/inversion/template/containertag.rb,
321
+ lib/inversion/template/elsetag.rb,
322
+ lib/inversion/template/elsiftag.rb,
323
+ lib/inversion/template/endtag.rb, lib/inversion/template/iftag.rb,
324
+ lib/inversion/template/importtag.rb,
325
+ lib/inversion/template/includetag.rb,
326
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
327
+ lib/inversion/template/publishtag.rb,
328
+ lib/inversion/template/subscribetag.rb,
329
+ lib/inversion/template/tag.rb, lib/inversion/template/unlesstag.rb,
330
+ spec/inversion/renderstate_spec.rb,
331
+ spec/inversion/template/attrtag_spec.rb,
332
+ spec/inversion/template/endtag_spec.rb,
333
+ spec/inversion/template/iftag_spec.rb,
334
+ spec/inversion/template/includetag_spec.rb,
335
+ spec/inversion/template/node_spec.rb,
336
+ spec/inversion/template/parser_spec.rb,
337
+ spec/inversion/template/publishtag_spec.rb,
338
+ spec/inversion/template/subscribetag_spec.rb,
339
+ spec/inversion/template/tag_spec.rb,
340
+ spec/inversion/template/unlesstag_spec.rb,
341
+ spec/inversion/template_spec.rb, spec/lib/helpers.rb:
342
+ Adding publish/subscribe.
343
+ - Replaces import/export.
344
+ - De-Yarded.
345
+ - Load monkeypatches from the top level.
346
+ - Inversion::RenderState
347
+ * Made it heirarchical to provide access to enclosing template state
348
+ from tags during rendering.
349
+ * Added pub/sub support via #publish and #subscribe methods.
350
+ * Pulled a bunch of rendering logic out of Template.
351
+ * Deferred stringification until the last possible moment for nodes
352
+ that need to hang around until the very end of rendering.
353
+ * Allow the render destination to be overridden for a block.
354
+ * Pulled subtemplate (or any delegated) rendering up out of AttrTag
355
+ - Made the logic in Inversion::Template::ContainerTag/Inversion::Templ
356
+ ate::ConditionalTag more consistent.
357
+ - Extract non-general rendering logic from ConditionalTag into
358
+ IfTag/UnlessTag.
359
+ - Changed #before_append/#after_append to *_appending to be more
360
+ consistent with #before_/#after_rendering
361
+ - Added a yield to ContainerTag's #initialize for prettier node-tree
362
+ building.
363
+ - Pulled subtemplate loading from IncludeTag up into
364
+ Inversion::Parser::State so it can be used by other tags.
365
+ - Pulled container-closing up into EndTag.
366
+ - Inversion::Template::Tag's constructor now strips the body.
367
+ - Add SimpleCov coverage ()
368
+ [4d7a94c4cf02]
369
+
370
+ 2011-07-05 Mahlon E. Smith <mahlon@martini.nu>
371
+
372
+ * lib/inversion/template/pptag.rb, spec/inversion/mixins_spec.rb,
373
+ spec/inversion/template/pptag_spec.rb:
374
+ Heh, added the pp tag and mixin spec files back from changeset
375
+ 5d244064e631. Whoops.
376
+ [b822cc9b6ff2]
377
+
378
+ 2011-07-05 Michael Granger <ged@FaerieMUD.org>
379
+
380
+ * Rakefile, lib/inversion/sinatra.rb, lib/inversion/tilt.rb,
381
+ spec/data/sinatra/hello.inversion, spec/inversion/sinatra_spec.rb,
382
+ spec/inversion/tilt_spec.rb:
383
+ Adding support for Sinatra.
384
+ [a4d57edad888]
385
+
386
+ * lib/inversion/template.rb, lib/inversion/template/tag.rb:
387
+ Fixed some shadowed variable warnings.
388
+ [5c326f09c56e]
389
+
390
+ * Rakefile, experiments/tilt-test.tmpl, lib/inversion/tilt.rb,
391
+ spec/inversion/tilt_spec.rb:
392
+ Adding Tilt (https://github.com/rtomayko/tilt) support
393
+ [e414459913e5]
394
+
395
+ 2011-06-29 Michael Granger <ged@FaerieMUD.org>
396
+
397
+ * spec/inversion/template_spec.rb:
398
+ Fix omitted spec from the import tag commit
399
+ [5c8fe7fdc063]
400
+
401
+ * lib/inversion/template/importtag.rb:
402
+ Downgrade accidentally-committed error-level debugging messages
403
+ [6c0a7d914dc2]
404
+
405
+ * lib/inversion/template.rb, lib/inversion/template/importtag.rb,
406
+ spec/inversion/template/importtag_spec.rb,
407
+ spec/inversion/template_spec.rb:
408
+ Added the 'import' tag
409
+ [1ff17b49fb92]
410
+
411
+ 2011-06-27 Michael Granger <ged@FaerieMUD.org>
412
+
413
+ * lib/inversion/template.rb, spec/inversion/template_spec.rb:
414
+ Aliased Inversion::Template#render to #to_s
415
+ [0fdad3807675]
416
+
417
+ 2011-06-27 Mahlon E. Smith <mahlon@martini.nu>
418
+
419
+ * lib/inversion/template/attrtag.rb,
420
+ spec/inversion/template/attrtag_spec.rb:
421
+ Added before_rendering/after_rendering hooks to the attr tag
422
+ [25cef559d995]
423
+
424
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
425
+
426
+ * README.md, lib/inversion/template/conditionaltag.rb,
427
+ lib/inversion/template/elsetag.rb,
428
+ lib/inversion/template/elsiftag.rb, lib/inversion/template/iftag.rb,
429
+ lib/inversion/template/parser.rb,
430
+ lib/inversion/template/unlesstag.rb,
431
+ spec/inversion/renderstate_spec.rb,
432
+ spec/inversion/template/elsetag_spec.rb,
433
+ spec/inversion/template/elsiftag_spec.rb,
434
+ spec/inversion/template/iftag_spec.rb,
435
+ spec/inversion/template/parser_spec.rb,
436
+ spec/inversion/template/unlesstag_spec.rb:
437
+ Added conditional flow-control tags: if, elsif, else, unless.
438
+ [75f89b3b112e]
439
+
440
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
441
+
442
+ * lib/inversion/template/attrtag.rb,
443
+ spec/inversion/template/attrtag_spec.rb:
444
+ Make attr tags not stringify their rendered values so overridding
445
+ implementations of #render can decide for themselves what to do
446
+ [f8bf76e02432]
447
+
448
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
449
+
450
+ * lib/inversion/template/attrtag.rb, lib/inversion/template/fortag.rb,
451
+ spec/inversion/template/attrtag_spec.rb:
452
+ Consistency fixes for debugging comment output
453
+ [5345b7293d41]
454
+
455
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
456
+
457
+ * lib/inversion/template/endtag.rb,
458
+ spec/inversion/template/endtag_spec.rb:
459
+ Made end tag less special-case-ey, and added rendering as a comment
460
+ so container tags have opening and closing debugging comments
461
+ [74eef2dfaf25]
462
+
463
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
464
+
465
+ * lib/inversion/template/attrtag.rb,
466
+ spec/inversion/template/attrtag_spec.rb:
467
+ Rendered values of false are now returned as false instead of the
468
+ string 'false'
469
+ [7496f1b5840d]
470
+
471
+ * lib/inversion/renderstate.rb, spec/inversion/renderstate_spec.rb:
472
+ Changed the RenderState's attribute-accessor proxy method to be more
473
+ flexible
474
+ [a413d2252282]
475
+
476
+ * lib/inversion/template/fortag.rb,
477
+ spec/inversion/template/fortag_spec.rb:
478
+ Fixed 'for' in the case where the enumerated attribute isn't set
479
+ [da438e56caef]
480
+
481
+ * spec/inversion/template/calltag_spec.rb.orig:
482
+ Remove accidentally-committed .orig file
483
+ [039d8134bd10]
484
+
485
+ * lib/inversion/template/fortag.rb,
486
+ spec/inversion/template/fortag_spec.rb:
487
+ Fix bug in the 'for' tag
488
+ [fa20b04ea505]
489
+
490
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
491
+
492
+ * lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
493
+ lib/inversion/template/calltag.rb,
494
+ lib/inversion/template/escapetag.rb,
495
+ lib/inversion/template/iftag.rb, lib/inversion/template/node.rb,
496
+ lib/inversion/template/uriencodetag.rb,
497
+ spec/inversion/renderstate_spec.rb,
498
+ spec/inversion/template/attrtag_spec.rb,
499
+ spec/inversion/template/calltag_spec.rb,
500
+ spec/inversion/template/configtag_spec.rb,
501
+ spec/inversion/template/iftag_spec.rb:
502
+ Adding 'if' tag.
503
+ - Combined 'code' and 'attr' tags; code is now just an alias for
504
+ 'attr'.
505
+ - Changed the API of Inversion::Template::Node#render to defer
506
+ stringification of the tag's value to Inversion::Template#render
507
+ instead of doing it itself. This makes #render easier to super to
508
+ for purposes other than rendered output (e.g., logical tags,
509
+ introspection).
510
+ - Added Inversion::Template::IfTag and spec.
511
+ [282f18320a55]
512
+
513
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
514
+
515
+ * README.md:
516
+ Added/updated tags
517
+ [6b7ea4c5c4d8]
518
+
519
+ 2011-06-22 Michael Granger <ged@faerieMUD.org>
520
+
521
+ * README.md, lib/inversion/mixins.rb,
522
+ lib/inversion/template/escapetag.rb:
523
+ Added the pp tag; factored out escaping as a mixin so it can be
524
+ applied to multiple tags.
525
+ [5d244064e631]
526
+
527
+ 2011-06-22 Mahlon E. Smith <mahlon@martini.nu>
528
+
529
+ * lib/inversion/template/uriencodetag.rb,
530
+ spec/inversion/template/uriencodetag_spec.rb:
531
+ Add the <?uriencode ... ?> tag.
532
+ [a149dfdf20d4]
533
+
534
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
535
+
536
+ * README.md, lib/inversion/template.rb,
537
+ lib/inversion/template/escapetag.rb,
538
+ spec/inversion/template/escapetag_spec.rb:
539
+ Added the <?escape ... ?> tag, currently just supporting HTML
540
+ escaping.
541
+ [0c06f24416bc]
542
+
543
+ 2011-06-20 Michael Granger <ged@FaerieMUD.org>
544
+
545
+ * spec/inversion/template/includetag_spec.rb:
546
+ Rearranged include tag specs
547
+ [3bfb053c8dcb]
548
+
549
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
550
+
551
+ * lib/inversion/template/codetag.rb:
552
+ Changed tag-pattern methods to support runtime inheritance
553
+ [a1e3fc29efae]
554
+
555
+ 2011-06-20 Michael Granger <ged@FaerieMUD.org>
556
+
557
+ * README.md:
558
+ Updated README
559
+ [d44d7db1901a]
560
+
561
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
562
+
563
+ * Rakefile, spec/lib/helpers.rb:
564
+ Updated the deprecated "Rspec" constant to "RSpec".
565
+ [3bb4dbe2439a]
566
+
567
+ * lib/inversion/exceptions.rb, lib/inversion/template.rb,
568
+ lib/inversion/template/configtag.rb,
569
+ lib/inversion/template/includetag.rb,
570
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
571
+ lib/inversion/template/tag.rb,
572
+ spec/inversion/template/includetag_spec.rb,
573
+ spec/inversion/template/node_spec.rb,
574
+ spec/inversion/template/parser_spec.rb,
575
+ spec/inversion/template_spec.rb:
576
+ Added the <?include ...?> tag.
577
+ [bb7a010fc3c9]
578
+
579
+ 2011-06-17 Mahlon E. Smith <mahlon@martini.nu>
580
+
581
+ * lib/inversion/template.rb, lib/inversion/template/configtag.rb,
582
+ spec/inversion/template_spec.rb:
583
+ Untaint template contents if read from a file.
584
+ [daab04896e58]
585
+
586
+ * lib/inversion/template/configtag.rb,
587
+ spec/inversion/template/configtag_spec.rb:
588
+ Forgot to add the config files to the repo! :)
589
+ [390eb0a3a6e4]
590
+
591
+ * README.md, lib/inversion/mixins.rb, lib/inversion/renderstate.rb,
592
+ lib/inversion/template.rb, lib/inversion/template/node.rb,
593
+ lib/inversion/template/parser.rb,
594
+ spec/inversion/renderstate_spec.rb,
595
+ spec/inversion/template/node_spec.rb,
596
+ spec/inversion/template/parser_spec.rb,
597
+ spec/inversion/template_spec.rb:
598
+ - Added the <?config ?> tag.
599
+ - Changed the config variable 'raise_on_unknown' to
600
+ 'ignore_unknown_tags'.
601
+ - Added options to the renderstate and parserstate, so the config tag
602
+ can override.
603
+ - Added #on_append to the Node class, so nodes have an opportunity to
604
+ modify the parse state as they are being parsed.
605
+ [cacdac743e2f]
606
+
607
+ 2011-06-15 Michael Granger <ged@FaerieMUD.org>
608
+
609
+ * lib/inversion/exceptions.rb, lib/inversion/template.rb,
610
+ spec/inversion/template_spec.rb:
611
+ Adding configurable exception-handling to the render phase
612
+ [f336e4928b34]
613
+
614
+ * lib/inversion/template/parser.rb:
615
+ Fixing bug in construction of trailing text node in
616
+ Inversion::Template::Parser
617
+ [1eba061a9a82]
618
+
619
+ * lib/inversion/renderstate.rb, spec/inversion/renderstate_spec.rb:
620
+ Use Object#clone instead of #dup to preserve frozen-ness and
621
+ singleton methods on attribute objects
622
+ [9020a2fc1db5]
623
+
624
+ * lib/inversion/template/commenttag.rb,
625
+ spec/inversion/template/commenttag_spec.rb:
626
+ Adding a comment tag
627
+ [9259443da186]
628
+
629
+ * lib/inversion/template/node.rb:
630
+ Added linnum and colnum readers to Inversion::Template::Node
631
+ [e35d429943ca]
632
+
633
+ * spec/inversion/template/fortag_spec.rb:
634
+ Aesthetic naming fix
635
+ [0b6afb5de2bf]
636
+
637
+ * lib/inversion/renderstate.rb, lib/inversion/template.rb,
638
+ lib/inversion/template/attrtag.rb,
639
+ lib/inversion/template/calltag.rb, lib/inversion/template/fortag.rb,
640
+ lib/inversion/template/node.rb, spec/inversion/renderstate_spec.rb,
641
+ spec/inversion/template/calltag_spec.rb.orig,
642
+ spec/inversion/template/fortag_spec.rb,
643
+ spec/inversion/template_spec.rb:
644
+ Adding state to nodes, for attribute overlay
645
+ [d5a4256b2252]
646
+
647
+ 2011-06-08 Mahlon E. Smith <mahlon@martini.nu>
648
+
649
+ * .hgignore, lib/inversion/template.rb,
650
+ lib/inversion/template/attrtag.rb,
651
+ lib/inversion/template/calltag.rb,
652
+ lib/inversion/template/codetag.rb, lib/inversion/template/fortag.rb,
653
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
654
+ lib/inversion/template/tag.rb, lib/inversion/template/textnode.rb,
655
+ spec/inversion/template/node_spec.rb,
656
+ spec/inversion/template/parser_spec.rb,
657
+ spec/inversion/template/tag_spec.rb,
658
+ spec/inversion/template_spec.rb:
659
+ Add parse state information to tag objects for improved error
660
+ reporting. (Line numbers, column number, file name.)
661
+ [6cb1f242e538]
662
+
663
+ 2011-06-03 Mahlon E. Smith <mahlon@martini.nu>
664
+
665
+ * README.md, lib/inversion/mixins.rb, lib/inversion/template.rb,
666
+ lib/inversion/template/containertag.rb,
667
+ lib/inversion/template/endtag.rb, lib/inversion/template/fortag.rb,
668
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
669
+ lib/inversion/template/tag.rb,
670
+ spec/inversion/template/containertag_spec.rb,
671
+ spec/inversion/template/node_spec.rb,
672
+ spec/inversion/template/parser_spec.rb:
673
+ Add scoping to the template parser.
674
+ [eca7f0156079]
675
+
676
+ 2011-06-01 Mahlon E. Smith <mahlon@martini.nu>
677
+
678
+ * lib/inversion/template/fortag.rb,
679
+ spec/inversion/template/fortag_spec.rb:
680
+ Adding initial implementation of the "for" tag
681
+ [618d9df5f550]
682
+
683
+ 2011-05-27 Mahlon E. Smith <mahlon@martini.nu>
684
+
685
+ * lib/inversion/monkeypatches.rb, lib/inversion/template/codetag.rb,
686
+ spec/inversion/monkeypatches_spec.rb:
687
+ Splitting out monkeypatches into a separate file
688
+ [6ac7016be589]
689
+
690
+ * Rakefile, lib/inversion/template/calltag.rb,
691
+ lib/inversion/template/codetag.rb,
692
+ spec/inversion/template/calltag_spec.rb:
693
+ Adding 'call' tag parsing and evaluation
694
+ [9d22efa61e28]
695
+
696
+ 2011-05-11 Michael Granger <ged@FaerieMUD.org>
697
+
698
+ * .rvmrc, README.md, lib/inversion.rb, lib/inversion/template.rb,
699
+ lib/inversion/template/attrtag.rb,
700
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
701
+ lib/inversion/template/parser.rb, lib/inversion/template/tag.rb,
702
+ lib/inversion/template/textnode.rb,
703
+ spec/inversion/template/attrtag_spec.rb,
704
+ spec/inversion/template/node_spec.rb,
705
+ spec/inversion/template/tag_spec.rb,
706
+ spec/inversion/template/textnode_spec.rb,
707
+ spec/inversion/template_spec.rb:
708
+ More work:
709
+ * Reworked the README to introduce what Inversion *is* first, rather
710
+ than starting off by explaining what it's *not*. Also: funny
711
+ examples.
712
+ * Added Configurability support.
713
+ * Added output-comment debugging.
714
+ [e82a185289d3]
715
+
716
+ 2011-04-27 Michael Granger <ged@FaerieMUD.org>
717
+
718
+ * lib/inversion/template/attrtag.rb,
719
+ spec/inversion/template/attrtag_spec.rb:
720
+ Got attribute rendering working.
721
+ [94ec90e08413]
722
+
723
+ * README.md:
724
+ Adding some tentative tag ideas to the README
725
+ [ee74ef4f58f0]
726
+
727
+ 2011-04-15 Michael Granger <ged@FaerieMUD.org>
728
+
729
+ * README.md, Rakefile, experiments/dumptemplate.rb,
730
+ lib/inversion/template.rb, lib/inversion/template/parser.rb,
731
+ lib/inversion/template/textnode.rb,
732
+ spec/inversion/template/parser_spec.rb,
733
+ spec/inversion/template_spec.rb:
734
+ New features:
735
+ * Inversion::Template:
736
+ - Added a ::load method for loading template by path.
737
+ * Inversion::Template::Parser:
738
+ - Added options
739
+ - Added option for raising an exception on an unknown tag
740
+ * Renamed TextNode#source to #body for consistency
741
+ * Added the beginnings of a command-line utility for dumping the
742
+ node tree of a template
743
+ [3ced66ae330d]
744
+
745
+ 2011-04-13 Michael Granger <ged@FaerieMUD.org>
746
+
747
+ * experiments/custom_enumerator.rb, experiments/pi_to_methods.rb,
748
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
749
+ lib/inversion/template/calltag.rb,
750
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
751
+ lib/inversion/template/textnode.rb, spec/inversion/template_spec.rb:
752
+ Added rendering, template attributes, attribute accessors
753
+ [1ad1e0c91065]
754
+
755
+ 2011-04-12 Michael Granger <ged@FaerieMUD.org>
756
+
757
+ * README.md:
758
+ Adding Mahlon to the copyright statement in the README
759
+ [7753d3c9b470]
760
+
761
+ * README.md, Rakefile:
762
+ Merged with dc16cc877dfc, updated README
763
+ [0fdf3122bf7c]
764
+
765
+ 2011-04-06 Michael Granger <ged@FaerieMUD.org>
766
+
767
+ * .irbrc, Rakefile, experiments/ripper_spike.rb, lib/inversion.rb,
768
+ lib/inversion/exceptions.rb, lib/inversion/mixins.rb,
769
+ lib/inversion/template.rb, lib/inversion/template/attr_tag.rb,
770
+ lib/inversion/template/attrtag.rb,
771
+ lib/inversion/template/calltag.rb,
772
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
773
+ lib/inversion/template/parser.rb, lib/inversion/template/tag.rb,
774
+ lib/inversion/template/textnode.rb, lib/inversion/utils.rb,
775
+ spec/inversion/template/attr_tag_spec.rb,
776
+ spec/inversion/template/attrtag_spec.rb,
777
+ spec/inversion/template/calltag_spec.rb,
778
+ spec/inversion/template/codetag_spec.rb,
779
+ spec/inversion/template/node_spec.rb,
780
+ spec/inversion/template/parser_spec.rb,
781
+ spec/inversion/template/tag_spec.rb,
782
+ spec/inversion/template/textnode_spec.rb,
783
+ spec/inversion/template_spec.rb, spec/inversion_spec.rb,
784
+ spec/lib/constants.rb, spec/lib/helpers.rb:
785
+ Adding parsed tag bodies.
786
+ [dc16cc877dfc]
787
+
788
+ 2011-03-18 Michael Granger <ged@FaerieMUD.org>
789
+
790
+ * Merging with b50fef00621b
791
+ [861b21a30656]
792
+
793
+ * lib/inversion.rb:
794
+ Clearing Revision tag
795
+ [cdacb5f98f93]
796
+
797
+ 2011-02-07 Mahlon E. Smith <mahlon@martini.nu>
798
+
799
+ * lib/inversion/template.rb, lib/inversion/template/attr_tag.rb,
800
+ lib/inversion/template/tag.rb,
801
+ spec/inversion/template/attr_tag_spec.rb,
802
+ spec/inversion/template/tag_spec.rb,
803
+ spec/inversion/template_spec.rb:
804
+ Checkpoint, fleshing out Tags.
805
+ [4a4fc3f1dc14]
806
+
807
+ 2011-04-12 Michael Granger <ged@FaerieMUD.org>
808
+
809
+ * README.md, experiments/erb_scope_bleed.rb:
810
+ Fleshing out the README, adding scope-bleedover example
811
+ [f44b597af8bd]
812
+
813
+ * lib/inversion.rb:
814
+ Removing checked-in revision value
815
+ [773feca505b8]
816
+
817
+ 2011-02-07 Mahlon E. Smith <mahlon@martini.nu>
818
+
819
+ * lib/inversion.rb, lib/inversion/template.rb,
820
+ spec/inversion/template_spec.rb, spec/inversion_spec.rb:
821
+ Totally awesome templating system DONE. Now: profit!
822
+ [b50fef00621b]
823
+
824
+ 2011-02-04 Mahlon E. Smith <mahlon@martini.nu>
825
+
826
+ * experiments/pi_to_methods.rb, experiments/ripper_spike.rb,
827
+ lib/inversion.rb:
828
+ Added experiments
829
+ [77d6892cd988]
830
+
831
+ 2011-02-02 Mahlon E. Smith <mahlon@martini.nu>
832
+
833
+ * .hgignore, .rvmrc, History.md, Manifest.txt, README.md, Rakefile,
834
+ lib/inversion.rb, spec/inversion_spec.rb:
835
+ Project setup.
836
+ [1020dbbfb52c]