Sha256: 2eee547aef51105025afaf6a20c969add479d2c65f962bef9093bf6fd126c5c1
Contents?: true
Size: 1.3 KB
Versions: 17
Compression:
Stored size: 1.3 KB
Contents
usage 'shell' summary 'open a shell on the Nanoc environment' aliases 'console' description " Open an IRB shell on a context that contains @items, @layouts, and @config. " module Nanoc::CLI::Commands class Shell < ::Nanoc::CLI::CommandRunner def run require 'pry' load_site Nanoc::Int::Context.new(env).pry end protected def env self.class.env_for_site(site) end def self.reps_for(site) Nanoc::Int::ItemRepRepo.new.tap do |reps| action_provider = Nanoc::Int::ActionProvider.named(:rule_dsl).for(site) builder = Nanoc::Int::ItemRepBuilder.new(site, action_provider, reps) builder.run end end def self.view_context_for(site) Nanoc::ViewContext.new( reps: reps_for(site), items: site.items, dependency_tracker: Nanoc::Int::DependencyTracker::Null.new, compilation_context: nil, snapshot_repo: nil, ) end def self.env_for_site(site) view_context = view_context_for(site) { items: Nanoc::ItemCollectionWithRepsView.new(site.items, view_context), layouts: Nanoc::LayoutCollectionView.new(site.layouts, view_context), config: Nanoc::ConfigView.new(site.config, view_context), } end end end runner Nanoc::CLI::Commands::Shell
Version data entries
17 entries across 17 versions & 1 rubygems