henrik-jekyll 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
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