Class: Jekyll::TransformGenerator

Inherits:
Generator
  • Object
show all
Defined in:
lib/jekyll-transform.rb

Instance Method Summary collapse

Instance Method Details

#generate(site) ⇒ Object

TODO: Handle drafts.



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/jekyll-transform.rb', line 76

def generate(site)
  return unless site.config.key?('transform')

  folder = site.config['transform']['folder'] || '_trans'
  source = File.join(site.source, folder)
  files = transform_entries(source)
  files.each do |file|
    if is_post?(File.join(source, file))
      post = TransformPost.new(site, source, File.dirname(file), File.basename(file))
      site.posts << post
    else
      page = TransformPage.new(site, source, File.dirname(file), File.basename(file))
      site.pages << page
    end
  end
end

#is_post?(file) ⇒ Boolean

Returns:

  • (Boolean)


99
100
101
# File 'lib/jekyll-transform.rb', line 99

def is_post?(file)
  /\d\d\d\d-\d\d-\d\d/ =~ File.basename(file)
end

#transform_entries(dir) ⇒ Object



93
94
95
96
97
# File 'lib/jekyll-transform.rb', line 93

def transform_entries(dir)
  Dir.glob(File.join(dir, '**/*')).map do |d|
    d.sub(dir+'/', '')
  end
end