require 'yaml' require 'fileutils' require 'pathname' require 'active_support/core_ext/hash' require 'directory_watcher' require 'tilt' require 'plate/version' require 'plate/errors' module Plate autoload :CLI, 'plate/cli' autoload :Dsl, 'plate/dsl' autoload :Builder, 'plate/builder' autoload :Callbacks, 'plate/callbacks' autoload :Layout, 'plate/layout' autoload :Site, 'plate/site' autoload :BloggingHelper, 'plate/helpers/blogging_helper' autoload :MetaHelper, 'plate/helpers/meta_helper' autoload :PartialsHelper, 'plate/helpers/partials_helper' autoload :URLHelper, 'plate/helpers/url_helper' autoload :View, 'plate/view' autoload :PostCollection, 'plate/post_collection' autoload :HashProxy, 'plate/hash_proxy' autoload :Asset, 'plate/asset' autoload :Draft, 'plate/draft' autoload :DynamicPage, 'plate/dynamic_page' autoload :Partial, 'plate/partial' autoload :Page, 'plate/page' autoload :Post, 'plate/post' autoload :StaticPage, 'plate/static_page' autoload :Engine, 'plate/engine' autoload :HamlTemplate, 'plate/haml_template' autoload :LessTemplate, 'plate/less_template' autoload :MarkdownTemplate, 'plate/markdown_template' autoload :SassTemplate, 'plate/sass_template' autoload :ScssTemplate, 'plate/scss_template' extend Engine @engines ||= {} # Set up the basic engines that are supported by Plate. Add your own this same way. # Thanks to sprockets for the inspiration. # https://github.com/sstephenson/sprockets # Assets register_asset_engine :coffee, Tilt::CoffeeScriptTemplate register_asset_engine :less, LessTemplate register_asset_engine :sass, SassTemplate register_asset_engine :scss, ScssTemplate # Layouts & Markup register_template_engine :erb, Tilt::ERBTemplate register_template_engine :haml, HamlTemplate register_template_engine :md, MarkdownTemplate register_template_engine :markdown, MarkdownTemplate end