class Middleman::PlaintextExtension

Public Instance Methods

manipulate_resource_list(resources) click to toggle source

A Sitemap Manipulator

# File lib/middleman-plaintext/extension.rb, line 16
def manipulate_resource_list(resources)
  resources | resources.select(&method(:handled_by_us?)).map(&method(:textify))
end

Private Instance Methods

handled_by_us?(resource) click to toggle source
# File lib/middleman-plaintext/extension.rb, line 22
def handled_by_us?(resource)
  options[:handle_file].call(resource)
end
textify(resource) click to toggle source
# File lib/middleman-plaintext/extension.rb, line 26
def textify(resource)
  to = resource.destination_path.sub("/index.html", "/#{options[:filename]}")
  source = resource.file_descriptor[:full_path].to_s

  ::Middleman::Sitemap::Resource.new(app.sitemap, to, source).tap do |r|
    r.options.merge!(resource.options.merge(
      :directory_index => false,
      :layout => options[:layout]
    ))
    r.add_metadata resource.metadata
    r.extend Middleman::Blog::BlogArticle
    r.blog_controller = app.extensions[:blog]["instance_0"]
  end
end