Class: Gibier::StaticGenerator
- Inherits:
-
Object
- Object
- Gibier::StaticGenerator
- Includes:
- HamlHelper
- Defined in:
- lib/gibier/static_generator.rb
Instance Method Summary collapse
- #generate_page(name, assets_path = 'assets', slide_dir = nil) ⇒ Object
- #generate_pages(assets_path = 'assets') ⇒ Object
-
#initialize(data_dir, target_dir) ⇒ StaticGenerator
constructor
A new instance of StaticGenerator.
Methods included from HamlHelper
Constructor Details
#initialize(data_dir, target_dir) ⇒ StaticGenerator
Returns a new instance of StaticGenerator.
5 6 7 8 9 |
# File 'lib/gibier/static_generator.rb', line 5 def initialize(data_dir, target_dir) @data_dir = data_dir @target_dir = target_dir @slide_loader = Gibier::SlideLoader.new end |
Instance Method Details
#generate_page(name, assets_path = 'assets', slide_dir = nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/gibier/static_generator.rb', line 20 def generate_page(name, assets_path = 'assets', = nil) @slide_loader.(name) src_dir = "#{@data_dir}/#{name}" = "#{@target_dir}/#{name}" unless FileUtils.mkdir_p = File.('../views/slide.haml', @data_dir) convert_html(, "#{}/index.html", slide_name: name, static: true, assets_path: assets_path) assets_dir = "#{@target_dir}/assets/#{name}" FileUtils.mkdir_p assets_dir FileUtils.cp_r("#{src_dir}/css", assets_dir) FileUtils.cp_r("#{src_dir}/images", assets_dir) js_dir = "#{@target_dir}/assets/#{name}/javascripts" FileUtils.mkdir_p js_dir build(name, "#{js_dir}/application.js") end |
#generate_pages(assets_path = 'assets') ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/gibier/static_generator.rb', line 11 def generate_pages(assets_path = 'assets') Gibier::SlideHelper.(@data_dir) do |name| generate_page(name, assets_path) end convert_html(File.('../views/index.haml', @data_dir), "docs/index.html", slides: @slide_loader.) FileUtils.cp_r(File.('../assets', @data_dir), "docs") end |