Sha256: 187fbe0aa1b3b307b8176e28f660ff963b6f6caeac3621523f142fe13e0f08a5
Contents?: true
Size: 1.54 KB
Versions: 1
Compression:
Stored size: 1.54 KB
Contents
#!/usr/bin/env ruby $:.unshift File.join(File.dirname(__FILE__), '..', 'lib') require 'shining' include Shining::FileMethods ACTIONS = { :new_on! => ['build'], :new_slide! => ['slide'], :compile_templates! => ['compile'], :play => ['play', 'go'], :deploy => ['deploy'], :remove => ['remove', 'delete', 'rm'] } def bail! reason Shining.error reason exit -2 end def figure_what_to_do! help_and_exit! if ARGV.empty? if ACTIONS.values.flatten.include? ARGV.first action = ACTIONS.select { |action, args| args.include? ARGV.first }.flatten.first send action, *ARGV[1..(ARGV.length - 1)] else new_on! ARGV.first end end def help_and_exit! STDERR.puts <<-HELP Shine - Generates a new Shining presentation Usage: shine <directory> Example: shine mycoolpreso HELP exit -1 end def new_on! dir Shining::Preso.new dir end def new_slide! name, format = 'html' preso = Shining::Preso.open Dir.pwd name, extension = name_and_extension(name) extension = format if extension.blank? preso.new_slide "#{name}.#{extension}", :with => ['styles', 'script'] end def compile_templates! preso = Shining::Preso.open Dir.pwd preso.compile_templates! end def play preso = Shining::Preso.open Dir.pwd player = Shining::Player.new preso player.go! end def deploy name = nil preso = Shining::Preso.open Dir.pwd Shining::Heroku.deploy preso, name end def remove slide preso = Shining::Preso.open Dir.pwd preso.remove_slide slide end figure_what_to_do!
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
shining-1.3.4 | bin/shine |