class Middleman::Cli::Console

The CLI Console class

Public Class Methods

interact_with(context) click to toggle source

Start an interactive console in the context of the provided object. @param [Object] context @return [void]

# File lib/middleman-cli/console.rb, line 38
def self.interact_with(context)
  IRB.setup nil
  IRB.conf[:MAIN_CONTEXT] = IRB::Irb.new.context
  require 'irb/ext/multi-irb'
  IRB.irb nil, context
end

Public Instance Methods

console() click to toggle source
# File lib/middleman-cli/console.rb, line 17
def console
  require 'middleman-core'
  require 'irb'

  opts = {
    environment: options['environment'],
    debug: options['verbose']
  }

  @app = ::Middleman::Application.new do
    config[:environment] = opts[:environment].to_sym if opts[:environment]

    ::Middleman::Logger.singleton(opts[:debug] ? 0 : 1, opts[:instrumenting] || false)
  end

  self.class.interact_with @app
end