Sha256: ce2a08830a8af62bcd29a143f138d2e0868592490cf830b9502be03186f69c64

Contents?: true

Size: 1.65 KB

Versions: 7

Compression:

Stored size: 1.65 KB

Contents

# frozen_string_literal: true
class Asciidoctor::Section
  def numbered_title opts = {}
    unless (@cached_numbered_title ||= nil)
      slevel = @level == 0 && @special ? 1 : @level
      if @numbered && !@caption && slevel <= (@document.attr 'sectnumlevels', 3).to_i
        @is_numbered = true
        @cached_formal_numbered_title = if @document.doctype == 'book'
          if slevel == 0
            @cached_numbered_title = %(#{sectnum nil, ':'} #{title})
            %(#{@document.attr 'part-signifier', 'Part'} #{@cached_numbered_title}).lstrip
          elsif slevel == 1
            @cached_numbered_title = %(#{sectnum} #{title})
            %(#{@document.attr 'chapter-signifier', (@document.attr 'chapter-label', 'Chapter')} #{@cached_numbered_title}).lstrip
          else
            @cached_numbered_title = %(#{sectnum} #{title})
          end
        else
          @cached_numbered_title = %(#{sectnum} #{title})
        end
      elsif slevel == 0
        @is_numbered = false
        @cached_numbered_title = @cached_formal_numbered_title = title
      else
        @is_numbered = false
        @cached_numbered_title = @cached_formal_numbered_title = captioned_title
      end
    end
    opts[:formal] ? @cached_formal_numbered_title : @cached_numbered_title
  end unless method_defined? :numbered_title

  def part?
    @document.doctype == 'book' && @level == 0 && !@special
  end unless method_defined? :part?

  def chapter?
    @document.doctype == 'book' && (@level == 1 || (@special && @level == 0))
  end unless method_defined? :chapter?

  def part_or_chapter?
    @document.doctype == 'book' && @level < 2
  end unless method_defined? :part_or_chapter?
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
asciidoctor-pdf-1.5.0.beta.8 lib/asciidoctor/pdf/ext/asciidoctor/section.rb
asciidoctor-pdf-1.5.0.beta.7 lib/asciidoctor/pdf/ext/asciidoctor/section.rb
asciidoctor-pdf-1.5.0.beta.6 lib/asciidoctor/pdf/ext/asciidoctor/section.rb
asciidoctor-pdf-1.5.0.beta.5 lib/asciidoctor-pdf/asciidoctor_ext/section.rb
asciidoctor-pdf-1.5.0.beta.4 lib/asciidoctor-pdf/asciidoctor_ext/section.rb
asciidoctor-pdf-1.5.0.beta.3 lib/asciidoctor-pdf/asciidoctor_ext/section.rb
asciidoctor-pdf-1.5.0.beta.2 lib/asciidoctor-pdf/asciidoctor_ext/section.rb