class Awestruct::Config

Attributes

config_dir[RW]
debug[RW]
dir[RW]
extension_dir[RW]
ignore[RW]
images_dir[RW]
input_dir[RW]
layouts_dir[RW]
options[RW]
output_dir[RW]
perf[RW]
quiet[RW]
skin_dir[RW]
stylesheets_dir[RW]
tmp_dir[RW]
track_dependencies[RW]
verbose[RW]

Public Class Methods

new(opts = Awestruct::CLI::Options.new) click to toggle source
# File lib/awestruct/config.rb, line 27
def initialize(opts = Awestruct::CLI::Options.new)
  @dir             = Pathname.new(File.expand_path(Pathname.new( opts.source_dir )))
  @layouts_dir     = Pathname.new( File.join(@dir, '_layouts') )
  @config_dir      = Pathname.new( File.join(@dir, '_config') )
  @input_dir       = @dir
  @output_dir      = Pathname.new(File.expand_path(Pathname.new( opts.output_dir )))
  @extension_dir   = Pathname.new( File.join(@dir, '_ext') )
  @skin_dir        = Pathname.new( File.join(@dir, '_skin') )
  @tmp_dir         = Pathname.new( File.join(@dir, '_tmp') )
  @images_dir      = Pathname.new( File.join(@dir, 'images') )
  @stylesheets_dir = Pathname.new( File.join(@dir, 'stylesheets') )

  @options = opts
  @verbose = opts.verbose
  @debug = opts.debug
  @perf = opts.perf_log

  # Dir[] doesn't like empty list
  ignore_file = File.join(@dir, ".awestruct_ignore")
  if File.exist?(ignore_file)
    ignore_stmts = IO.read(ignore_file).each_line.map(&:strip)
  end

  @ignore = (!ignore_stmts.nil? and ignore_stmts.size > 0) ? Dir[*ignore_stmts] : []

  @track_dependencies = false
end