lib/nanoc.rb in nanoc-1.6.2 vs lib/nanoc.rb in nanoc-2.0

- old
+ new

@@ -1,42 +1,24 @@ module Nanoc - VERSION = '1.6.2' + VERSION = '2.0' - def self.ensure_in_site - unless in_site? - $stderr.puts 'ERROR: The current working directory does not seem to ' + - 'be a valid/complete nanoc site directory; aborting.' unless $quiet - exit - end + def self.load_file(*path) + full_path = [ File.dirname(__FILE__), 'nanoc' ] + path + Dir[File.join(full_path)].each { |f| require f } end - private - - def self.in_site? - return false unless File.directory?('content') - return false unless File.directory?('layouts') - return false unless File.directory?('lib') - return false unless File.directory?('tasks') - return false unless File.directory?('templates') - return false unless File.exist?('config.yaml') - return false unless File.exist?('meta.yaml') - return false unless File.exist?('Rakefile') - - true - end - end -require File.dirname(__FILE__) + '/nanoc/enhancements.rb' +# Load base +Nanoc.load_file('base', 'enhancements.rb') +Nanoc.load_file('base', 'core_ext', '*.rb') +Nanoc.load_file('base', 'plugin.rb') +Nanoc.load_file('base', '*.rb') -require File.dirname(__FILE__) + '/nanoc/creator.rb' -require File.dirname(__FILE__) + '/nanoc/compiler.rb' +# Load plugins +Nanoc.load_file('data_sources', '*.rb') +Nanoc.load_file('filters', '*.rb') +Nanoc.load_file('layout_processors', '*.rb') -$nanoc_creator = Nanoc::Creator.new -$nanoc_compiler = Nanoc::Compiler.new - -require File.dirname(__FILE__) + '/nanoc/core_ext.rb' -require File.dirname(__FILE__) + '/nanoc/filters.rb' -require File.dirname(__FILE__) + '/nanoc/page.rb' -require File.dirname(__FILE__) + '/nanoc/page_drop.rb' -require File.dirname(__FILE__) + '/nanoc/page_proxy.rb' +# Get global binding +$nanoc_binding = binding