realityforge-jekyll 0.7.1-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. data/History.txt +255 -0
  2. data/LICENSE +21 -0
  3. data/README.textile +41 -0
  4. data/Rakefile +159 -0
  5. data/bin/jekyll +178 -0
  6. data/cucumber.yml +1 -0
  7. data/features/create_sites.feature +94 -0
  8. data/features/embed_filters.feature +60 -0
  9. data/features/markdown.feature +30 -0
  10. data/features/pagination.feature +27 -0
  11. data/features/permalinks.feature +65 -0
  12. data/features/post_data.feature +153 -0
  13. data/features/site_configuration.feature +103 -0
  14. data/features/site_data.feature +82 -0
  15. data/features/step_definitions/jekyll_steps.rb +145 -0
  16. data/features/support/env.rb +16 -0
  17. data/jekyll.gemspec +135 -0
  18. data/lib/jekyll.rb +109 -0
  19. data/lib/jekyll/albino.rb +120 -0
  20. data/lib/jekyll/converter.rb +50 -0
  21. data/lib/jekyll/converters/identity.rb +22 -0
  22. data/lib/jekyll/converters/markdown.rb +80 -0
  23. data/lib/jekyll/converters/textile.rb +33 -0
  24. data/lib/jekyll/convertible.rb +82 -0
  25. data/lib/jekyll/core_ext.rb +52 -0
  26. data/lib/jekyll/errors.rb +6 -0
  27. data/lib/jekyll/filters.rb +47 -0
  28. data/lib/jekyll/generator.rb +7 -0
  29. data/lib/jekyll/generators/pagination.rb +87 -0
  30. data/lib/jekyll/layout.rb +36 -0
  31. data/lib/jekyll/migrators/csv.rb +26 -0
  32. data/lib/jekyll/migrators/mephisto.rb +79 -0
  33. data/lib/jekyll/migrators/mt.rb +59 -0
  34. data/lib/jekyll/migrators/textpattern.rb +50 -0
  35. data/lib/jekyll/migrators/typo.rb +49 -0
  36. data/lib/jekyll/migrators/wordpress.rb +55 -0
  37. data/lib/jekyll/page.rb +133 -0
  38. data/lib/jekyll/plugin.rb +76 -0
  39. data/lib/jekyll/post.rb +242 -0
  40. data/lib/jekyll/site.rb +235 -0
  41. data/lib/jekyll/static_file.rb +76 -0
  42. data/lib/jekyll/tags/highlight.rb +73 -0
  43. data/lib/jekyll/tags/include.rb +31 -0
  44. data/test/helper.rb +33 -0
  45. data/test/source/_includes/sig.markdown +3 -0
  46. data/test/source/_layouts/default.html +27 -0
  47. data/test/source/_layouts/simple.html +1 -0
  48. data/test/source/_posts/2008-02-02-not-published.textile +8 -0
  49. data/test/source/_posts/2008-02-02-published.textile +8 -0
  50. data/test/source/_posts/2008-10-18-foo-bar.textile +8 -0
  51. data/test/source/_posts/2008-11-21-complex.textile +8 -0
  52. data/test/source/_posts/2008-12-03-permalinked-post.textile +9 -0
  53. data/test/source/_posts/2008-12-13-include.markdown +8 -0
  54. data/test/source/_posts/2009-01-27-array-categories.textile +10 -0
  55. data/test/source/_posts/2009-01-27-categories.textile +7 -0
  56. data/test/source/_posts/2009-01-27-category.textile +7 -0
  57. data/test/source/_posts/2009-01-27-empty-categories.textile +7 -0
  58. data/test/source/_posts/2009-01-27-empty-category.textile +7 -0
  59. data/test/source/_posts/2009-03-12-hash-#1.markdown +6 -0
  60. data/test/source/_posts/2009-05-18-empty-tag.textile +6 -0
  61. data/test/source/_posts/2009-05-18-empty-tags.textile +6 -0
  62. data/test/source/_posts/2009-05-18-tag.textile +6 -0
  63. data/test/source/_posts/2009-05-18-tags.textile +9 -0
  64. data/test/source/_posts/2009-06-22-empty-yaml.textile +3 -0
  65. data/test/source/_posts/2009-06-22-no-yaml.textile +1 -0
  66. data/test/source/_posts/2010-01-08-triple-dash.markdown +5 -0
  67. data/test/source/_posts/2010-01-09-date-override.textile +7 -0
  68. data/test/source/_posts/2010-01-09-time-override.textile +7 -0
  69. data/test/source/_posts/2010-01-09-timezone-override.textile +7 -0
  70. data/test/source/_posts/2010-01-16-override-data.textile +4 -0
  71. data/test/source/about.html +6 -0
  72. data/test/source/category/_posts/2008-9-23-categories.textile +6 -0
  73. data/test/source/contacts.html +5 -0
  74. data/test/source/css/screen.css +76 -0
  75. data/test/source/foo/_posts/bar/2008-12-12-topical-post.textile +8 -0
  76. data/test/source/index.html +22 -0
  77. data/test/source/sitemap.xml +32 -0
  78. data/test/source/win/_posts/2009-05-24-yaml-linebreak.markdown +7 -0
  79. data/test/source/z_category/_posts/2008-9-23-categories.textile +6 -0
  80. data/test/suite.rb +9 -0
  81. data/test/test_configuration.rb +29 -0
  82. data/test/test_core_ext.rb +66 -0
  83. data/test/test_filters.rb +49 -0
  84. data/test/test_generated_site.rb +44 -0
  85. data/test/test_page.rb +98 -0
  86. data/test/test_pager.rb +113 -0
  87. data/test/test_post.rb +396 -0
  88. data/test/test_rdiscount.rb +18 -0
  89. data/test/test_site.rb +153 -0
  90. data/test/test_tags.rb +116 -0
  91. metadata +282 -0
@@ -0,0 +1,18 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestRdiscount < Test::Unit::TestCase
4
+
5
+ context "rdiscount" do
6
+ setup do
7
+ config = {
8
+ 'rdiscount' => { 'extensions' => ['smart'] },
9
+ 'markdown' => 'rdiscount'
10
+ }
11
+ @markdown = MarkdownConverter.new config
12
+ end
13
+
14
+ should "pass rdiscount extensions" do
15
+ assert_equal "<p>&ldquo;smart&rdquo;</p>", @markdown.convert('"smart"').strip
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,153 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestSite < Test::Unit::TestCase
4
+ context "creating sites" do
5
+ setup do
6
+ stub(Jekyll).configuration do
7
+ Jekyll::DEFAULTS.merge({'source' => source_dir, 'destination' => dest_dir})
8
+ end
9
+ @site = Site.new(Jekyll.configuration)
10
+ end
11
+
12
+ should "have an empty tag hash by default" do
13
+ assert_equal Hash.new, @site.tags
14
+ end
15
+
16
+ should "reset data before processing" do
17
+ clear_dest
18
+ @site.process
19
+ before_posts = @site.posts.length
20
+ before_layouts = @site.layouts.length
21
+ before_categories = @site.categories.length
22
+ before_tags = @site.tags.length
23
+ before_pages = @site.pages.length
24
+ before_static_files = @site.static_files.length
25
+ before_time = @site.time
26
+
27
+ @site.process
28
+ assert_equal before_posts, @site.posts.length
29
+ assert_equal before_layouts, @site.layouts.length
30
+ assert_equal before_categories, @site.categories.length
31
+ assert_equal before_tags, @site.tags.length
32
+ assert_equal before_pages, @site.pages.length
33
+ assert_equal before_static_files, @site.static_files.length
34
+ assert before_time <= @site.time
35
+ end
36
+
37
+ should "write only modified static files" do
38
+ clear_dest
39
+ StaticFile.reset_cache
40
+
41
+ @site.process
42
+ some_static_file = @site.static_files[0].path
43
+ dest = File.expand_path(@site.static_files[0].destination(@site.dest))
44
+ mtime1 = File.stat(dest).mtime.to_i # first run must generate dest file
45
+
46
+ # need to sleep because filesystem timestamps have best resolution in seconds
47
+ sleep 1
48
+ @site.process
49
+ mtime2 = File.stat(dest).mtime.to_i
50
+ assert_equal mtime1, mtime2
51
+
52
+ # simulate file modification by user
53
+ FileUtils.touch some_static_file
54
+
55
+ sleep 1
56
+ @site.process
57
+ mtime3 = File.stat(dest).mtime.to_i
58
+ assert_not_equal mtime2, mtime3 # must be regenerated!
59
+
60
+ sleep 1
61
+ @site.process
62
+ mtime4 = File.stat(dest).mtime.to_i
63
+ assert_equal mtime3, mtime4 # no modifications, so must be the same
64
+ end
65
+
66
+ should "write static files if not modified but missing in destination" do
67
+ clear_dest
68
+ StaticFile.reset_cache
69
+
70
+ @site.process
71
+ some_static_file = @site.static_files[0].path
72
+ dest = File.expand_path(@site.static_files[0].destination(@site.dest))
73
+ mtime1 = File.stat(dest).mtime.to_i # first run must generate dest file
74
+
75
+ # need to sleep because filesystem timestamps have best resolution in seconds
76
+ sleep 1
77
+ @site.process
78
+ mtime2 = File.stat(dest).mtime.to_i
79
+ assert_equal mtime1, mtime2
80
+
81
+ # simulate destination file deletion
82
+ File.unlink dest
83
+
84
+ sleep 1
85
+ @site.process
86
+ mtime3 = File.stat(dest).mtime.to_i
87
+ assert_not_equal mtime2, mtime3 # must be regenerated and differ!
88
+
89
+ sleep 1
90
+ @site.process
91
+ mtime4 = File.stat(dest).mtime.to_i
92
+ assert_equal mtime3, mtime4 # no modifications, so must be the same
93
+ end
94
+
95
+ should "read layouts" do
96
+ @site.read_layouts
97
+ assert_equal ["default", "simple"].sort, @site.layouts.keys.sort
98
+ end
99
+
100
+ should "read posts" do
101
+ @site.read_posts('')
102
+ posts = Dir[source_dir('_posts', '*')]
103
+ assert_equal posts.size - 1, @site.posts.size
104
+ end
105
+
106
+ should "deploy payload" do
107
+ clear_dest
108
+ @site.process
109
+
110
+ posts = Dir[source_dir("**", "_posts", "*")]
111
+ categories = %w(bar baz category foo z_category publish_test win).sort
112
+
113
+ assert_equal posts.size - 1, @site.posts.size
114
+ assert_equal categories, @site.categories.keys.sort
115
+ assert_equal 4, @site.categories['foo'].size
116
+ end
117
+
118
+ should "filter entries" do
119
+ ent1 = %w[foo.markdown bar.markdown baz.markdown #baz.markdown#
120
+ .baz.markdow foo.markdown~]
121
+ ent2 = %w[.htaccess _posts _pages bla.bla]
122
+
123
+ assert_equal %w[foo.markdown bar.markdown baz.markdown], @site.filter_entries(ent1)
124
+ assert_equal %w[.htaccess bla.bla], @site.filter_entries(ent2)
125
+ end
126
+
127
+ should "filter entries with exclude" do
128
+ excludes = %w[README TODO]
129
+ includes = %w[index.html site.css]
130
+
131
+ @site.exclude = excludes
132
+ assert_equal includes, @site.filter_entries(excludes + includes)
133
+ end
134
+
135
+ context 'with an invalid markdown processor in the configuration' do
136
+ should 'not throw an error at initialization time' do
137
+ bad_processor = 'not a processor name'
138
+ assert_nothing_raised do
139
+ Site.new(Jekyll.configuration.merge({ 'markdown' => bad_processor }))
140
+ end
141
+ end
142
+
143
+ should 'throw FatalException at process time' do
144
+ bad_processor = 'not a processor name'
145
+ s = Site.new(Jekyll.configuration.merge({ 'markdown' => bad_processor }))
146
+ assert_raise Jekyll::FatalException do
147
+ s.process
148
+ end
149
+ end
150
+ end
151
+
152
+ end
153
+ end
@@ -0,0 +1,116 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestTags < Test::Unit::TestCase
4
+
5
+ def create_post(content, override = {}, converter_class = Jekyll::MarkdownConverter)
6
+ stub(Jekyll).configuration do
7
+ Jekyll::DEFAULTS.merge({'pygments' => true}).merge(override)
8
+ end
9
+ site = Site.new(Jekyll.configuration)
10
+ info = { :filters => [Jekyll::Filters], :registers => { :site => site } }
11
+ @converter = site.converters.find { |c| c.class == converter_class }
12
+ payload = { "pygments_prefix" => @converter.pygments_prefix,
13
+ "pygments_suffix" => @converter.pygments_suffix }
14
+
15
+ @result = Liquid::Template.parse(content).render(payload, info)
16
+ @result = @converter.convert(@result)
17
+ end
18
+
19
+ def fill_post(code, override = {})
20
+ content = <<CONTENT
21
+ ---
22
+ title: This is a test
23
+ ---
24
+
25
+ This document results in a markdown error with maruku
26
+
27
+ {% highlight text %}#{code}{% endhighlight %}
28
+ CONTENT
29
+ create_post(content, override)
30
+ end
31
+
32
+ context "post content has highlight tag" do
33
+ setup do
34
+ fill_post("test")
35
+ end
36
+
37
+ should "not cause a markdown error" do
38
+ assert_no_match /markdown\-html\-error/, @result
39
+ end
40
+
41
+ should "render markdown with pygments line handling" do
42
+ assert_match %{<pre><code class='text'>test\n</code></pre>}, @result
43
+ end
44
+ end
45
+
46
+ context "post content has highlight with file reference" do
47
+ setup do
48
+ fill_post("./jekyll.gemspec")
49
+ end
50
+
51
+ should "not embed the file" do
52
+ assert_match %{<pre><code class='text'>./jekyll.gemspec\n</code></pre>}, @result
53
+ end
54
+ end
55
+
56
+ context "post content has highlight tag with UTF character" do
57
+ setup do
58
+ fill_post("Æ")
59
+ end
60
+
61
+ should "render markdown with pygments line handling" do
62
+ assert_match %{<pre><code class='text'>Æ\n</code></pre>}, @result
63
+ end
64
+ end
65
+
66
+ context "simple post with markdown and pre tags" do
67
+ setup do
68
+ @content = <<CONTENT
69
+ ---
70
+ title: Maruku vs. RDiscount
71
+ ---
72
+
73
+ _FIGHT!_
74
+
75
+ {% highlight ruby %}
76
+ puts "3..2..1.."
77
+ {% endhighlight %}
78
+
79
+ *FINISH HIM*
80
+ CONTENT
81
+ end
82
+
83
+ context "using Textile" do
84
+ setup do
85
+ create_post(@content, {}, Jekyll::TextileConverter)
86
+ end
87
+
88
+ # Broken in RedCloth 4.1.9
89
+ should "not textilize highlight block" do
90
+ assert_no_match %r{3\.\.2\.\.1\.\.&quot;</span><br />}, @result
91
+ end
92
+ end
93
+
94
+ context "using Maruku" do
95
+ setup do
96
+ create_post(@content)
97
+ end
98
+
99
+ should "parse correctly" do
100
+ assert_match %r{<em>FIGHT!</em>}, @result
101
+ assert_match %r{<em>FINISH HIM</em>}, @result
102
+ end
103
+ end
104
+
105
+ context "using RDiscount" do
106
+ setup do
107
+ create_post(@content, 'markdown' => 'rdiscount')
108
+ end
109
+
110
+ should "parse correctly" do
111
+ assert_match %r{<em>FIGHT!</em>}, @result
112
+ assert_match %r{<em>FINISH HIM</em>}, @result
113
+ end
114
+ end
115
+ end
116
+ end
metadata ADDED
@@ -0,0 +1,282 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: realityforge-jekyll
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 7
8
+ - 1
9
+ version: 0.7.1
10
+ platform: java
11
+ authors:
12
+ - Tom Preston-Werner
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-08-24 00:00:00 +10:00
18
+ default_executable: jekyll
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: liquid
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ segments:
29
+ - 1
30
+ - 9
31
+ - 0
32
+ version: 1.9.0
33
+ type: :runtime
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: directory_watcher
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ segments:
44
+ - 1
45
+ - 1
46
+ - 1
47
+ version: 1.1.1
48
+ type: :runtime
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: maruku
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ segments:
59
+ - 0
60
+ - 5
61
+ - 9
62
+ version: 0.5.9
63
+ type: :runtime
64
+ version_requirements: *id003
65
+ - !ruby/object:Gem::Dependency
66
+ name: redgreen
67
+ prerelease: false
68
+ requirement: &id004 !ruby/object:Gem::Requirement
69
+ none: false
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ segments:
74
+ - 4
75
+ - 2
76
+ - 1
77
+ version: 4.2.1
78
+ type: :development
79
+ version_requirements: *id004
80
+ - !ruby/object:Gem::Dependency
81
+ name: shoulda
82
+ prerelease: false
83
+ requirement: &id005 !ruby/object:Gem::Requirement
84
+ none: false
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ segments:
89
+ - 4
90
+ - 2
91
+ - 1
92
+ version: 4.2.1
93
+ type: :development
94
+ version_requirements: *id005
95
+ - !ruby/object:Gem::Dependency
96
+ name: rr
97
+ prerelease: false
98
+ requirement: &id006 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ segments:
104
+ - 4
105
+ - 2
106
+ - 1
107
+ version: 4.2.1
108
+ type: :development
109
+ version_requirements: *id006
110
+ - !ruby/object:Gem::Dependency
111
+ name: cucumber
112
+ prerelease: false
113
+ requirement: &id007 !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ segments:
119
+ - 4
120
+ - 2
121
+ - 1
122
+ version: 4.2.1
123
+ type: :development
124
+ version_requirements: *id007
125
+ - !ruby/object:Gem::Dependency
126
+ name: RedCloth
127
+ prerelease: false
128
+ requirement: &id008 !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ segments:
134
+ - 4
135
+ - 2
136
+ - 1
137
+ version: 4.2.1
138
+ type: :development
139
+ version_requirements: *id008
140
+ description: Jekyll is a simple, blog aware, static site generator.
141
+ email: tom@mojombo.com
142
+ executables:
143
+ - jekyll
144
+ extensions: []
145
+
146
+ extra_rdoc_files:
147
+ - README.textile
148
+ - LICENSE
149
+ files:
150
+ - History.txt
151
+ - LICENSE
152
+ - README.textile
153
+ - Rakefile
154
+ - bin/jekyll
155
+ - cucumber.yml
156
+ - features/create_sites.feature
157
+ - features/embed_filters.feature
158
+ - features/markdown.feature
159
+ - features/pagination.feature
160
+ - features/permalinks.feature
161
+ - features/post_data.feature
162
+ - features/site_configuration.feature
163
+ - features/site_data.feature
164
+ - features/step_definitions/jekyll_steps.rb
165
+ - features/support/env.rb
166
+ - jekyll.gemspec
167
+ - lib/jekyll.rb
168
+ - lib/jekyll/albino.rb
169
+ - lib/jekyll/converter.rb
170
+ - lib/jekyll/converters/identity.rb
171
+ - lib/jekyll/converters/markdown.rb
172
+ - lib/jekyll/converters/textile.rb
173
+ - lib/jekyll/convertible.rb
174
+ - lib/jekyll/core_ext.rb
175
+ - lib/jekyll/errors.rb
176
+ - lib/jekyll/filters.rb
177
+ - lib/jekyll/generator.rb
178
+ - lib/jekyll/generators/pagination.rb
179
+ - lib/jekyll/layout.rb
180
+ - lib/jekyll/migrators/csv.rb
181
+ - lib/jekyll/migrators/mephisto.rb
182
+ - lib/jekyll/migrators/mt.rb
183
+ - lib/jekyll/migrators/textpattern.rb
184
+ - lib/jekyll/migrators/typo.rb
185
+ - lib/jekyll/migrators/wordpress.rb
186
+ - lib/jekyll/page.rb
187
+ - lib/jekyll/plugin.rb
188
+ - lib/jekyll/post.rb
189
+ - lib/jekyll/site.rb
190
+ - lib/jekyll/static_file.rb
191
+ - lib/jekyll/tags/highlight.rb
192
+ - lib/jekyll/tags/include.rb
193
+ - test/helper.rb
194
+ - test/source/_includes/sig.markdown
195
+ - test/source/_layouts/default.html
196
+ - test/source/_layouts/simple.html
197
+ - test/source/_posts/2008-02-02-not-published.textile
198
+ - test/source/_posts/2008-02-02-published.textile
199
+ - test/source/_posts/2008-10-18-foo-bar.textile
200
+ - test/source/_posts/2008-11-21-complex.textile
201
+ - test/source/_posts/2008-12-03-permalinked-post.textile
202
+ - test/source/_posts/2008-12-13-include.markdown
203
+ - test/source/_posts/2009-01-27-array-categories.textile
204
+ - test/source/_posts/2009-01-27-categories.textile
205
+ - test/source/_posts/2009-01-27-category.textile
206
+ - test/source/_posts/2009-01-27-empty-categories.textile
207
+ - test/source/_posts/2009-01-27-empty-category.textile
208
+ - test/source/_posts/2009-03-12-hash-#1.markdown
209
+ - test/source/_posts/2009-05-18-empty-tag.textile
210
+ - test/source/_posts/2009-05-18-empty-tags.textile
211
+ - test/source/_posts/2009-05-18-tag.textile
212
+ - test/source/_posts/2009-05-18-tags.textile
213
+ - test/source/_posts/2009-06-22-empty-yaml.textile
214
+ - test/source/_posts/2009-06-22-no-yaml.textile
215
+ - test/source/_posts/2010-01-08-triple-dash.markdown
216
+ - test/source/_posts/2010-01-09-date-override.textile
217
+ - test/source/_posts/2010-01-09-time-override.textile
218
+ - test/source/_posts/2010-01-09-timezone-override.textile
219
+ - test/source/_posts/2010-01-16-override-data.textile
220
+ - test/source/about.html
221
+ - test/source/category/_posts/2008-9-23-categories.textile
222
+ - test/source/contacts.html
223
+ - test/source/css/screen.css
224
+ - test/source/foo/_posts/bar/2008-12-12-topical-post.textile
225
+ - test/source/index.html
226
+ - test/source/sitemap.xml
227
+ - test/source/win/_posts/2009-05-24-yaml-linebreak.markdown
228
+ - test/source/z_category/_posts/2008-9-23-categories.textile
229
+ - test/suite.rb
230
+ - test/test_configuration.rb
231
+ - test/test_core_ext.rb
232
+ - test/test_filters.rb
233
+ - test/test_generated_site.rb
234
+ - test/test_page.rb
235
+ - test/test_pager.rb
236
+ - test/test_post.rb
237
+ - test/test_rdiscount.rb
238
+ - test/test_site.rb
239
+ - test/test_tags.rb
240
+ has_rdoc: true
241
+ homepage: http://github.com/mojombo/jekyll
242
+ licenses: []
243
+
244
+ post_install_message:
245
+ rdoc_options:
246
+ - --charset=UTF-8
247
+ require_paths:
248
+ - lib
249
+ required_ruby_version: !ruby/object:Gem::Requirement
250
+ none: false
251
+ requirements:
252
+ - - ">="
253
+ - !ruby/object:Gem::Version
254
+ segments:
255
+ - 0
256
+ version: "0"
257
+ required_rubygems_version: !ruby/object:Gem::Requirement
258
+ none: false
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ segments:
263
+ - 0
264
+ version: "0"
265
+ requirements: []
266
+
267
+ rubyforge_project: jekyll
268
+ rubygems_version: 1.3.7
269
+ signing_key:
270
+ specification_version: 2
271
+ summary: A simple, blog aware, static site generator.
272
+ test_files:
273
+ - test/test_configuration.rb
274
+ - test/test_core_ext.rb
275
+ - test/test_filters.rb
276
+ - test/test_generated_site.rb
277
+ - test/test_page.rb
278
+ - test/test_pager.rb
279
+ - test/test_post.rb
280
+ - test/test_rdiscount.rb
281
+ - test/test_site.rb
282
+ - test/test_tags.rb