mattmatt-jekyll 0.4.1 → 0.4.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.
data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ ==
2
+ * Minor Enhancements
3
+ * Changed date format on wordpress converter (zeropadding) [github.com/dysinger]
4
+ * Bug Fixes
5
+ * Add jekyll binary as executable to gemspec [github.com/dysinger]
6
+
1
7
  == 0.4.0 / 2009-02-03
2
8
  * Major Enhancements
3
9
  * Switch to Jeweler for packaging tasks
data/Rakefile CHANGED
@@ -55,7 +55,7 @@ task :default => :test
55
55
 
56
56
  desc "Open an irb session preloaded with this library"
57
57
  task :console do
58
- sh "irb -rubygems -r ./lib/jekyll.rb"
58
+ sh "irb -rubygems -I lib -r jekyll.rb"
59
59
  end
60
60
 
61
61
  # converters
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 0
3
3
  :minor: 4
4
- :patch: 1
4
+ :patch: 3
data/bin/jekyll CHANGED
@@ -61,7 +61,11 @@ opts = OptionParser.new do |opts|
61
61
  opts.on("--permalink [TYPE]", "Use 'date' (default) for YYYY/MM/DD") do |style|
62
62
  Jekyll.permalink_style = (style || 'date').to_sym
63
63
  end
64
-
64
+
65
+ opts.on("--version", "Display current version") do
66
+ puts "Jekyll " + Jekyll.version
67
+ exit 0
68
+ end
65
69
  end
66
70
 
67
71
  opts.parse!
@@ -10,8 +10,8 @@ require 'fileutils'
10
10
 
11
11
  module Jekyll
12
12
  module WordPress
13
-
14
- # Reads a MySQL database via Sequel and creates a post file for each
13
+
14
+ # Reads a MySQL database via Sequel and creates a post file for each
15
15
  # post in wp_posts that has post_status = 'publish'.
16
16
  # This restriction is made because 'draft' posts are not guaranteed to
17
17
  # have valid dates.
@@ -19,20 +19,21 @@ module Jekyll
19
19
 
20
20
  def self.process(dbname, user, pass, host = 'localhost')
21
21
  db = Sequel.mysql(dbname, :user => user, :password => pass, :host => host)
22
-
22
+
23
23
  FileUtils.mkdir_p "_posts"
24
-
24
+
25
25
  db[QUERY].each do |post|
26
26
  # Get required fields and construct Jekyll compatible name
27
27
  title = post[:post_title]
28
28
  slug = post[:post_name]
29
29
  date = post[:post_date]
30
30
  content = post[:post_content]
31
-
32
- name = [date.year, date.month, date.day, slug].join('-') + ".markdown"
31
+
32
+ name = "%02d-%02d-%02d-%s.markdown" % [date.year, date.month, date.day,
33
+ slug]
33
34
 
34
35
  # Get the relevant fields as a hash, delete empty fields and convert
35
- # to YAML for the header
36
+ # to YAML for the header
36
37
  data = {
37
38
  'layout' => 'post',
38
39
  'title' => title.to_s,
@@ -51,4 +52,4 @@ module Jekyll
51
52
 
52
53
  end
53
54
  end
54
- end
55
+ end
data/lib/jekyll/post.rb CHANGED
@@ -46,11 +46,11 @@ module Jekyll
46
46
  self.published = true
47
47
  end
48
48
 
49
- if self.categories.empty?
49
+ self.data['categories'] = if self.categories.empty?
50
50
  if self.data.has_key?('category')
51
51
  self.categories << self.data['category']
52
52
  elsif self.data.has_key?('categories')
53
- self.categories = self.data['categories'].split
53
+ self.categories = (self.data['categories'] || "").split
54
54
  end
55
55
  end
56
56
  end
data/lib/jekyll.rb CHANGED
@@ -43,8 +43,6 @@ require 'jekyll/tags/include'
43
43
  require 'jekyll/albino'
44
44
 
45
45
  module Jekyll
46
- VERSION = '0.3.0'
47
-
48
46
  class << self
49
47
  attr_accessor :source, :dest, :lsi, :pygments, :markdown_proc, :content_type, :permalink_style
50
48
  end
@@ -61,4 +59,9 @@ module Jekyll
61
59
  Jekyll.dest = dest
62
60
  Jekyll::Site.new(source, dest).process
63
61
  end
62
+
63
+ def self.version
64
+ yml = YAML.load(File.read(File.join(File.dirname(__FILE__), *%w[.. VERSION.yml])))
65
+ "#{yml[:major]}.#{yml[:minor]}.#{yml[:patch]}"
66
+ end
64
67
  end
@@ -0,0 +1,7 @@
1
+ ---
2
+ layout: default
3
+ title: Categories in YAML
4
+ categories:
5
+ ---
6
+
7
+ Best *post* ever
data/test/test_post.rb CHANGED
@@ -84,6 +84,7 @@ class TestPost < Test::Unit::TestCase
84
84
  def test_yaml_category
85
85
  p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2009-01-27-category.textile")
86
86
  assert p.categories.include?('foo')
87
+ assert p.data['categories'].include?('foo')
87
88
  end
88
89
 
89
90
  def test_yaml_categories
@@ -91,6 +92,13 @@ class TestPost < Test::Unit::TestCase
91
92
  assert p.categories.include?('foo')
92
93
  assert p.categories.include?('bar')
93
94
  assert p.categories.include?('baz')
95
+ assert p.data['categories'].include?('foo')
96
+ end
97
+
98
+ def test_empty_yaml_categories
99
+ p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2009-01-27-no-categories.textile")
100
+ assert p.categories.empty?
101
+ assert p.data['categories'].empty?
94
102
  end
95
103
 
96
104
  def test_render
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mattmatt-jekyll
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Preston-Werner
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-02-05 00:00:00 -08:00
12
+ date: 2009-02-16 00:00:00 -08:00
13
13
  default_executable: jekyll
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: RedCloth
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,6 +24,7 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: liquid
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
@@ -32,6 +34,7 @@ dependencies:
32
34
  version:
33
35
  - !ruby/object:Gem::Dependency
34
36
  name: classifier
37
+ type: :runtime
35
38
  version_requirement:
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
@@ -41,6 +44,7 @@ dependencies:
41
44
  version:
42
45
  - !ruby/object:Gem::Dependency
43
46
  name: maruku
47
+ type: :runtime
44
48
  version_requirement:
45
49
  version_requirements: !ruby/object:Gem::Requirement
46
50
  requirements:
@@ -50,6 +54,7 @@ dependencies:
50
54
  version:
51
55
  - !ruby/object:Gem::Dependency
52
56
  name: directory_watcher
57
+ type: :runtime
53
58
  version_requirement:
54
59
  version_requirements: !ruby/object:Gem::Requirement
55
60
  requirements:
@@ -59,6 +64,7 @@ dependencies:
59
64
  version:
60
65
  - !ruby/object:Gem::Dependency
61
66
  name: open4
67
+ type: :runtime
62
68
  version_requirement:
63
69
  version_requirements: !ruby/object:Gem::Requirement
64
70
  requirements:
@@ -112,6 +118,10 @@ files:
112
118
  - test/dest/2008/12
113
119
  - test/dest/2008/12/13
114
120
  - test/dest/2008/12/13/include.html
121
+ - test/dest/2009
122
+ - test/dest/2009/01
123
+ - test/dest/2009/01/27
124
+ - test/dest/2009/01/27/no-categories.html
115
125
  - test/dest/_posts
116
126
  - test/dest/_posts/2008-02-02-not-published.html
117
127
  - test/dest/_posts/2008-02-02-published.html
@@ -121,6 +131,7 @@ files:
121
131
  - test/dest/_posts/2008-12-13-include.html
122
132
  - test/dest/_posts/2009-01-27-categories.html
123
133
  - test/dest/_posts/2009-01-27-category.html
134
+ - test/dest/_posts/2009-01-27-no-categories.html
124
135
  - test/dest/category
125
136
  - test/dest/category/2008
126
137
  - test/dest/category/2008/09
@@ -179,6 +190,7 @@ files:
179
190
  - test/source/_posts/2008-12-13-include.markdown
180
191
  - test/source/_posts/2009-01-27-categories.textile
181
192
  - test/source/_posts/2009-01-27-category.textile
193
+ - test/source/_posts/2009-01-27-no-categories.textile
182
194
  - test/source/category
183
195
  - test/source/category/_posts
184
196
  - test/source/category/_posts/2008-9-23-categories.textile