Sha256: 07973c4a1931df19acc73b962fcd1f14c727bda5a174d502059014c04db99a57

Contents?: true

Size: 668 Bytes

Versions: 5

Compression:

Stored size: 668 Bytes

Contents

require "prez/error"
require "thor/actions"
require "thor/group"

module Prez
  class New < Thor::Group
    include Thor::Actions
    argument :name, type: :string

    def check_file!
      if File.exists? filename
        raise Prez::Error.new("There is already a presentation file named '#{filename}'")
      end
    end

    def generate_prez
      template "new.prez.tt", "#{name}.prez"
    end

    private

    def filename
      if name =~ /\.prez$/
        name
      else
        "#{name}.prez"
      end
    end

    class << self
      def source_root
        File.absolute_path File.expand_path("../../../templates", __FILE__)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
prez-0.0.6 lib/prez/new.rb
prez-0.0.5 lib/prez/new.rb
prez-0.0.4 lib/prez/new.rb
prez-0.0.3 lib/prez/new.rb
prez-0.0.2 lib/prez/new.rb