Sha256: bb0008e757be61795f569ba405587616f5781bc76775281238d158bcded5ec49

Contents?: true

Size: 1.24 KB

Versions: 13

Compression:

Stored size: 1.24 KB

Contents

# frozen_string_literal: true

require 'avm/eac_writings_base0/project_build'
require 'eac_cli/core_ext'
require 'eac_ruby_utils/console/docopt_runner'

module Avm
  module Tools
    class Runner
      class LocalProject
        class EacWritingsBase0
          class BuildChapters
            runner_with :help do
              arg_opt '-o', '--output-dir', 'Output chapters to specific directory.'
            end

            def run
              runner_context.call(:project_banner)
              output_dir.mkpath
              project.chapters.each_with_index do |c, i|
                ::Avm::EacWritingsBase0::ProjectBuild.new(project, chapter_build_options(c, i))
              end
            end

            private

            def chapter_build_options(chapter, index)
              output_name = "#{(index + 1).to_s.rjust(3, '0')}_#{chapter}.pdf"
              { output_file: output_dir.join(output_name), chapter: chapter }
            end

            def output_dir_uncached
              (
                parsed.output_dir || project.default_output_dir.join('chapters')
              ).to_pathname
            end

            def project
              runner_context.call(:project)
            end
          end
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
avm-tools-0.95.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.94.3 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.94.2 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.94.1 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.94.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.93.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.92.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.91.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.90.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.89.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.88.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.87.1 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb
avm-tools-0.87.0 lib/avm/tools/runner/local_project/eac_writings_base0/build_chapters.rb