lib/keydown/tasks/slides.rb in keydown-0.9.1 vs lib/keydown/tasks/slides.rb in keydown-0.9.2

- old
+ new

@@ -1,5 +1,8 @@ +require 'sass' +require 'compass' + module Keydown class Tasks < Thor desc "slides FILE", "Convert a Keydown FILE into an HTML presentation" @@ -19,12 +22,17 @@ slide_deck = SlideDeck.new(File.new(file).read) backgrounds = slide_deck.slides.collect do |slide| slide.background_image unless slide.background_image.empty? end.compact - css_template = File.new(File.join(Tasks.template_dir, '..', 'keydown.css.erb')) + context = OpenStruct.new({ :backgrounds => backgrounds }) + scss_template = Tilt.new(File.join(Tasks.template_dir, '..', 'keydown.scss.erb')) + scss = scss_template.render(context) + + compass_path = File.join(Gem.loaded_specs['compass'].full_gem_path, 'frameworks', 'compass', 'stylesheets') + create_file 'css/keydown.css', :force => true do - ERB.new(css_template.read).result(binding) + Sass::Engine.new(scss, :syntax => :scss, :load_paths => [compass_path]).render end presentation = file.gsub('md', 'html') create_file presentation, :force => true do \ No newline at end of file