henrik-jekyll 0.5.0

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 (47) hide show
  1. data/History.txt +115 -0
  2. data/README.textile +545 -0
  3. data/Rakefile +91 -0
  4. data/VERSION.yml +4 -0
  5. data/bin/jekyll +140 -0
  6. data/lib/jekyll/albino.rb +120 -0
  7. data/lib/jekyll/converters/csv.rb +26 -0
  8. data/lib/jekyll/converters/mephisto.rb +79 -0
  9. data/lib/jekyll/converters/mt.rb +59 -0
  10. data/lib/jekyll/converters/textpattern.rb +50 -0
  11. data/lib/jekyll/converters/typo.rb +49 -0
  12. data/lib/jekyll/converters/wordpress.rb +54 -0
  13. data/lib/jekyll/convertible.rb +82 -0
  14. data/lib/jekyll/core_ext.rb +22 -0
  15. data/lib/jekyll/filters.rb +43 -0
  16. data/lib/jekyll/layout.rb +36 -0
  17. data/lib/jekyll/page.rb +67 -0
  18. data/lib/jekyll/post.rb +205 -0
  19. data/lib/jekyll/site.rb +238 -0
  20. data/lib/jekyll/tags/highlight.rb +56 -0
  21. data/lib/jekyll/tags/include.rb +31 -0
  22. data/lib/jekyll.rb +83 -0
  23. data/test/helper.rb +24 -0
  24. data/test/source/_includes/sig.markdown +3 -0
  25. data/test/source/_layouts/default.html +27 -0
  26. data/test/source/_layouts/simple.html +1 -0
  27. data/test/source/_posts/2008-02-02-not-published.textile +8 -0
  28. data/test/source/_posts/2008-02-02-published.textile +8 -0
  29. data/test/source/_posts/2008-10-18-foo-bar.textile +8 -0
  30. data/test/source/_posts/2008-11-21-complex.textile +8 -0
  31. data/test/source/_posts/2008-12-03-permalinked-post.textile +9 -0
  32. data/test/source/_posts/2008-12-13-include.markdown +8 -0
  33. data/test/source/_posts/2009-01-27-array-categories.textile +10 -0
  34. data/test/source/_posts/2009-01-27-categories.textile +7 -0
  35. data/test/source/_posts/2009-01-27-category.textile +7 -0
  36. data/test/source/category/_posts/2008-9-23-categories.textile +6 -0
  37. data/test/source/css/screen.css +76 -0
  38. data/test/source/foo/_posts/bar/2008-12-12-topical-post.textile +8 -0
  39. data/test/source/index.html +22 -0
  40. data/test/source/z_category/_posts/2008-9-23-categories.textile +6 -0
  41. data/test/suite.rb +9 -0
  42. data/test/test_filters.rb +41 -0
  43. data/test/test_generated_site.rb +38 -0
  44. data/test/test_post.rb +145 -0
  45. data/test/test_site.rb +57 -0
  46. data/test/test_tags.rb +35 -0
  47. metadata +163 -0
data/test/test_site.rb ADDED
@@ -0,0 +1,57 @@
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 "reset data before processing" do
13
+ clear_dest
14
+ @site.process
15
+ before_posts = @site.posts.length
16
+ before_layouts = @site.layouts.length
17
+ before_categories = @site.categories.length
18
+
19
+ @site.process
20
+ assert_equal before_posts, @site.posts.length
21
+ assert_equal before_layouts, @site.layouts.length
22
+ assert_equal before_categories, @site.categories.length
23
+ end
24
+
25
+ should "read layouts" do
26
+ @site.read_layouts
27
+ assert_equal ["default", "simple"].sort, @site.layouts.keys.sort
28
+ end
29
+
30
+ should "read posts" do
31
+ @site.read_posts('')
32
+ posts = Dir[source_dir('_posts', '*')]
33
+ assert_equal posts.size - 1, @site.posts.size
34
+ end
35
+
36
+ should "deploy payload" do
37
+ clear_dest
38
+ @site.process
39
+
40
+ posts = Dir[source_dir("**", "_posts", "*")]
41
+ categories = %w(bar baz category foo z_category publish_test).sort
42
+
43
+ assert_equal posts.size - 1, @site.posts.size
44
+ assert_equal categories, @site.categories.keys.sort
45
+ assert_equal 4, @site.categories['foo'].size
46
+ end
47
+
48
+ should "filter entries" do
49
+ ent1 = %w[foo.markdown bar.markdown baz.markdown #baz.markdown#
50
+ .baz.markdow foo.markdown~]
51
+ ent2 = %w[.htaccess _posts bla.bla]
52
+
53
+ assert_equal %w[foo.markdown bar.markdown baz.markdown], @site.filter_entries(ent1)
54
+ assert_equal ent2, @site.filter_entries(ent2)
55
+ end
56
+ end
57
+ end
data/test/test_tags.rb ADDED
@@ -0,0 +1,35 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestTags < Test::Unit::TestCase
4
+ context "tagging" do
5
+ setup do
6
+ @content = <<CONTENT
7
+ ---
8
+ layout: post
9
+ title: This is a test
10
+
11
+ ---
12
+ This document results in a markdown error with maruku
13
+
14
+ {% highlight ruby %}
15
+ puts "hi"
16
+
17
+ puts "bye"
18
+ {% endhighlight %}
19
+
20
+ CONTENT
21
+ end
22
+
23
+ should "render markdown with pygments line handling" do
24
+ stub(Jekyll).configuration do
25
+ Jekyll::DEFAULTS.merge({'pygments' => true})
26
+ end
27
+ site = Site.new(Jekyll.configuration)
28
+ info = { :filters => [Jekyll::Filters], :registers => { :site => site } }
29
+
30
+ result = Liquid::Template.parse(@content).render({}, info)
31
+ result = site.markdown(result)
32
+ assert_no_match(/markdown\-html\-error/,result)
33
+ end
34
+ end
35
+ end
metadata ADDED
@@ -0,0 +1,163 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: henrik-jekyll
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.0
5
+ platform: ruby
6
+ authors:
7
+ - Tom Preston-Werner
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-04-07 00:00:00 -07:00
13
+ default_executable: jekyll
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: RedCloth
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 4.0.4
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: liquid
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.9.0
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: classifier
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 1.3.1
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: maruku
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 0.5.9
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: directory_watcher
57
+ type: :runtime
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 1.1.1
64
+ version:
65
+ - !ruby/object:Gem::Dependency
66
+ name: open4
67
+ type: :runtime
68
+ version_requirement:
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: 0.9.6
74
+ version:
75
+ description: Jekyll is a simple, blog aware, static site generator.
76
+ email: tom@mojombo.com
77
+ executables:
78
+ - jekyll
79
+ extensions: []
80
+
81
+ extra_rdoc_files:
82
+ - README.textile
83
+ files:
84
+ - History.txt
85
+ - README.textile
86
+ - Rakefile
87
+ - VERSION.yml
88
+ - bin/jekyll
89
+ - lib/jekyll.rb
90
+ - lib/jekyll/albino.rb
91
+ - lib/jekyll/converters/csv.rb
92
+ - lib/jekyll/converters/mephisto.rb
93
+ - lib/jekyll/converters/mt.rb
94
+ - lib/jekyll/converters/textpattern.rb
95
+ - lib/jekyll/converters/typo.rb
96
+ - lib/jekyll/converters/wordpress.rb
97
+ - lib/jekyll/convertible.rb
98
+ - lib/jekyll/core_ext.rb
99
+ - lib/jekyll/filters.rb
100
+ - lib/jekyll/layout.rb
101
+ - lib/jekyll/page.rb
102
+ - lib/jekyll/post.rb
103
+ - lib/jekyll/site.rb
104
+ - lib/jekyll/tags/highlight.rb
105
+ - lib/jekyll/tags/include.rb
106
+ - test/helper.rb
107
+ - test/source/_includes/sig.markdown
108
+ - test/source/_layouts/default.html
109
+ - test/source/_layouts/simple.html
110
+ - test/source/_posts/2008-02-02-not-published.textile
111
+ - test/source/_posts/2008-02-02-published.textile
112
+ - test/source/_posts/2008-10-18-foo-bar.textile
113
+ - test/source/_posts/2008-11-21-complex.textile
114
+ - test/source/_posts/2008-12-03-permalinked-post.textile
115
+ - test/source/_posts/2008-12-13-include.markdown
116
+ - test/source/_posts/2009-01-27-array-categories.textile
117
+ - test/source/_posts/2009-01-27-categories.textile
118
+ - test/source/_posts/2009-01-27-category.textile
119
+ - test/source/category/_posts/2008-9-23-categories.textile
120
+ - test/source/css/screen.css
121
+ - test/source/foo/_posts/bar/2008-12-12-topical-post.textile
122
+ - test/source/index.html
123
+ - test/source/z_category/_posts/2008-9-23-categories.textile
124
+ - test/suite.rb
125
+ - test/test_filters.rb
126
+ - test/test_generated_site.rb
127
+ - test/test_post.rb
128
+ - test/test_site.rb
129
+ - test/test_tags.rb
130
+ has_rdoc: true
131
+ homepage: http://github.com/mojombo/jekyll
132
+ post_install_message:
133
+ rdoc_options:
134
+ - --charset=UTF-8
135
+ require_paths:
136
+ - lib
137
+ required_ruby_version: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: "0"
142
+ version:
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - ">="
146
+ - !ruby/object:Gem::Version
147
+ version: "0"
148
+ version:
149
+ requirements: []
150
+
151
+ rubyforge_project: jekyll
152
+ rubygems_version: 1.2.0
153
+ signing_key:
154
+ specification_version: 2
155
+ summary: Jekyll is a simple, blog aware, static site generator.
156
+ test_files:
157
+ - test/helper.rb
158
+ - test/suite.rb
159
+ - test/test_filters.rb
160
+ - test/test_generated_site.rb
161
+ - test/test_post.rb
162
+ - test/test_site.rb
163
+ - test/test_tags.rb