Class: Jekyll::Commands::Paginate
- Inherits:
-
Command
- Object
- Command
- Jekyll::Commands::Paginate
- Defined in:
- lib/jekyll/commands/paginate.rb
Class Method Summary collapse
- .config(options) ⇒ Object
- .init_with_program(prog) ⇒ Object
- .paginate(pages, site) ⇒ Object
- .process(options) ⇒ Object
- .site(config) ⇒ Object
- .target_pages(site) ⇒ Object
Class Method Details
.config(options) ⇒ Object
27 28 29 30 31 |
# File 'lib/jekyll/commands/paginate.rb', line 27 def config() defaults = Configuration[PaginateCommand::DEFAULTS] config = () Utils.deep_merge_hashes(defaults, config) end |
.init_with_program(prog) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/jekyll/commands/paginate.rb', line 5 def init_with_program(prog) prog.command(:paginate) do |c| c.version Jekyll::PaginateCommand::VERSION c.syntax 'paginate [options]' c.description 'Generate pagination templates' c.option 'quiet', '-q', '--quiet', 'Silence output.' c.option 'verbose', '-V', '--verbose', 'Print verbose output.' c.action do |_, | process() end end end |
.paginate(pages, site) ⇒ Object
43 44 45 46 47 48 49 50 |
# File 'lib/jekyll/commands/paginate.rb', line 43 def paginate(pages, site) t = Time.now Jekyll.logger.info "Source:", site.config['source'] Jekyll.logger.info "Destination:", site.config['paginate_destination'] Jekyll.logger.info "Paginating..." pages.each { |page| PaginateCommand::Pagination.new(page, site).generate } Jekyll.logger.info "", "done in #{(Time.now - t).round(3)} seconds." end |
.process(options) ⇒ Object
20 21 22 23 24 25 |
# File 'lib/jekyll/commands/paginate.rb', line 20 def process() config = config() site = site(config) pages = target_pages(site) paginate(pages, site) end |
.site(config) ⇒ Object
33 34 35 36 37 |
# File 'lib/jekyll/commands/paginate.rb', line 33 def site(config) site = Site.new(config) site.read site end |
.target_pages(site) ⇒ Object
39 40 41 |
# File 'lib/jekyll/commands/paginate.rb', line 39 def target_pages(site) site.pages.select { |page| page['paginate'] } end |