retter 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. data/.travis.yml +1 -1
  2. data/ChangeLog.md +10 -0
  3. data/README.md +1 -3
  4. data/bin/retter +8 -4
  5. data/lib/retter/binder.rb +50 -0
  6. data/lib/retter/command.rb +42 -39
  7. data/lib/retter/config.rb +24 -23
  8. data/lib/retter/entries.rb +14 -18
  9. data/lib/retter/entry.rb +52 -29
  10. data/lib/retter/generator/base.rb +6 -7
  11. data/lib/retter/generator/skel/Gemfile +1 -2
  12. data/lib/retter/generator/skel/Retterfile +2 -2
  13. data/lib/retter/generator/skel/layouts/article.html.haml +3 -2
  14. data/lib/retter/generator/skel/layouts/entry.html.haml +3 -2
  15. data/lib/retter/generator/skel/layouts/index.html.haml +4 -2
  16. data/lib/retter/generator.rb +0 -1
  17. data/lib/retter/{renderers.rb → markdown.rb} +22 -1
  18. data/lib/retter/page/article.rb +54 -0
  19. data/lib/retter/page/base.rb +97 -0
  20. data/lib/retter/page/entries.rb +17 -0
  21. data/lib/retter/page/entry.rb +46 -0
  22. data/lib/retter/page/feed.rb +63 -0
  23. data/lib/retter/page/index.rb +17 -0
  24. data/lib/retter/page/profile.rb +17 -0
  25. data/lib/retter/page/view_helper.rb +9 -1
  26. data/lib/retter/page.rb +22 -74
  27. data/lib/retter/preprint.rb +19 -10
  28. data/lib/retter/version.rb +1 -1
  29. data/lib/retter.rb +41 -29
  30. data/retter.gemspec +44 -53
  31. data/spec/command/callback_spec.rb +16 -6
  32. data/spec/command/clean_spec.rb +20 -0
  33. data/spec/command/commit_spec.rb +11 -12
  34. data/spec/command/edit_spec.rb +28 -38
  35. data/spec/command/list_spec.rb +4 -4
  36. data/spec/command/open_spec.rb +2 -2
  37. data/spec/command/preview_spec.rb +7 -12
  38. data/spec/command/rebind_spec.rb +143 -66
  39. data/spec/spec_helper.rb +10 -3
  40. data/spec/support/example_group_helper.rb +55 -15
  41. data/spec/support/matchers.rb +0 -1
  42. metadata +195 -78
  43. data/lib/retter/generator/updator.rb +0 -7
  44. data/lib/retter/pages/article.rb +0 -41
  45. data/lib/retter/pages/entries.rb +0 -15
  46. data/lib/retter/pages/entry.rb +0 -35
  47. data/lib/retter/pages/feed.rb +0 -51
  48. data/lib/retter/pages/index.rb +0 -15
  49. data/lib/retter/pages/profile.rb +0 -15
  50. data/lib/retter/pages.rb +0 -77
  51. data/spec/command/invoke_after_spec.rb +0 -29
  52. data/spec/fixtures/sample.md +0 -295
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: retter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,22 +10,27 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-03-25 00:00:00.000000000 Z
13
+ date: 2012-07-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: thor
17
- requirement: &2254844860 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
21
21
  - !ruby/object:Gem::Version
22
- version: 0.14.6
22
+ version: 0.15.2
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2254844860
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: 0.15.2
26
31
  - !ruby/object:Gem::Dependency
27
32
  name: builder
28
- requirement: &2254844340 !ruby/object:Gem::Requirement
33
+ requirement: !ruby/object:Gem::Requirement
29
34
  none: false
30
35
  requirements:
31
36
  - - ! '>='
@@ -33,109 +38,159 @@ dependencies:
33
38
  version: 3.0.0
34
39
  type: :runtime
35
40
  prerelease: false
36
- version_requirements: *2254844340
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: 3.0.0
37
47
  - !ruby/object:Gem::Dependency
38
48
  name: redcarpet
39
- requirement: &2254843860 !ruby/object:Gem::Requirement
49
+ requirement: !ruby/object:Gem::Requirement
40
50
  none: false
41
51
  requirements:
42
52
  - - ! '>='
43
53
  - !ruby/object:Gem::Version
44
- version: 2.0.0b3
54
+ version: 2.1.1
45
55
  type: :runtime
46
56
  prerelease: false
47
- version_requirements: *2254843860
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: 2.1.1
48
63
  - !ruby/object:Gem::Dependency
49
64
  name: coderay
50
- requirement: &2254843380 !ruby/object:Gem::Requirement
65
+ requirement: !ruby/object:Gem::Requirement
51
66
  none: false
52
67
  requirements:
53
68
  - - ! '>='
54
69
  - !ruby/object:Gem::Version
55
- version: 0.9.8
70
+ version: 1.0.7
56
71
  type: :runtime
57
72
  prerelease: false
58
- version_requirements: *2254843380
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: 1.0.7
59
79
  - !ruby/object:Gem::Dependency
60
80
  name: pygments.rb
61
- requirement: &2254842900 !ruby/object:Gem::Requirement
81
+ requirement: !ruby/object:Gem::Requirement
62
82
  none: false
63
83
  requirements:
64
84
  - - ! '>='
65
85
  - !ruby/object:Gem::Version
66
- version: 0.2.7
86
+ version: 0.2.13
67
87
  type: :runtime
68
88
  prerelease: false
69
- version_requirements: *2254842900
89
+ version_requirements: !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ! '>='
93
+ - !ruby/object:Gem::Version
94
+ version: 0.2.13
70
95
  - !ruby/object:Gem::Dependency
71
96
  name: nokogiri
72
- requirement: &2254842420 !ruby/object:Gem::Requirement
97
+ requirement: !ruby/object:Gem::Requirement
73
98
  none: false
74
99
  requirements:
75
100
  - - ! '>='
76
101
  - !ruby/object:Gem::Version
77
- version: 1.5.0
102
+ version: 1.5.3
78
103
  type: :runtime
79
104
  prerelease: false
80
- version_requirements: *2254842420
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: 1.5.3
81
111
  - !ruby/object:Gem::Dependency
82
112
  name: launchy
83
- requirement: &2254841940 !ruby/object:Gem::Requirement
113
+ requirement: !ruby/object:Gem::Requirement
84
114
  none: false
85
115
  requirements:
86
116
  - - ! '>='
87
117
  - !ruby/object:Gem::Version
88
- version: 2.0.5
118
+ version: 2.1.0
89
119
  type: :runtime
90
120
  prerelease: false
91
- version_requirements: *2254841940
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>='
125
+ - !ruby/object:Gem::Version
126
+ version: 2.1.0
92
127
  - !ruby/object:Gem::Dependency
93
128
  name: haml
94
- requirement: &2254841460 !ruby/object:Gem::Requirement
129
+ requirement: !ruby/object:Gem::Requirement
95
130
  none: false
96
131
  requirements:
97
132
  - - ! '>='
98
133
  - !ruby/object:Gem::Version
99
- version: 3.1.3
134
+ version: 3.1.6
100
135
  type: :runtime
101
136
  prerelease: false
102
- version_requirements: *2254841460
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: 3.1.6
103
143
  - !ruby/object:Gem::Dependency
104
144
  name: tilt
105
- requirement: &2254840980 !ruby/object:Gem::Requirement
145
+ requirement: !ruby/object:Gem::Requirement
106
146
  none: false
107
147
  requirements:
108
148
  - - ! '>='
109
149
  - !ruby/object:Gem::Version
110
- version: 1.1.3
150
+ version: 1.3.3
111
151
  type: :runtime
112
152
  prerelease: false
113
- version_requirements: *2254840980
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ none: false
155
+ requirements:
156
+ - - ! '>='
157
+ - !ruby/object:Gem::Version
158
+ version: 1.3.3
114
159
  - !ruby/object:Gem::Dependency
115
160
  name: bundler
116
- requirement: &2254840500 !ruby/object:Gem::Requirement
161
+ requirement: !ruby/object:Gem::Requirement
117
162
  none: false
118
163
  requirements:
119
164
  - - ! '>='
120
165
  - !ruby/object:Gem::Version
121
- version: '1.0'
166
+ version: 1.1.4
122
167
  type: :runtime
123
168
  prerelease: false
124
- version_requirements: *2254840500
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ none: false
171
+ requirements:
172
+ - - ! '>='
173
+ - !ruby/object:Gem::Version
174
+ version: 1.1.4
125
175
  - !ruby/object:Gem::Dependency
126
176
  name: grit
127
- requirement: &2252930100 !ruby/object:Gem::Requirement
177
+ requirement: !ruby/object:Gem::Requirement
128
178
  none: false
129
179
  requirements:
130
180
  - - ! '>='
131
181
  - !ruby/object:Gem::Version
132
- version: 2.4.1
182
+ version: 2.5.0
133
183
  type: :runtime
134
184
  prerelease: false
135
- version_requirements: *2252930100
185
+ version_requirements: !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ! '>='
189
+ - !ruby/object:Gem::Version
190
+ version: 2.5.0
136
191
  - !ruby/object:Gem::Dependency
137
192
  name: chronic
138
- requirement: &2252926240 !ruby/object:Gem::Requirement
193
+ requirement: !ruby/object:Gem::Requirement
139
194
  none: false
140
195
  requirements:
141
196
  - - ! '>='
@@ -143,21 +198,31 @@ dependencies:
143
198
  version: 0.6.7
144
199
  type: :runtime
145
200
  prerelease: false
146
- version_requirements: *2252926240
201
+ version_requirements: !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ! '>='
205
+ - !ruby/object:Gem::Version
206
+ version: 0.6.7
147
207
  - !ruby/object:Gem::Dependency
148
208
  name: activesupport
149
- requirement: &2252924840 !ruby/object:Gem::Requirement
209
+ requirement: !ruby/object:Gem::Requirement
150
210
  none: false
151
211
  requirements:
152
212
  - - ! '>='
153
213
  - !ruby/object:Gem::Version
154
- version: 3.1.0
214
+ version: 3.2.5
155
215
  type: :runtime
156
216
  prerelease: false
157
- version_requirements: *2252924840
217
+ version_requirements: !ruby/object:Gem::Requirement
218
+ none: false
219
+ requirements:
220
+ - - ! '>='
221
+ - !ruby/object:Gem::Version
222
+ version: 3.2.5
158
223
  - !ruby/object:Gem::Dependency
159
224
  name: rack
160
- requirement: &70120315596620 !ruby/object:Gem::Requirement
225
+ requirement: !ruby/object:Gem::Requirement
161
226
  none: false
162
227
  requirements:
163
228
  - - ! '>='
@@ -165,10 +230,15 @@ dependencies:
165
230
  version: 1.4.1
166
231
  type: :runtime
167
232
  prerelease: false
168
- version_requirements: *70120315596620
233
+ version_requirements: !ruby/object:Gem::Requirement
234
+ none: false
235
+ requirements:
236
+ - - ! '>='
237
+ - !ruby/object:Gem::Version
238
+ version: 1.4.1
169
239
  - !ruby/object:Gem::Dependency
170
240
  name: i18n
171
- requirement: &70120315596140 !ruby/object:Gem::Requirement
241
+ requirement: !ruby/object:Gem::Requirement
172
242
  none: false
173
243
  requirements:
174
244
  - - ! '>='
@@ -176,10 +246,15 @@ dependencies:
176
246
  version: 0.6.0
177
247
  type: :runtime
178
248
  prerelease: false
179
- version_requirements: *70120315596140
249
+ version_requirements: !ruby/object:Gem::Requirement
250
+ none: false
251
+ requirements:
252
+ - - ! '>='
253
+ - !ruby/object:Gem::Version
254
+ version: 0.6.0
180
255
  - !ruby/object:Gem::Dependency
181
256
  name: rake
182
- requirement: &70120315595660 !ruby/object:Gem::Requirement
257
+ requirement: !ruby/object:Gem::Requirement
183
258
  none: false
184
259
  requirements:
185
260
  - - ! '>='
@@ -187,62 +262,108 @@ dependencies:
187
262
  version: 0.9.2
188
263
  type: :development
189
264
  prerelease: false
190
- version_requirements: *70120315595660
265
+ version_requirements: !ruby/object:Gem::Requirement
266
+ none: false
267
+ requirements:
268
+ - - ! '>='
269
+ - !ruby/object:Gem::Version
270
+ version: 0.9.2
191
271
  - !ruby/object:Gem::Dependency
192
272
  name: ir_b
193
- requirement: &70120315595180 !ruby/object:Gem::Requirement
273
+ requirement: !ruby/object:Gem::Requirement
194
274
  none: false
195
275
  requirements:
196
276
  - - ! '>='
197
277
  - !ruby/object:Gem::Version
198
- version: 1.4.0
278
+ version: 1.5.0
199
279
  type: :development
200
280
  prerelease: false
201
- version_requirements: *70120315595180
281
+ version_requirements: !ruby/object:Gem::Requirement
282
+ none: false
283
+ requirements:
284
+ - - ! '>='
285
+ - !ruby/object:Gem::Version
286
+ version: 1.5.0
202
287
  - !ruby/object:Gem::Dependency
203
288
  name: tapp
204
- requirement: &70120315594700 !ruby/object:Gem::Requirement
289
+ requirement: !ruby/object:Gem::Requirement
205
290
  none: false
206
291
  requirements:
207
292
  - - ! '>='
208
293
  - !ruby/object:Gem::Version
209
- version: 1.1.0
294
+ version: 1.3.1
210
295
  type: :development
211
296
  prerelease: false
212
- version_requirements: *70120315594700
297
+ version_requirements: !ruby/object:Gem::Requirement
298
+ none: false
299
+ requirements:
300
+ - - ! '>='
301
+ - !ruby/object:Gem::Version
302
+ version: 1.3.1
213
303
  - !ruby/object:Gem::Dependency
214
304
  name: rspec
215
- requirement: &70120315594220 !ruby/object:Gem::Requirement
305
+ requirement: !ruby/object:Gem::Requirement
216
306
  none: false
217
307
  requirements:
218
308
  - - ! '>='
219
309
  - !ruby/object:Gem::Version
220
- version: 2.6.0
310
+ version: 2.10.0
221
311
  type: :development
222
312
  prerelease: false
223
- version_requirements: *70120315594220
313
+ version_requirements: !ruby/object:Gem::Requirement
314
+ none: false
315
+ requirements:
316
+ - - ! '>='
317
+ - !ruby/object:Gem::Version
318
+ version: 2.10.0
224
319
  - !ruby/object:Gem::Dependency
225
320
  name: fuubar
226
- requirement: &70120315593740 !ruby/object:Gem::Requirement
321
+ requirement: !ruby/object:Gem::Requirement
227
322
  none: false
228
323
  requirements:
229
324
  - - ! '>='
230
325
  - !ruby/object:Gem::Version
231
- version: 0.0.6
326
+ version: 1.0.0
232
327
  type: :development
233
328
  prerelease: false
234
- version_requirements: *70120315593740
329
+ version_requirements: !ruby/object:Gem::Requirement
330
+ none: false
331
+ requirements:
332
+ - - ! '>='
333
+ - !ruby/object:Gem::Version
334
+ version: 1.0.0
235
335
  - !ruby/object:Gem::Dependency
236
336
  name: simplecov
237
- requirement: &70120315593260 !ruby/object:Gem::Requirement
337
+ requirement: !ruby/object:Gem::Requirement
338
+ none: false
339
+ requirements:
340
+ - - ! '>='
341
+ - !ruby/object:Gem::Version
342
+ version: 0.6.4
343
+ type: :development
344
+ prerelease: false
345
+ version_requirements: !ruby/object:Gem::Requirement
238
346
  none: false
239
347
  requirements:
240
348
  - - ! '>='
241
349
  - !ruby/object:Gem::Version
242
- version: 0.5.3
350
+ version: 0.6.4
351
+ - !ruby/object:Gem::Dependency
352
+ name: delorean
353
+ requirement: !ruby/object:Gem::Requirement
354
+ none: false
355
+ requirements:
356
+ - - ! '>='
357
+ - !ruby/object:Gem::Version
358
+ version: 2.0.0
243
359
  type: :development
244
360
  prerelease: false
245
- version_requirements: *70120315593260
361
+ version_requirements: !ruby/object:Gem::Requirement
362
+ none: false
363
+ requirements:
364
+ - - ! '>='
365
+ - !ruby/object:Gem::Version
366
+ version: 2.0.0
246
367
  description: Flyweight diary workflow. ruby-1.9.2 or later is required.
247
368
  email:
248
369
  - celluloid.key@gmail.com
@@ -260,6 +381,7 @@ files:
260
381
  - Rakefile
261
382
  - bin/retter
262
383
  - lib/retter.rb
384
+ - lib/retter/binder.rb
263
385
  - lib/retter/command.rb
264
386
  - lib/retter/config.rb
265
387
  - lib/retter/configurable.rb
@@ -292,40 +414,36 @@ files:
292
414
  - lib/retter/generator/skel/stylesheets/pygments.css
293
415
  - lib/retter/generator/skel/stylesheets/retter.css
294
416
  - lib/retter/generator/skel/tmp/cache/.gitkeep
295
- - lib/retter/generator/updator.rb
417
+ - lib/retter/markdown.rb
296
418
  - lib/retter/page.rb
419
+ - lib/retter/page/article.rb
420
+ - lib/retter/page/base.rb
421
+ - lib/retter/page/entries.rb
422
+ - lib/retter/page/entry.rb
423
+ - lib/retter/page/feed.rb
424
+ - lib/retter/page/index.rb
425
+ - lib/retter/page/profile.rb
297
426
  - lib/retter/page/view_helper.rb
298
- - lib/retter/pages.rb
299
- - lib/retter/pages/article.rb
300
- - lib/retter/pages/entries.rb
301
- - lib/retter/pages/entry.rb
302
- - lib/retter/pages/feed.rb
303
- - lib/retter/pages/index.rb
304
- - lib/retter/pages/profile.rb
305
427
  - lib/retter/preprint.rb
306
- - lib/retter/renderers.rb
307
428
  - lib/retter/repository.rb
308
429
  - lib/retter/version.rb
309
430
  - retter.gemspec
310
431
  - spec/bin/fake_editor
311
432
  - spec/command/callback_spec.rb
433
+ - spec/command/clean_spec.rb
312
434
  - spec/command/commit_spec.rb
313
435
  - spec/command/edit_spec.rb
314
- - spec/command/invoke_after_spec.rb
315
436
  - spec/command/list_spec.rb
316
437
  - spec/command/open_spec.rb
317
438
  - spec/command/preview_spec.rb
318
439
  - spec/command/rebind_spec.rb
319
- - spec/fixtures/sample.md
320
440
  - spec/spec_helper.rb
321
441
  - spec/support/example_group_helper.rb
322
442
  - spec/support/matchers.rb
323
443
  - tmp/.gitkeep
324
444
  homepage: https://github.com/hibariya/retter
325
445
  licenses: []
326
- post_install_message: ! " -- Thanks for flying Retter :-> --\n\n Pygments syntax
327
- highlight is now available.\n To use, add a following line to Retterfile.\n\n
328
- \ ```ruby\n renderer Retter::Renderers::PygmentsRenderer\n ```\n"
446
+ post_install_message:
329
447
  rdoc_options: []
330
448
  require_paths:
331
449
  - lib
@@ -334,7 +452,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
334
452
  requirements:
335
453
  - - ! '>='
336
454
  - !ruby/object:Gem::Version
337
- version: '0'
455
+ version: 1.9.1
338
456
  required_rubygems_version: !ruby/object:Gem::Requirement
339
457
  none: false
340
458
  requirements:
@@ -343,21 +461,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
343
461
  version: '0'
344
462
  requirements: []
345
463
  rubyforge_project:
346
- rubygems_version: 1.8.11
464
+ rubygems_version: 1.8.23
347
465
  signing_key:
348
466
  specification_version: 3
349
467
  summary: Flyweight diary workflow
350
468
  test_files:
351
469
  - spec/bin/fake_editor
352
470
  - spec/command/callback_spec.rb
471
+ - spec/command/clean_spec.rb
353
472
  - spec/command/commit_spec.rb
354
473
  - spec/command/edit_spec.rb
355
- - spec/command/invoke_after_spec.rb
356
474
  - spec/command/list_spec.rb
357
475
  - spec/command/open_spec.rb
358
476
  - spec/command/preview_spec.rb
359
477
  - spec/command/rebind_spec.rb
360
- - spec/fixtures/sample.md
361
478
  - spec/spec_helper.rb
362
479
  - spec/support/example_group_helper.rb
363
480
  - spec/support/matchers.rb
@@ -1,7 +0,0 @@
1
- # coding: utf-8
2
-
3
- class Retter::Generator::Updator < Retter::Generator::Base
4
- def complete_message
5
- say 'Website has been updated!', :green
6
- end
7
- end
@@ -1,41 +0,0 @@
1
- # coding: utf-8
2
-
3
- module Retter
4
- class Pages::Article
5
- include Page
6
-
7
- attr_reader :article
8
-
9
- def initialize(article)
10
- super()
11
- @path_prefix = '../../'
12
- @article = article
13
- @title = "#{article.title} - #{config.title}"
14
- end
15
-
16
- def pathname
17
- Pages.entry_dir(article.entry.date).join("#{article.id}.html")
18
- end
19
-
20
- def part_layout_pathname
21
- Pages.find_layout_path('article')
22
- end
23
-
24
- def print
25
- options = {entry: article.entry, article: article}
26
- part = Tilt.new(
27
- part_layout_pathname.to_path,
28
- ugly: true,
29
- filename: part_layout_pathname.to_path
30
- ).render(view_scope, options)
31
-
32
- mkdir
33
- print_with_layout part
34
- end
35
-
36
- def mkdir
37
- entry_dir = Pages.entry_dir(article.entry.date)
38
- entry_dir.mkdir unless entry_dir.directory?
39
- end
40
- end
41
- end
@@ -1,15 +0,0 @@
1
- # coding: utf-8
2
-
3
- module Retter
4
- class Pages::Entries
5
- include Page
6
-
7
- def pathname
8
- config.retter_home.join('entries.html')
9
- end
10
-
11
- def part_layout_pathname
12
- Pages.find_layout_path('entries')
13
- end
14
- end
15
- end
@@ -1,35 +0,0 @@
1
- # coding: utf-8
2
-
3
- module Retter
4
- class Pages::Entry
5
- include Page
6
-
7
- attr_reader :entry
8
-
9
- def initialize(entry)
10
- super()
11
-
12
- @path_prefix = '../'
13
- @entry = entry
14
- @title = "#{entry.date} - #{config.title}"
15
- end
16
-
17
- def pathname
18
- Pages.entry_file(entry.date)
19
- end
20
-
21
- def part_layout_pathname
22
- Pages.find_layout_path('entry')
23
- end
24
-
25
- def print
26
- part = Tilt.new(
27
- part_layout_pathname.to_path,
28
- ugly: true,
29
- filename: part_layout_pathname.to_path
30
- ).render(view_scope, entry: entry)
31
-
32
- print_with_layout part
33
- end
34
- end
35
- end
@@ -1,51 +0,0 @@
1
- # coding: utf-8
2
-
3
- require 'builder'
4
- require 'uri'
5
-
6
- module Retter
7
- class Pages::Feed
8
- include Page
9
-
10
- def pathname
11
- config.retter_home.join('entries.rss')
12
- end
13
-
14
- def print
15
- pathname.open('w') {|f| f.puts rss }
16
- end
17
-
18
- private
19
-
20
- def entry_url(date, id = nil)
21
- (URI.parse(config.url) + date.strftime('/entries/%Y%m%d.html')).to_s
22
- end
23
-
24
- def rss
25
- xml = Builder::XmlMarkup.new
26
- xml.instruct!
27
- xml.rdf:RDF, :xmlns => 'http://purl.org/rss/1.0/',
28
- :'xmlns:rdf' => 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
29
- :'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
30
- :'xml:lang' => 'ja' do
31
- xml.channel :'rdf:about' => config.url do
32
- xml.title config.title
33
- xml.link config.url
34
- xml.dc:date, entries.empty? ? nil : entries.first.date
35
- xml.description config.description
36
- xml.items { xml.rdf(:Seq) { entries.each {|e| xml.rdf:li, :'rdf:resource' => entry_url(e.date) } } }
37
- end
38
-
39
- entries[0...20].each do |entry| # XXX hardcoding
40
- xml.item about: entry_url(entry.date) do
41
- xml.title entry.date.strftime('%Y/%m/%d')
42
- xml.description { xml.cdata! entry.body }
43
- xml.dc:date, entry.date
44
- xml.link entry_url(entry.date)
45
- xml.author config.author
46
- end
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,15 +0,0 @@
1
- # coding: utf-8
2
-
3
- module Retter
4
- class Pages::Index
5
- include Page
6
-
7
- def pathname
8
- config.retter_home.join('index.html')
9
- end
10
-
11
- def part_layout_pathname
12
- Pages.find_layout_path('index')
13
- end
14
- end
15
- end