Sha256: 106e01466662d4cffedb923b57339b91e000405458c24e5ce3722a7d93c7bdab

Contents?: true

Size: 1.13 KB

Versions: 107

Compression:

Stored size: 1.13 KB

Contents

# frozen_string_literal: true

module Avm
  module EacWritingsBase0
    class ProjectBuild
      class << self
        def chapter_filename(chapter_name)
          "chapter_#{chapter_name}"
        end
      end

      module ChaptersContent
        private

        def chapter
          options[:chapter]
        end

        def chapter_filename(chapter_name)
          ::Avm::EacWritingsBase0::ProjectBuild.chapter_filename(chapter_name)
        end

        def check_chapter
          return unless chapter
          return if project.chapters.include?(chapter)

          fatal_error("Chapter not found: \"#{chapter}\" (List: #{project.chapters})")
        end

        def include_content
          main_path = source_temp_dir.join('main.tex')
          main_path.write(main_path.read.gsub(CONTENT_VAR, include_chapters_content))
        end

        def include_chapters_content
          r = chapters_content
          r = "\\maketitle\n\n#{r}" if chapter.blank?
          r
        end

        def chapters_content
          project.chapters.map { |c| "\\include{#{chapter_filename(c)}}" }.join("\n")
        end
      end
    end
  end
end

Version data entries

107 entries across 107 versions & 2 rubygems

Version Path
avm-tools-0.130.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.17.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.129.1 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.16.1 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.129.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.16.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.128.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.15.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.14.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.13.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.127.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.12.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.126.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.11.1 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.125.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.11.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.124.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.10.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb
avm-tools-0.123.0 lib/avm/eac_writings_base0/project_build/chapters_content.rb
eac_tools-0.9.0 sub/avm-tools/lib/avm/eac_writings_base0/project_build/chapters_content.rb