module Plasmoid::Generator::TemplateHelper

Public Class Methods

included(base) click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 4
def self.included(base)
  base.class_eval do
  end
end

Public Instance Methods

mkdir(path) click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 41
def mkdir(path)
  destination = File.join(target_dir, path)
  FileUtils.mkpath(destination)
  $stdout.puts ">> mkdir\t#{destination}"
end
prefix_dir() click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 13
def prefix_dir
  if self.class == Plasmoid::WebkitGenerator
    "webkit"
  elsif self.class == Plasmoid::RubyGenerator
    "ruby"
  elsif self.class == Plasmoid::PythonGenerator
    "python"
  end
end
render_template(source) click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 23
def render_template(source)
  template_contents = File.read(File.join(template_dir, source))
  template          = ERB.new(template_contents, nil, '<>')

  template.result(binding).gsub(/\n\n\n+/, "\n\n")
end
template_dir() click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 9
def template_dir
  @template_dir ||= File.join(File.dirname(__FILE__), 'templates', prefix_dir)
end
write_template(source, destination = source) click to toggle source
# File lib/plasmoid/generator/template_helper.rb, line 30
def write_template(source, destination = source)
  final_destination = File.join(target_dir, destination)
  template_result   = render_template(source)

  File.open(final_destination, 'w') do |file|
    file.write(template_result)
  end

  $stdout.puts ">> create\t#{final_destination}"
end