module Middleman::CoreExtensions::Extensions::InstanceMethods
Instance methods
Public Class Methods
new()
click to toggle source
Load features before starting server
Calls superclass method
# File lib/middleman-core/core_extensions/extensions.rb, line 124 def initialize super self.class.inst = self run_hook :before_configuration # Search the root of the project for required files $LOAD_PATH.unshift(root) # Check for and evaluate local configuration local_config = File.join(root, "config.rb") if File.exists? local_config logger.debug "== Reading: Local config" instance_eval File.read(local_config), local_config, 1 end if autoload_sprockets begin require "middleman-sprockets" activate(:sprockets) rescue LoadError end end run_hook :build_config if build? run_hook :development_config if development? run_hook :after_configuration logger.debug "Loaded extensions:" self.class.extensions.each do |ext| logger.debug "== Extension: #{ext}" end end
Public Instance Methods
activate(ext, options={}, &block)
click to toggle source
This method is available in the project’s ‘config.rb`. It takes a underscore-separated symbol, finds the appropriate feature module and includes it.
activate :lorem
@param [Symbol, Module] ext Which extension to activate @return [void]
# File lib/middleman-core/core_extensions/extensions.rb, line 108 def activate(ext, options={}, &block) ext_module = if ext.is_a?(Module) ext else ::Middleman::Extensions.load(ext.to_sym) end if ext_module.nil? logger.error "== Unknown Extension: #{ext}" else logger.debug "== Activating: #{ext}" self.class.register(ext_module, options, &block) end end