class Middleman::Cli::Extension

A thor task for creating new projects

Public Class Methods

source_root() click to toggle source

Template files are relative to this file @return [String]

# File lib/middleman-core/cli/extension.rb, line 17
def self.source_root
  File.join(File.dirname(__FILE__), "..", "templates", "extension")
end

Public Instance Methods

extension() click to toggle source

The extension task @param [String] name

# File lib/middleman-core/cli/extension.rb, line 25
def extension
  generate_gitignore!
  template "Rakefile", File.join(name, "Rakefile")
  template "gemspec", File.join(name, "#{name}.gemspec")
  template "Gemfile", File.join(name, "Gemfile")
  template "lib/middleman_extension.rb", File.join(name, "lib", "middleman_extension.rb")
  template "lib/lib.rb", File.join(name, "lib", "#{name}.rb")
  template "features/support/env.rb", File.join(name, "features", "support", "env.rb")
  empty_directory File.join(name, "fixtures")
end
generate_gitignore!() click to toggle source

Write a .gitignore file for project @return [void]

# File lib/middleman-core/cli/extension.rb, line 42
def generate_gitignore!
  return unless options[:git]
  copy_file "gitignore", File.join(name, ".gitignore")
end