class Asciidoctor::AbstractBlock

def << block

Returns The parent Block

# => 2
block.blocks.size
# => true
block.blocks?
block << Block.new(block, :paragraph, source: 'p2')
block << Block.new(block, :paragraph, source: 'p1')

block = Block.new(parent, :preamble, content_model: :compound)

Examples

block - The new child block.

Public: Append a content block to this block's list of blocks.
def << block
  block.parent = self unless block.parent == self
  @blocks << block
  self
end

def alt

and replacement substitutions applied.
Returns the [String] value of the alt attribute with XML special character

Public: Returns the converted alt text for this block image.
def alt
  if (text = @attributes['alt'])
    if text == @attributes['default-alt']
      sub_specialchars text
    else
      text = sub_specialchars text
      (ReplaceableTextRx.match? text) ? (sub_replacements text) : text
    end
  end
end

def assign_caption value = nil, caption_context = @context

Returns nothing.

(default: @context)
If not provided, the name of the context for this block is used.
caption_context - The Symbol context to use when resolving caption-related attributes.
value - The explicit String caption to assign to this block (default: nil).

This partial caption represents the part the precedes the title.
The parts of a complete caption are: . <br><br>If a caption has already been assigned to this block, do nothing.<br><br>to the caption attribute on the block.<br>then build a caption from this information, assign it a number and store it<br>If the block has a title and a caption prefix is available for this block,<br><br>Public: Generate and assign caption to block if not already assigned. </div> <pre id="code-block-2767" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">assign_caption</span> <span class="n">value</span> <span class="o">=</span> <span class="kp">nil</span><span class="p">,</span> <span class="n">caption_context</span> <span class="o">=</span> <span class="vi">@context</span> <span class="k">unless</span> <span class="vi">@caption</span> <span class="o">||</span> <span class="o">!</span><span class="vi">@title</span> <span class="o">||</span> <span class="p">(</span><span class="vi">@caption</span> <span class="o">=</span> <span class="n">value</span> <span class="o">||</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">attributes</span><span class="p">[</span><span class="s1">'caption'</span><span class="p">])</span> <span class="k">if</span> <span class="p">(</span><span class="n">attr_name</span> <span class="o">=</span> <span class="no">CAPTION_ATTR_NAMES</span><span class="p">[</span><span class="n">caption_context</span><span class="p">])</span> <span class="o">&&</span> <span class="p">(</span><span class="n">prefix</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">attributes</span><span class="p">[</span><span class="n">attr_name</span><span class="p">])</span> <span class="vi">@caption</span> <span class="o">=</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">prefix</span><span class="si">}</span><span class="sx"> </span><span class="si">#{</span><span class="vi">@numeral</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">increment_and_store_counter</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">caption_context</span><span class="si">}</span><span class="sx">-number)</span><span class="p">,</span> <span class="nb">self</span><span class="si">}</span><span class="sx">. )</span> <span class="kp">nil</span> <span class="k">end</span> <span class="k">end</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-2767.rouge table td { padding: 5px; } pre#code-block-2767.rouge table pre { margin: 0; } pre#code-block-2767.rouge, pre#code-block-2767.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-2767.rouge .k, pre#code-block-2767.rouge .kd, pre#code-block-2767.rouge .kn, pre#code-block-2767.rouge .kp, pre#code-block-2767.rouge .kr, pre#code-block-2767.rouge .kt, pre#code-block-2767.rouge .kv { color: #cf222e; } pre#code-block-2767.rouge .gr { color: #f6f8fa; } pre#code-block-2767.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-2767.rouge .nb { color: #953800; } pre#code-block-2767.rouge .nc { color: #953800; } pre#code-block-2767.rouge .no { color: #953800; } pre#code-block-2767.rouge .nn { color: #953800; } pre#code-block-2767.rouge .sr { color: #116329; } pre#code-block-2767.rouge .na { color: #116329; } pre#code-block-2767.rouge .nt { color: #116329; } pre#code-block-2767.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-2767.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-2767.rouge .kc { color: #0550ae; } pre#code-block-2767.rouge .l, pre#code-block-2767.rouge .ld, pre#code-block-2767.rouge .m, pre#code-block-2767.rouge .mb, pre#code-block-2767.rouge .mf, pre#code-block-2767.rouge .mh, pre#code-block-2767.rouge .mi, pre#code-block-2767.rouge .il, pre#code-block-2767.rouge .mo, pre#code-block-2767.rouge .mx { color: #0550ae; } pre#code-block-2767.rouge .sb { color: #0550ae; } pre#code-block-2767.rouge .bp { color: #0550ae; } pre#code-block-2767.rouge .ne { color: #0550ae; } pre#code-block-2767.rouge .nl { color: #0550ae; } pre#code-block-2767.rouge .py { color: #0550ae; } pre#code-block-2767.rouge .nv, pre#code-block-2767.rouge .vc, pre#code-block-2767.rouge .vg, pre#code-block-2767.rouge .vi, pre#code-block-2767.rouge .vm { color: #0550ae; } pre#code-block-2767.rouge .o, pre#code-block-2767.rouge .ow { color: #0550ae; } pre#code-block-2767.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-2767.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-2767.rouge .s, pre#code-block-2767.rouge .sa, pre#code-block-2767.rouge .sc, pre#code-block-2767.rouge .dl, pre#code-block-2767.rouge .sd, pre#code-block-2767.rouge .s2, pre#code-block-2767.rouge .se, pre#code-block-2767.rouge .sh, pre#code-block-2767.rouge .sx, pre#code-block-2767.rouge .s1, pre#code-block-2767.rouge .ss { color: #0a3069; } pre#code-block-2767.rouge .nd { color: #8250df; } pre#code-block-2767.rouge .nf, pre#code-block-2767.rouge .fm { color: #8250df; } pre#code-block-2767.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-2767.rouge .c, pre#code-block-2767.rouge .ch, pre#code-block-2767.rouge .cd, pre#code-block-2767.rouge .cm, pre#code-block-2767.rouge .cp, pre#code-block-2767.rouge .cpf, pre#code-block-2767.rouge .c1, pre#code-block-2767.rouge .cs { color: #6e7781; } pre#code-block-2767.rouge .gl { color: #6e7781; } pre#code-block-2767.rouge .gt { color: #6e7781; } pre#code-block-2767.rouge .ni { color: #24292f; } pre#code-block-2767.rouge .si { color: #24292f; } pre#code-block-2767.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-2767.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def assign_numeral section </h3> </div> Returns nothing<br><br>numbered, the numeral within this block (its parent).<br>Assign to the specified section the next index and, if the section is<br><br>section - The section to which to assign the next index and numeral.<br><br>method also assigns the appendix caption.<br>If the section is an appendix, the numeral is a letter (starting with A). This<br>Internal: Assign the next index (0-based) and numeral (1-based) to the section. </div> <pre id="code-block-9858" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">assign_numeral</span> <span class="n">section</span> <span class="vi">@next_section_index</span> <span class="o">=</span> <span class="p">(</span><span class="n">section</span><span class="p">.</span><span class="nf">index</span> <span class="o">=</span> <span class="vi">@next_section_index</span><span class="p">)</span> <span class="o">+</span> <span class="mi">1</span> <span class="k">if</span> <span class="p">(</span><span class="n">like</span> <span class="o">=</span> <span class="n">section</span><span class="p">.</span><span class="nf">numbered</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="n">sectname</span> <span class="o">=</span> <span class="n">section</span><span class="p">.</span><span class="nf">sectname</span><span class="p">)</span> <span class="o">==</span> <span class="s1">'appendix'</span> <span class="n">section</span><span class="p">.</span><span class="nf">numeral</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">counter</span> <span class="s1">'appendix-number'</span><span class="p">,</span> <span class="s1">'A'</span> <span class="n">section</span><span class="p">.</span><span class="nf">caption</span> <span class="o">=</span> <span class="p">(</span><span class="n">caption</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">attributes</span><span class="p">[</span><span class="s1">'appendix-caption'</span><span class="p">])</span> <span class="p">?</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">caption</span><span class="si">}</span><span class="sx"> </span><span class="si">#{</span><span class="n">section</span><span class="p">.</span><span class="nf">numeral</span><span class="si">}</span><span class="sx">: )</span> <span class="p">:</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">section</span><span class="p">.</span><span class="nf">numeral</span><span class="si">}</span><span class="sx">. )</span> <span class="c1"># NOTE currently chapters in a book doctype are sequential even for multi-part books (see #979)</span> <span class="k">elsif</span> <span class="n">sectname</span> <span class="o">==</span> <span class="s1">'chapter'</span> <span class="o">||</span> <span class="n">like</span> <span class="o">==</span> <span class="ss">:chapter</span> <span class="n">section</span><span class="p">.</span><span class="nf">numeral</span> <span class="o">=</span> <span class="p">(</span><span class="vi">@document</span><span class="p">.</span><span class="nf">counter</span> <span class="s1">'chapter-number'</span><span class="p">,</span> <span class="mi">1</span><span class="p">).</span><span class="nf">to_s</span> <span class="k">else</span> <span class="n">section</span><span class="p">.</span><span class="nf">numeral</span> <span class="o">=</span> <span class="n">sectname</span> <span class="o">==</span> <span class="s1">'part'</span> <span class="p">?</span> <span class="p">(</span><span class="no">Helpers</span><span class="p">.</span><span class="nf">int_to_roman</span> <span class="vi">@next_section_ordinal</span><span class="p">)</span> <span class="p">:</span> <span class="vi">@next_section_ordinal</span><span class="p">.</span><span class="nf">to_s</span> <span class="vi">@next_section_ordinal</span> <span class="o">+=</span> <span class="mi">1</span> <span class="k">end</span> <span class="k">end</span> <span class="kp">nil</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9858.rouge table td { padding: 5px; } pre#code-block-9858.rouge table pre { margin: 0; } pre#code-block-9858.rouge, pre#code-block-9858.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9858.rouge .k, pre#code-block-9858.rouge .kd, pre#code-block-9858.rouge .kn, pre#code-block-9858.rouge .kp, pre#code-block-9858.rouge .kr, pre#code-block-9858.rouge .kt, pre#code-block-9858.rouge .kv { color: #cf222e; } pre#code-block-9858.rouge .gr { color: #f6f8fa; } pre#code-block-9858.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9858.rouge .nb { color: #953800; } pre#code-block-9858.rouge .nc { color: #953800; } pre#code-block-9858.rouge .no { color: #953800; } pre#code-block-9858.rouge .nn { color: #953800; } pre#code-block-9858.rouge .sr { color: #116329; } pre#code-block-9858.rouge .na { color: #116329; } pre#code-block-9858.rouge .nt { color: #116329; } pre#code-block-9858.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9858.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9858.rouge .kc { color: #0550ae; } pre#code-block-9858.rouge .l, pre#code-block-9858.rouge .ld, pre#code-block-9858.rouge .m, pre#code-block-9858.rouge .mb, pre#code-block-9858.rouge .mf, pre#code-block-9858.rouge .mh, pre#code-block-9858.rouge .mi, pre#code-block-9858.rouge .il, pre#code-block-9858.rouge .mo, pre#code-block-9858.rouge .mx { color: #0550ae; } pre#code-block-9858.rouge .sb { color: #0550ae; } pre#code-block-9858.rouge .bp { color: #0550ae; } pre#code-block-9858.rouge .ne { color: #0550ae; } pre#code-block-9858.rouge .nl { color: #0550ae; } pre#code-block-9858.rouge .py { color: #0550ae; } pre#code-block-9858.rouge .nv, pre#code-block-9858.rouge .vc, pre#code-block-9858.rouge .vg, pre#code-block-9858.rouge .vi, pre#code-block-9858.rouge .vm { color: #0550ae; } pre#code-block-9858.rouge .o, pre#code-block-9858.rouge .ow { color: #0550ae; } pre#code-block-9858.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9858.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9858.rouge .s, pre#code-block-9858.rouge .sa, pre#code-block-9858.rouge .sc, pre#code-block-9858.rouge .dl, pre#code-block-9858.rouge .sd, pre#code-block-9858.rouge .s2, pre#code-block-9858.rouge .se, pre#code-block-9858.rouge .sh, pre#code-block-9858.rouge .sx, pre#code-block-9858.rouge .s1, pre#code-block-9858.rouge .ss { color: #0a3069; } pre#code-block-9858.rouge .nd { color: #8250df; } pre#code-block-9858.rouge .nf, pre#code-block-9858.rouge .fm { color: #8250df; } pre#code-block-9858.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9858.rouge .c, pre#code-block-9858.rouge .ch, pre#code-block-9858.rouge .cd, pre#code-block-9858.rouge .cm, pre#code-block-9858.rouge .cp, pre#code-block-9858.rouge .cpf, pre#code-block-9858.rouge .c1, pre#code-block-9858.rouge .cs { color: #6e7781; } pre#code-block-9858.rouge .gl { color: #6e7781; } pre#code-block-9858.rouge .gt { color: #6e7781; } pre#code-block-9858.rouge .ni { color: #24292f; } pre#code-block-9858.rouge .si { color: #24292f; } pre#code-block-9858.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9858.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def block? </h3> </div> </div> <pre id="code-block-2636" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">block?</span> <span class="kp">true</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-2636.rouge table td { padding: 5px; } pre#code-block-2636.rouge table pre { margin: 0; } pre#code-block-2636.rouge, pre#code-block-2636.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-2636.rouge .k, pre#code-block-2636.rouge .kd, pre#code-block-2636.rouge .kn, pre#code-block-2636.rouge .kp, pre#code-block-2636.rouge .kr, pre#code-block-2636.rouge .kt, pre#code-block-2636.rouge .kv { color: #cf222e; } pre#code-block-2636.rouge .gr { color: #f6f8fa; } pre#code-block-2636.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-2636.rouge .nb { color: #953800; } pre#code-block-2636.rouge .nc { color: #953800; } pre#code-block-2636.rouge .no { color: #953800; } pre#code-block-2636.rouge .nn { color: #953800; } pre#code-block-2636.rouge .sr { color: #116329; } pre#code-block-2636.rouge .na { color: #116329; } pre#code-block-2636.rouge .nt { color: #116329; } pre#code-block-2636.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-2636.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-2636.rouge .kc { color: #0550ae; } pre#code-block-2636.rouge .l, pre#code-block-2636.rouge .ld, pre#code-block-2636.rouge .m, pre#code-block-2636.rouge .mb, pre#code-block-2636.rouge .mf, pre#code-block-2636.rouge .mh, pre#code-block-2636.rouge .mi, pre#code-block-2636.rouge .il, pre#code-block-2636.rouge .mo, pre#code-block-2636.rouge .mx { color: #0550ae; } pre#code-block-2636.rouge .sb { color: #0550ae; } pre#code-block-2636.rouge .bp { color: #0550ae; } pre#code-block-2636.rouge .ne { color: #0550ae; } pre#code-block-2636.rouge .nl { color: #0550ae; } pre#code-block-2636.rouge .py { color: #0550ae; } pre#code-block-2636.rouge .nv, pre#code-block-2636.rouge .vc, pre#code-block-2636.rouge .vg, pre#code-block-2636.rouge .vi, pre#code-block-2636.rouge .vm { color: #0550ae; } pre#code-block-2636.rouge .o, pre#code-block-2636.rouge .ow { color: #0550ae; } pre#code-block-2636.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-2636.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-2636.rouge .s, pre#code-block-2636.rouge .sa, pre#code-block-2636.rouge .sc, pre#code-block-2636.rouge .dl, pre#code-block-2636.rouge .sd, pre#code-block-2636.rouge .s2, pre#code-block-2636.rouge .se, pre#code-block-2636.rouge .sh, pre#code-block-2636.rouge .sx, pre#code-block-2636.rouge .s1, pre#code-block-2636.rouge .ss { color: #0a3069; } pre#code-block-2636.rouge .nd { color: #8250df; } pre#code-block-2636.rouge .nf, pre#code-block-2636.rouge .fm { color: #8250df; } pre#code-block-2636.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-2636.rouge .c, pre#code-block-2636.rouge .ch, pre#code-block-2636.rouge .cd, pre#code-block-2636.rouge .cm, pre#code-block-2636.rouge .cp, pre#code-block-2636.rouge .cpf, pre#code-block-2636.rouge .c1, pre#code-block-2636.rouge .cs { color: #6e7781; } pre#code-block-2636.rouge .gl { color: #6e7781; } pre#code-block-2636.rouge .gt { color: #6e7781; } pre#code-block-2636.rouge .ni { color: #24292f; } pre#code-block-2636.rouge .si { color: #24292f; } pre#code-block-2636.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-2636.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def blocks? </h3> </div> Returns A Boolean indicating whether this Block has block content<br><br>Public: Determine whether this Block contains block content </div> <pre id="code-block-9236" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">blocks?</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">empty?</span> <span class="p">?</span> <span class="kp">false</span> <span class="p">:</span> <span class="kp">true</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9236.rouge table td { padding: 5px; } pre#code-block-9236.rouge table pre { margin: 0; } pre#code-block-9236.rouge, pre#code-block-9236.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9236.rouge .k, pre#code-block-9236.rouge .kd, pre#code-block-9236.rouge .kn, pre#code-block-9236.rouge .kp, pre#code-block-9236.rouge .kr, pre#code-block-9236.rouge .kt, pre#code-block-9236.rouge .kv { color: #cf222e; } pre#code-block-9236.rouge .gr { color: #f6f8fa; } pre#code-block-9236.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9236.rouge .nb { color: #953800; } pre#code-block-9236.rouge .nc { color: #953800; } pre#code-block-9236.rouge .no { color: #953800; } pre#code-block-9236.rouge .nn { color: #953800; } pre#code-block-9236.rouge .sr { color: #116329; } pre#code-block-9236.rouge .na { color: #116329; } pre#code-block-9236.rouge .nt { color: #116329; } pre#code-block-9236.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9236.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9236.rouge .kc { color: #0550ae; } pre#code-block-9236.rouge .l, pre#code-block-9236.rouge .ld, pre#code-block-9236.rouge .m, pre#code-block-9236.rouge .mb, pre#code-block-9236.rouge .mf, pre#code-block-9236.rouge .mh, pre#code-block-9236.rouge .mi, pre#code-block-9236.rouge .il, pre#code-block-9236.rouge .mo, pre#code-block-9236.rouge .mx { color: #0550ae; } pre#code-block-9236.rouge .sb { color: #0550ae; } pre#code-block-9236.rouge .bp { color: #0550ae; } pre#code-block-9236.rouge .ne { color: #0550ae; } pre#code-block-9236.rouge .nl { color: #0550ae; } pre#code-block-9236.rouge .py { color: #0550ae; } pre#code-block-9236.rouge .nv, pre#code-block-9236.rouge .vc, pre#code-block-9236.rouge .vg, pre#code-block-9236.rouge .vi, pre#code-block-9236.rouge .vm { color: #0550ae; } pre#code-block-9236.rouge .o, pre#code-block-9236.rouge .ow { color: #0550ae; } pre#code-block-9236.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9236.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9236.rouge .s, pre#code-block-9236.rouge .sa, pre#code-block-9236.rouge .sc, pre#code-block-9236.rouge .dl, pre#code-block-9236.rouge .sd, pre#code-block-9236.rouge .s2, pre#code-block-9236.rouge .se, pre#code-block-9236.rouge .sh, pre#code-block-9236.rouge .sx, pre#code-block-9236.rouge .s1, pre#code-block-9236.rouge .ss { color: #0a3069; } pre#code-block-9236.rouge .nd { color: #8250df; } pre#code-block-9236.rouge .nf, pre#code-block-9236.rouge .fm { color: #8250df; } pre#code-block-9236.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9236.rouge .c, pre#code-block-9236.rouge .ch, pre#code-block-9236.rouge .cd, pre#code-block-9236.rouge .cm, pre#code-block-9236.rouge .cp, pre#code-block-9236.rouge .cpf, pre#code-block-9236.rouge .c1, pre#code-block-9236.rouge .cs { color: #6e7781; } pre#code-block-9236.rouge .gl { color: #6e7781; } pre#code-block-9236.rouge .gt { color: #6e7781; } pre#code-block-9236.rouge .ni { color: #24292f; } pre#code-block-9236.rouge .si { color: #24292f; } pre#code-block-9236.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9236.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def caption </h3> </div> attribute if this is an admonition block).<br>Returns the [String] caption for this block (or the value of the textlabel<br><br>admonition block to the textlabel attribute.<br>This method routes the deprecated use of the caption method on an<br><br>Gets the caption for this block. </div> <pre id="code-block-371" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">caption</span> <span class="vi">@context</span> <span class="o">==</span> <span class="ss">:admonition</span> <span class="p">?</span> <span class="vi">@attributes</span><span class="p">[</span><span class="s1">'textlabel'</span><span class="p">]</span> <span class="p">:</span> <span class="vi">@caption</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-371.rouge table td { padding: 5px; } pre#code-block-371.rouge table pre { margin: 0; } pre#code-block-371.rouge, pre#code-block-371.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-371.rouge .k, pre#code-block-371.rouge .kd, pre#code-block-371.rouge .kn, pre#code-block-371.rouge .kp, pre#code-block-371.rouge .kr, pre#code-block-371.rouge .kt, pre#code-block-371.rouge .kv { color: #cf222e; } pre#code-block-371.rouge .gr { color: #f6f8fa; } pre#code-block-371.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-371.rouge .nb { color: #953800; } pre#code-block-371.rouge .nc { color: #953800; } pre#code-block-371.rouge .no { color: #953800; } pre#code-block-371.rouge .nn { color: #953800; } pre#code-block-371.rouge .sr { color: #116329; } pre#code-block-371.rouge .na { color: #116329; } pre#code-block-371.rouge .nt { color: #116329; } pre#code-block-371.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-371.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-371.rouge .kc { color: #0550ae; } pre#code-block-371.rouge .l, pre#code-block-371.rouge .ld, pre#code-block-371.rouge .m, pre#code-block-371.rouge .mb, pre#code-block-371.rouge .mf, pre#code-block-371.rouge .mh, pre#code-block-371.rouge .mi, pre#code-block-371.rouge .il, pre#code-block-371.rouge .mo, pre#code-block-371.rouge .mx { color: #0550ae; } pre#code-block-371.rouge .sb { color: #0550ae; } pre#code-block-371.rouge .bp { color: #0550ae; } pre#code-block-371.rouge .ne { color: #0550ae; } pre#code-block-371.rouge .nl { color: #0550ae; } pre#code-block-371.rouge .py { color: #0550ae; } pre#code-block-371.rouge .nv, pre#code-block-371.rouge .vc, pre#code-block-371.rouge .vg, pre#code-block-371.rouge .vi, pre#code-block-371.rouge .vm { color: #0550ae; } pre#code-block-371.rouge .o, pre#code-block-371.rouge .ow { color: #0550ae; } pre#code-block-371.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-371.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-371.rouge .s, pre#code-block-371.rouge .sa, pre#code-block-371.rouge .sc, pre#code-block-371.rouge .dl, pre#code-block-371.rouge .sd, pre#code-block-371.rouge .s2, pre#code-block-371.rouge .se, pre#code-block-371.rouge .sh, pre#code-block-371.rouge .sx, pre#code-block-371.rouge .s1, pre#code-block-371.rouge .ss { color: #0a3069; } pre#code-block-371.rouge .nd { color: #8250df; } pre#code-block-371.rouge .nf, pre#code-block-371.rouge .fm { color: #8250df; } pre#code-block-371.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-371.rouge .c, pre#code-block-371.rouge .ch, pre#code-block-371.rouge .cd, pre#code-block-371.rouge .cm, pre#code-block-371.rouge .cp, pre#code-block-371.rouge .cpf, pre#code-block-371.rouge .c1, pre#code-block-371.rouge .cs { color: #6e7781; } pre#code-block-371.rouge .gl { color: #6e7781; } pre#code-block-371.rouge .gt { color: #6e7781; } pre#code-block-371.rouge .ni { color: #24292f; } pre#code-block-371.rouge .si { color: #24292f; } pre#code-block-371.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-371.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def captioned_title </h3> </div> converted String title if no caption is set<br>Returns the converted String title prefixed with the caption, or just the<br><br>returned.<br>two values. If the Block does not have a caption, the interpreted title is<br>return value of this Block's title method. No space is added between the<br>Concatenates the value of this Block's caption instance variable and the<br><br>with the caption prepended.<br>Public: Convenience method that returns the interpreted title of the Block </div> <pre id="code-block-8400" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">captioned_title</span> <span class="sx">%(</span><span class="si">#{</span><span class="vi">@caption</span><span class="si">}#{</span><span class="n">title</span><span class="si">}</span><span class="sx">)</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-8400.rouge table td { padding: 5px; } pre#code-block-8400.rouge table pre { margin: 0; } pre#code-block-8400.rouge, pre#code-block-8400.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-8400.rouge .k, pre#code-block-8400.rouge .kd, pre#code-block-8400.rouge .kn, pre#code-block-8400.rouge .kp, pre#code-block-8400.rouge .kr, pre#code-block-8400.rouge .kt, pre#code-block-8400.rouge .kv { color: #cf222e; } pre#code-block-8400.rouge .gr { color: #f6f8fa; } pre#code-block-8400.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-8400.rouge .nb { color: #953800; } pre#code-block-8400.rouge .nc { color: #953800; } pre#code-block-8400.rouge .no { color: #953800; } pre#code-block-8400.rouge .nn { color: #953800; } pre#code-block-8400.rouge .sr { color: #116329; } pre#code-block-8400.rouge .na { color: #116329; } pre#code-block-8400.rouge .nt { color: #116329; } pre#code-block-8400.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-8400.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-8400.rouge .kc { color: #0550ae; } pre#code-block-8400.rouge .l, pre#code-block-8400.rouge .ld, pre#code-block-8400.rouge .m, pre#code-block-8400.rouge .mb, pre#code-block-8400.rouge .mf, pre#code-block-8400.rouge .mh, pre#code-block-8400.rouge .mi, pre#code-block-8400.rouge .il, pre#code-block-8400.rouge .mo, pre#code-block-8400.rouge .mx { color: #0550ae; } pre#code-block-8400.rouge .sb { color: #0550ae; } pre#code-block-8400.rouge .bp { color: #0550ae; } pre#code-block-8400.rouge .ne { color: #0550ae; } pre#code-block-8400.rouge .nl { color: #0550ae; } pre#code-block-8400.rouge .py { color: #0550ae; } pre#code-block-8400.rouge .nv, pre#code-block-8400.rouge .vc, pre#code-block-8400.rouge .vg, pre#code-block-8400.rouge .vi, pre#code-block-8400.rouge .vm { color: #0550ae; } pre#code-block-8400.rouge .o, pre#code-block-8400.rouge .ow { color: #0550ae; } pre#code-block-8400.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-8400.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-8400.rouge .s, pre#code-block-8400.rouge .sa, pre#code-block-8400.rouge .sc, pre#code-block-8400.rouge .dl, pre#code-block-8400.rouge .sd, pre#code-block-8400.rouge .s2, pre#code-block-8400.rouge .se, pre#code-block-8400.rouge .sh, pre#code-block-8400.rouge .sx, pre#code-block-8400.rouge .s1, pre#code-block-8400.rouge .ss { color: #0a3069; } pre#code-block-8400.rouge .nd { color: #8250df; } pre#code-block-8400.rouge .nf, pre#code-block-8400.rouge .fm { color: #8250df; } pre#code-block-8400.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-8400.rouge .c, pre#code-block-8400.rouge .ch, pre#code-block-8400.rouge .cd, pre#code-block-8400.rouge .cm, pre#code-block-8400.rouge .cp, pre#code-block-8400.rouge .cpf, pre#code-block-8400.rouge .c1, pre#code-block-8400.rouge .cs { color: #6e7781; } pre#code-block-8400.rouge .gl { color: #6e7781; } pre#code-block-8400.rouge .gt { color: #6e7781; } pre#code-block-8400.rouge .ni { color: #24292f; } pre#code-block-8400.rouge .si { color: #24292f; } pre#code-block-8400.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-8400.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def content </h3> </div> children appropriate to content model that this block supports.<br>Public: Get the converted result of the child blocks by converting the </div> <pre id="code-block-3089" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">content</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">map</span> <span class="p">{</span><span class="o">|</span><span class="n">b</span><span class="o">|</span> <span class="n">b</span><span class="p">.</span><span class="nf">convert</span> <span class="p">}.</span><span class="nf">join</span> <span class="no">LF</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-3089.rouge table td { padding: 5px; } pre#code-block-3089.rouge table pre { margin: 0; } pre#code-block-3089.rouge, pre#code-block-3089.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-3089.rouge .k, pre#code-block-3089.rouge .kd, pre#code-block-3089.rouge .kn, pre#code-block-3089.rouge .kp, pre#code-block-3089.rouge .kr, pre#code-block-3089.rouge .kt, pre#code-block-3089.rouge .kv { color: #cf222e; } pre#code-block-3089.rouge .gr { color: #f6f8fa; } pre#code-block-3089.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-3089.rouge .nb { color: #953800; } pre#code-block-3089.rouge .nc { color: #953800; } pre#code-block-3089.rouge .no { color: #953800; } pre#code-block-3089.rouge .nn { color: #953800; } pre#code-block-3089.rouge .sr { color: #116329; } pre#code-block-3089.rouge .na { color: #116329; } pre#code-block-3089.rouge .nt { color: #116329; } pre#code-block-3089.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-3089.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-3089.rouge .kc { color: #0550ae; } pre#code-block-3089.rouge .l, pre#code-block-3089.rouge .ld, pre#code-block-3089.rouge .m, pre#code-block-3089.rouge .mb, pre#code-block-3089.rouge .mf, pre#code-block-3089.rouge .mh, pre#code-block-3089.rouge .mi, pre#code-block-3089.rouge .il, pre#code-block-3089.rouge .mo, pre#code-block-3089.rouge .mx { color: #0550ae; } pre#code-block-3089.rouge .sb { color: #0550ae; } pre#code-block-3089.rouge .bp { color: #0550ae; } pre#code-block-3089.rouge .ne { color: #0550ae; } pre#code-block-3089.rouge .nl { color: #0550ae; } pre#code-block-3089.rouge .py { color: #0550ae; } pre#code-block-3089.rouge .nv, pre#code-block-3089.rouge .vc, pre#code-block-3089.rouge .vg, pre#code-block-3089.rouge .vi, pre#code-block-3089.rouge .vm { color: #0550ae; } pre#code-block-3089.rouge .o, pre#code-block-3089.rouge .ow { color: #0550ae; } pre#code-block-3089.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-3089.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-3089.rouge .s, pre#code-block-3089.rouge .sa, pre#code-block-3089.rouge .sc, pre#code-block-3089.rouge .dl, pre#code-block-3089.rouge .sd, pre#code-block-3089.rouge .s2, pre#code-block-3089.rouge .se, pre#code-block-3089.rouge .sh, pre#code-block-3089.rouge .sx, pre#code-block-3089.rouge .s1, pre#code-block-3089.rouge .ss { color: #0a3069; } pre#code-block-3089.rouge .nd { color: #8250df; } pre#code-block-3089.rouge .nf, pre#code-block-3089.rouge .fm { color: #8250df; } pre#code-block-3089.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-3089.rouge .c, pre#code-block-3089.rouge .ch, pre#code-block-3089.rouge .cd, pre#code-block-3089.rouge .cm, pre#code-block-3089.rouge .cp, pre#code-block-3089.rouge .cpf, pre#code-block-3089.rouge .c1, pre#code-block-3089.rouge .cs { color: #6e7781; } pre#code-block-3089.rouge .gl { color: #6e7781; } pre#code-block-3089.rouge .gt { color: #6e7781; } pre#code-block-3089.rouge .ni { color: #24292f; } pre#code-block-3089.rouge .si { color: #24292f; } pre#code-block-3089.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-3089.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def context= context </h3> </div> Returns the new context Symbol assigned to this block<br><br>context - the context Symbol context to assign to this block<br><br>This method changes the context of this block. It also updates the node name accordingly.<br><br>Public: Update the context of this block. </div> <pre id="code-block-7214" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">context</span><span class="o">=</span> <span class="n">context</span> <span class="vi">@node_name</span> <span class="o">=</span> <span class="p">(</span><span class="vi">@context</span> <span class="o">=</span> <span class="n">context</span><span class="p">).</span><span class="nf">to_s</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-7214.rouge table td { padding: 5px; } pre#code-block-7214.rouge table pre { margin: 0; } pre#code-block-7214.rouge, pre#code-block-7214.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-7214.rouge .k, pre#code-block-7214.rouge .kd, pre#code-block-7214.rouge .kn, pre#code-block-7214.rouge .kp, pre#code-block-7214.rouge .kr, pre#code-block-7214.rouge .kt, pre#code-block-7214.rouge .kv { color: #cf222e; } pre#code-block-7214.rouge .gr { color: #f6f8fa; } pre#code-block-7214.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-7214.rouge .nb { color: #953800; } pre#code-block-7214.rouge .nc { color: #953800; } pre#code-block-7214.rouge .no { color: #953800; } pre#code-block-7214.rouge .nn { color: #953800; } pre#code-block-7214.rouge .sr { color: #116329; } pre#code-block-7214.rouge .na { color: #116329; } pre#code-block-7214.rouge .nt { color: #116329; } pre#code-block-7214.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-7214.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-7214.rouge .kc { color: #0550ae; } pre#code-block-7214.rouge .l, pre#code-block-7214.rouge .ld, pre#code-block-7214.rouge .m, pre#code-block-7214.rouge .mb, pre#code-block-7214.rouge .mf, pre#code-block-7214.rouge .mh, pre#code-block-7214.rouge .mi, pre#code-block-7214.rouge .il, pre#code-block-7214.rouge .mo, pre#code-block-7214.rouge .mx { color: #0550ae; } pre#code-block-7214.rouge .sb { color: #0550ae; } pre#code-block-7214.rouge .bp { color: #0550ae; } pre#code-block-7214.rouge .ne { color: #0550ae; } pre#code-block-7214.rouge .nl { color: #0550ae; } pre#code-block-7214.rouge .py { color: #0550ae; } pre#code-block-7214.rouge .nv, pre#code-block-7214.rouge .vc, pre#code-block-7214.rouge .vg, pre#code-block-7214.rouge .vi, pre#code-block-7214.rouge .vm { color: #0550ae; } pre#code-block-7214.rouge .o, pre#code-block-7214.rouge .ow { color: #0550ae; } pre#code-block-7214.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-7214.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-7214.rouge .s, pre#code-block-7214.rouge .sa, pre#code-block-7214.rouge .sc, pre#code-block-7214.rouge .dl, pre#code-block-7214.rouge .sd, pre#code-block-7214.rouge .s2, pre#code-block-7214.rouge .se, pre#code-block-7214.rouge .sh, pre#code-block-7214.rouge .sx, pre#code-block-7214.rouge .s1, pre#code-block-7214.rouge .ss { color: #0a3069; } pre#code-block-7214.rouge .nd { color: #8250df; } pre#code-block-7214.rouge .nf, pre#code-block-7214.rouge .fm { color: #8250df; } pre#code-block-7214.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-7214.rouge .c, pre#code-block-7214.rouge .ch, pre#code-block-7214.rouge .cd, pre#code-block-7214.rouge .cm, pre#code-block-7214.rouge .cp, pre#code-block-7214.rouge .cpf, pre#code-block-7214.rouge .c1, pre#code-block-7214.rouge .cs { color: #6e7781; } pre#code-block-7214.rouge .gl { color: #6e7781; } pre#code-block-7214.rouge .gt { color: #6e7781; } pre#code-block-7214.rouge .ni { color: #24292f; } pre#code-block-7214.rouge .si { color: #24292f; } pre#code-block-7214.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-7214.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def convert </h3> </div> parent block's template.<br>converted and returned as content that can be included in the<br>has child blocks, the content method should cause them to be<br>Public: Get the converted String content for this Block. If the block </div> <pre id="code-block-5894" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">convert</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">playback_attributes</span> <span class="vi">@attributes</span> <span class="n">converter</span><span class="p">.</span><span class="nf">convert</span> <span class="nb">self</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-5894.rouge table td { padding: 5px; } pre#code-block-5894.rouge table pre { margin: 0; } pre#code-block-5894.rouge, pre#code-block-5894.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-5894.rouge .k, pre#code-block-5894.rouge .kd, pre#code-block-5894.rouge .kn, pre#code-block-5894.rouge .kp, pre#code-block-5894.rouge .kr, pre#code-block-5894.rouge .kt, pre#code-block-5894.rouge .kv { color: #cf222e; } pre#code-block-5894.rouge .gr { color: #f6f8fa; } pre#code-block-5894.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-5894.rouge .nb { color: #953800; } pre#code-block-5894.rouge .nc { color: #953800; } pre#code-block-5894.rouge .no { color: #953800; } pre#code-block-5894.rouge .nn { color: #953800; } pre#code-block-5894.rouge .sr { color: #116329; } pre#code-block-5894.rouge .na { color: #116329; } pre#code-block-5894.rouge .nt { color: #116329; } pre#code-block-5894.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-5894.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-5894.rouge .kc { color: #0550ae; } pre#code-block-5894.rouge .l, pre#code-block-5894.rouge .ld, pre#code-block-5894.rouge .m, pre#code-block-5894.rouge .mb, pre#code-block-5894.rouge .mf, pre#code-block-5894.rouge .mh, pre#code-block-5894.rouge .mi, pre#code-block-5894.rouge .il, pre#code-block-5894.rouge .mo, pre#code-block-5894.rouge .mx { color: #0550ae; } pre#code-block-5894.rouge .sb { color: #0550ae; } pre#code-block-5894.rouge .bp { color: #0550ae; } pre#code-block-5894.rouge .ne { color: #0550ae; } pre#code-block-5894.rouge .nl { color: #0550ae; } pre#code-block-5894.rouge .py { color: #0550ae; } pre#code-block-5894.rouge .nv, pre#code-block-5894.rouge .vc, pre#code-block-5894.rouge .vg, pre#code-block-5894.rouge .vi, pre#code-block-5894.rouge .vm { color: #0550ae; } pre#code-block-5894.rouge .o, pre#code-block-5894.rouge .ow { color: #0550ae; } pre#code-block-5894.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-5894.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-5894.rouge .s, pre#code-block-5894.rouge .sa, pre#code-block-5894.rouge .sc, pre#code-block-5894.rouge .dl, pre#code-block-5894.rouge .sd, pre#code-block-5894.rouge .s2, pre#code-block-5894.rouge .se, pre#code-block-5894.rouge .sh, pre#code-block-5894.rouge .sx, pre#code-block-5894.rouge .s1, pre#code-block-5894.rouge .ss { color: #0a3069; } pre#code-block-5894.rouge .nd { color: #8250df; } pre#code-block-5894.rouge .nf, pre#code-block-5894.rouge .fm { color: #8250df; } pre#code-block-5894.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-5894.rouge .c, pre#code-block-5894.rouge .ch, pre#code-block-5894.rouge .cd, pre#code-block-5894.rouge .cm, pre#code-block-5894.rouge .cp, pre#code-block-5894.rouge .cpf, pre#code-block-5894.rouge .c1, pre#code-block-5894.rouge .cs { color: #6e7781; } pre#code-block-5894.rouge .gl { color: #6e7781; } pre#code-block-5894.rouge .gt { color: #6e7781; } pre#code-block-5894.rouge .ni { color: #24292f; } pre#code-block-5894.rouge .si { color: #24292f; } pre#code-block-5894.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-5894.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def file </h3> </div> Public: Get the source file where this block started </div> <pre id="code-block-9354" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">file</span> <span class="vi">@source_location</span> <span class="o">&&</span> <span class="vi">@source_location</span><span class="p">.</span><span class="nf">file</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9354.rouge table td { padding: 5px; } pre#code-block-9354.rouge table pre { margin: 0; } pre#code-block-9354.rouge, pre#code-block-9354.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9354.rouge .k, pre#code-block-9354.rouge .kd, pre#code-block-9354.rouge .kn, pre#code-block-9354.rouge .kp, pre#code-block-9354.rouge .kr, pre#code-block-9354.rouge .kt, pre#code-block-9354.rouge .kv { color: #cf222e; } pre#code-block-9354.rouge .gr { color: #f6f8fa; } pre#code-block-9354.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9354.rouge .nb { color: #953800; } pre#code-block-9354.rouge .nc { color: #953800; } pre#code-block-9354.rouge .no { color: #953800; } pre#code-block-9354.rouge .nn { color: #953800; } pre#code-block-9354.rouge .sr { color: #116329; } pre#code-block-9354.rouge .na { color: #116329; } pre#code-block-9354.rouge .nt { color: #116329; } pre#code-block-9354.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9354.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9354.rouge .kc { color: #0550ae; } pre#code-block-9354.rouge .l, pre#code-block-9354.rouge .ld, pre#code-block-9354.rouge .m, pre#code-block-9354.rouge .mb, pre#code-block-9354.rouge .mf, pre#code-block-9354.rouge .mh, pre#code-block-9354.rouge .mi, pre#code-block-9354.rouge .il, pre#code-block-9354.rouge .mo, pre#code-block-9354.rouge .mx { color: #0550ae; } pre#code-block-9354.rouge .sb { color: #0550ae; } pre#code-block-9354.rouge .bp { color: #0550ae; } pre#code-block-9354.rouge .ne { color: #0550ae; } pre#code-block-9354.rouge .nl { color: #0550ae; } pre#code-block-9354.rouge .py { color: #0550ae; } pre#code-block-9354.rouge .nv, pre#code-block-9354.rouge .vc, pre#code-block-9354.rouge .vg, pre#code-block-9354.rouge .vi, pre#code-block-9354.rouge .vm { color: #0550ae; } pre#code-block-9354.rouge .o, pre#code-block-9354.rouge .ow { color: #0550ae; } pre#code-block-9354.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9354.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9354.rouge .s, pre#code-block-9354.rouge .sa, pre#code-block-9354.rouge .sc, pre#code-block-9354.rouge .dl, pre#code-block-9354.rouge .sd, pre#code-block-9354.rouge .s2, pre#code-block-9354.rouge .se, pre#code-block-9354.rouge .sh, pre#code-block-9354.rouge .sx, pre#code-block-9354.rouge .s1, pre#code-block-9354.rouge .ss { color: #0a3069; } pre#code-block-9354.rouge .nd { color: #8250df; } pre#code-block-9354.rouge .nf, pre#code-block-9354.rouge .fm { color: #8250df; } pre#code-block-9354.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9354.rouge .c, pre#code-block-9354.rouge .ch, pre#code-block-9354.rouge .cd, pre#code-block-9354.rouge .cm, pre#code-block-9354.rouge .cp, pre#code-block-9354.rouge .cpf, pre#code-block-9354.rouge .c1, pre#code-block-9354.rouge .cs { color: #6e7781; } pre#code-block-9354.rouge .gl { color: #6e7781; } pre#code-block-9354.rouge .gt { color: #6e7781; } pre#code-block-9354.rouge .ni { color: #24292f; } pre#code-block-9354.rouge .si { color: #24292f; } pre#code-block-9354.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9354.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def find_by selector = {}, &block </h3> </div> TODO support jQuery-style selector (e.g., image.thumb)<br>--<br>Returns An Array of block-level nodes that match the filter or an empty Array if no matches are found<br><br>#=> Asciidoctor::Block@13136720 { context: :listing, content_model: :verbatim, style: "source", lines: 1 }<br>doc.find_by context: :listing, style: 'source'<br><br>#=> Asciidoctor::Section@14505460 { level: 1, title: "First Section", blocks: 1 }<br>doc.find_by(context: :section) {|section| section.level == 1 }<br><br>#=> Asciidoctor::Section@14505460 { level: 1, title: "First Section", blocks: 1 }<br>#=> Asciidoctor::Section@14459860 { level: 0, title: "Hello, AsciiDoc!", blocks: 0 }<br>doc.find_by context: :section<br><br>Examples<br><br>or filter block is supplied, all block-level nodes in the tree are returned.<br>rejected. If the filter returns :prune, the node is accepted, but its descendants are rejected. If no selector<br>skipped, but its children are still visited. If the filter returns :reject, the node and all its descendants are<br>the node is accepted and node traversal continues. If the filter returns false (which implies :skip), the node is<br>If a Ruby block is given, it's applied as a supplemental filter. If the filter returns true (which implies :accept),<br><br>role, and/or custom filter).<br>Public: Walk the document tree and find all block-level nodes that match the specified selector (context, style, id, </div> <pre id="code-block-7826" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">find_by</span> <span class="n">selector</span> <span class="o">=</span> <span class="p">{},</span> <span class="o">&</span><span class="n">block</span> <span class="n">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="p">(</span><span class="n">result</span> <span class="o">=</span> <span class="p">[]),</span> <span class="o">&</span><span class="n">block</span> <span class="k">rescue</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="n">result</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-7826.rouge table td { padding: 5px; } pre#code-block-7826.rouge table pre { margin: 0; } pre#code-block-7826.rouge, pre#code-block-7826.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-7826.rouge .k, pre#code-block-7826.rouge .kd, pre#code-block-7826.rouge .kn, pre#code-block-7826.rouge .kp, pre#code-block-7826.rouge .kr, pre#code-block-7826.rouge .kt, pre#code-block-7826.rouge .kv { color: #cf222e; } pre#code-block-7826.rouge .gr { color: #f6f8fa; } pre#code-block-7826.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-7826.rouge .nb { color: #953800; } pre#code-block-7826.rouge .nc { color: #953800; } pre#code-block-7826.rouge .no { color: #953800; } pre#code-block-7826.rouge .nn { color: #953800; } pre#code-block-7826.rouge .sr { color: #116329; } pre#code-block-7826.rouge .na { color: #116329; } pre#code-block-7826.rouge .nt { color: #116329; } pre#code-block-7826.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-7826.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-7826.rouge .kc { color: #0550ae; } pre#code-block-7826.rouge .l, pre#code-block-7826.rouge .ld, pre#code-block-7826.rouge .m, pre#code-block-7826.rouge .mb, pre#code-block-7826.rouge .mf, pre#code-block-7826.rouge .mh, pre#code-block-7826.rouge .mi, pre#code-block-7826.rouge .il, pre#code-block-7826.rouge .mo, pre#code-block-7826.rouge .mx { color: #0550ae; } pre#code-block-7826.rouge .sb { color: #0550ae; } pre#code-block-7826.rouge .bp { color: #0550ae; } pre#code-block-7826.rouge .ne { color: #0550ae; } pre#code-block-7826.rouge .nl { color: #0550ae; } pre#code-block-7826.rouge .py { color: #0550ae; } pre#code-block-7826.rouge .nv, pre#code-block-7826.rouge .vc, pre#code-block-7826.rouge .vg, pre#code-block-7826.rouge .vi, pre#code-block-7826.rouge .vm { color: #0550ae; } pre#code-block-7826.rouge .o, pre#code-block-7826.rouge .ow { color: #0550ae; } pre#code-block-7826.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-7826.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-7826.rouge .s, pre#code-block-7826.rouge .sa, pre#code-block-7826.rouge .sc, pre#code-block-7826.rouge .dl, pre#code-block-7826.rouge .sd, pre#code-block-7826.rouge .s2, pre#code-block-7826.rouge .se, pre#code-block-7826.rouge .sh, pre#code-block-7826.rouge .sx, pre#code-block-7826.rouge .s1, pre#code-block-7826.rouge .ss { color: #0a3069; } pre#code-block-7826.rouge .nd { color: #8250df; } pre#code-block-7826.rouge .nf, pre#code-block-7826.rouge .fm { color: #8250df; } pre#code-block-7826.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-7826.rouge .c, pre#code-block-7826.rouge .ch, pre#code-block-7826.rouge .cd, pre#code-block-7826.rouge .cm, pre#code-block-7826.rouge .cp, pre#code-block-7826.rouge .cpf, pre#code-block-7826.rouge .c1, pre#code-block-7826.rouge .cs { color: #6e7781; } pre#code-block-7826.rouge .gl { color: #6e7781; } pre#code-block-7826.rouge .gt { color: #6e7781; } pre#code-block-7826.rouge .ni { color: #24292f; } pre#code-block-7826.rouge .si { color: #24292f; } pre#code-block-7826.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-7826.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def find_by_internal selector = {}, result = [], &block </h3> </div> Internal: Performs the work for find_by, but does not handle the StopIteration exception. </div> <pre id="code-block-5778" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">find_by_internal</span> <span class="n">selector</span> <span class="o">=</span> <span class="p">{},</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[],</span> <span class="o">&</span><span class="n">block</span> <span class="k">if</span> <span class="p">((</span><span class="n">any_context</span> <span class="o">=</span> <span class="p">(</span><span class="n">context_selector</span> <span class="o">=</span> <span class="n">selector</span><span class="p">[</span><span class="ss">:context</span><span class="p">])</span> <span class="p">?</span> <span class="kp">nil</span> <span class="p">:</span> <span class="kp">true</span><span class="p">)</span> <span class="o">||</span> <span class="n">context_selector</span> <span class="o">==</span> <span class="vi">@context</span><span class="p">)</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="n">style_selector</span> <span class="o">=</span> <span class="n">selector</span><span class="p">[</span><span class="ss">:style</span><span class="p">])</span> <span class="o">||</span> <span class="n">style_selector</span> <span class="o">==</span> <span class="vi">@style</span><span class="p">)</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="n">role_selector</span> <span class="o">=</span> <span class="n">selector</span><span class="p">[</span><span class="ss">:role</span><span class="p">])</span> <span class="o">||</span> <span class="p">(</span><span class="n">has_role?</span> <span class="n">role_selector</span><span class="p">))</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="n">id_selector</span> <span class="o">=</span> <span class="n">selector</span><span class="p">[</span><span class="ss">:id</span><span class="p">])</span> <span class="o">||</span> <span class="n">id_selector</span> <span class="o">==</span> <span class="vi">@id</span><span class="p">)</span> <span class="k">if</span> <span class="nb">block_given?</span> <span class="k">if</span> <span class="p">(</span><span class="n">verdict</span> <span class="o">=</span> <span class="k">yield</span> <span class="nb">self</span><span class="p">)</span> <span class="k">case</span> <span class="n">verdict</span> <span class="k">when</span> <span class="ss">:prune</span> <span class="n">result</span> <span class="o"><<</span> <span class="nb">self</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">if</span> <span class="n">id_selector</span> <span class="k">return</span> <span class="n">result</span> <span class="k">when</span> <span class="ss">:reject</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">if</span> <span class="n">id_selector</span> <span class="k">return</span> <span class="n">result</span> <span class="k">when</span> <span class="ss">:stop</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">else</span> <span class="n">result</span> <span class="o"><<</span> <span class="nb">self</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">if</span> <span class="n">id_selector</span> <span class="k">end</span> <span class="k">elsif</span> <span class="n">id_selector</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">end</span> <span class="k">else</span> <span class="n">result</span> <span class="o"><<</span> <span class="nb">self</span> <span class="k">raise</span> <span class="o">::</span><span class="no">StopIteration</span> <span class="k">if</span> <span class="n">id_selector</span> <span class="k">end</span> <span class="k">end</span> <span class="k">case</span> <span class="vi">@context</span> <span class="k">when</span> <span class="ss">:document</span> <span class="k">unless</span> <span class="n">context_selector</span> <span class="o">==</span> <span class="ss">:document</span> <span class="c1"># process document header as a section, if present</span> <span class="k">if</span> <span class="n">header?</span> <span class="o">&&</span> <span class="p">(</span><span class="n">any_context</span> <span class="o">||</span> <span class="n">context_selector</span> <span class="o">==</span> <span class="ss">:section</span><span class="p">)</span> <span class="vi">@header</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="k">end</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">b</span><span class="o">|</span> <span class="k">next</span> <span class="k">if</span> <span class="p">(</span><span class="n">context_selector</span> <span class="o">==</span> <span class="ss">:section</span> <span class="o">&&</span> <span class="n">b</span><span class="p">.</span><span class="nf">context</span> <span class="o">!=</span> <span class="ss">:section</span><span class="p">)</span> <span class="c1"># optimization</span> <span class="n">b</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="k">end</span> <span class="k">end</span> <span class="k">when</span> <span class="ss">:dlist</span> <span class="c1"># dlist has different structure than other blocks</span> <span class="k">if</span> <span class="n">any_context</span> <span class="o">||</span> <span class="n">context_selector</span> <span class="o">!=</span> <span class="ss">:section</span> <span class="c1"># optimization</span> <span class="c1"># NOTE the list item of a dlist can be nil, so we have to check</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">flatten</span><span class="p">.</span><span class="nf">each</span> <span class="p">{</span><span class="o">|</span><span class="n">b</span><span class="o">|</span> <span class="n">b</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="k">if</span> <span class="n">b</span> <span class="p">}</span> <span class="k">end</span> <span class="k">when</span> <span class="ss">:table</span> <span class="k">if</span> <span class="n">selector</span><span class="p">[</span><span class="ss">:traverse_documents</span><span class="p">]</span> <span class="n">rows</span><span class="p">.</span><span class="nf">head</span><span class="p">.</span><span class="nf">each</span> <span class="p">{</span><span class="o">|</span><span class="n">r</span><span class="o">|</span> <span class="n">r</span><span class="p">.</span><span class="nf">each</span> <span class="p">{</span><span class="o">|</span><span class="n">c</span><span class="o">|</span> <span class="n">c</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="p">}</span> <span class="p">}</span> <span class="n">selector</span> <span class="o">=</span> <span class="n">selector</span><span class="p">.</span><span class="nf">merge</span> <span class="ss">context: :document</span> <span class="k">if</span> <span class="n">context_selector</span> <span class="o">==</span> <span class="ss">:inner_document</span> <span class="p">(</span><span class="n">rows</span><span class="p">.</span><span class="nf">body</span> <span class="o">+</span> <span class="n">rows</span><span class="p">.</span><span class="nf">foot</span><span class="p">).</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">r</span><span class="o">|</span> <span class="n">r</span><span class="p">.</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">c</span><span class="o">|</span> <span class="n">c</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="n">c</span><span class="p">.</span><span class="nf">inner_document</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="k">if</span> <span class="n">c</span><span class="p">.</span><span class="nf">style</span> <span class="o">==</span> <span class="ss">:asciidoc</span> <span class="k">end</span> <span class="k">end</span> <span class="k">else</span> <span class="p">(</span><span class="n">rows</span><span class="p">.</span><span class="nf">head</span> <span class="o">+</span> <span class="n">rows</span><span class="p">.</span><span class="nf">body</span> <span class="o">+</span> <span class="n">rows</span><span class="p">.</span><span class="nf">foot</span><span class="p">).</span><span class="nf">each</span> <span class="p">{</span><span class="o">|</span><span class="n">r</span><span class="o">|</span> <span class="n">r</span><span class="p">.</span><span class="nf">each</span> <span class="p">{</span><span class="o">|</span><span class="n">c</span><span class="o">|</span> <span class="n">c</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="p">}</span> <span class="p">}</span> <span class="k">end</span> <span class="k">else</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">b</span><span class="o">|</span> <span class="k">next</span> <span class="k">if</span> <span class="p">(</span><span class="n">context_selector</span> <span class="o">==</span> <span class="ss">:section</span> <span class="o">&&</span> <span class="n">b</span><span class="p">.</span><span class="nf">context</span> <span class="o">!=</span> <span class="ss">:section</span><span class="p">)</span> <span class="c1"># optimization</span> <span class="n">b</span><span class="p">.</span><span class="nf">find_by_internal</span> <span class="n">selector</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="o">&</span><span class="n">block</span> <span class="k">end</span> <span class="k">end</span> <span class="n">result</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-5778.rouge table td { padding: 5px; } pre#code-block-5778.rouge table pre { margin: 0; } pre#code-block-5778.rouge, pre#code-block-5778.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-5778.rouge .k, pre#code-block-5778.rouge .kd, pre#code-block-5778.rouge .kn, pre#code-block-5778.rouge .kp, pre#code-block-5778.rouge .kr, pre#code-block-5778.rouge .kt, pre#code-block-5778.rouge .kv { color: #cf222e; } pre#code-block-5778.rouge .gr { color: #f6f8fa; } pre#code-block-5778.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-5778.rouge .nb { color: #953800; } pre#code-block-5778.rouge .nc { color: #953800; } pre#code-block-5778.rouge .no { color: #953800; } pre#code-block-5778.rouge .nn { color: #953800; } pre#code-block-5778.rouge .sr { color: #116329; } pre#code-block-5778.rouge .na { color: #116329; } pre#code-block-5778.rouge .nt { color: #116329; } pre#code-block-5778.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-5778.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-5778.rouge .kc { color: #0550ae; } pre#code-block-5778.rouge .l, pre#code-block-5778.rouge .ld, pre#code-block-5778.rouge .m, pre#code-block-5778.rouge .mb, pre#code-block-5778.rouge .mf, pre#code-block-5778.rouge .mh, pre#code-block-5778.rouge .mi, pre#code-block-5778.rouge .il, pre#code-block-5778.rouge .mo, pre#code-block-5778.rouge .mx { color: #0550ae; } pre#code-block-5778.rouge .sb { color: #0550ae; } pre#code-block-5778.rouge .bp { color: #0550ae; } pre#code-block-5778.rouge .ne { color: #0550ae; } pre#code-block-5778.rouge .nl { color: #0550ae; } pre#code-block-5778.rouge .py { color: #0550ae; } pre#code-block-5778.rouge .nv, pre#code-block-5778.rouge .vc, pre#code-block-5778.rouge .vg, pre#code-block-5778.rouge .vi, pre#code-block-5778.rouge .vm { color: #0550ae; } pre#code-block-5778.rouge .o, pre#code-block-5778.rouge .ow { color: #0550ae; } pre#code-block-5778.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-5778.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-5778.rouge .s, pre#code-block-5778.rouge .sa, pre#code-block-5778.rouge .sc, pre#code-block-5778.rouge .dl, pre#code-block-5778.rouge .sd, pre#code-block-5778.rouge .s2, pre#code-block-5778.rouge .se, pre#code-block-5778.rouge .sh, pre#code-block-5778.rouge .sx, pre#code-block-5778.rouge .s1, pre#code-block-5778.rouge .ss { color: #0a3069; } pre#code-block-5778.rouge .nd { color: #8250df; } pre#code-block-5778.rouge .nf, pre#code-block-5778.rouge .fm { color: #8250df; } pre#code-block-5778.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-5778.rouge .c, pre#code-block-5778.rouge .ch, pre#code-block-5778.rouge .cd, pre#code-block-5778.rouge .cm, pre#code-block-5778.rouge .cp, pre#code-block-5778.rouge .cpf, pre#code-block-5778.rouge .c1, pre#code-block-5778.rouge .cs { color: #6e7781; } pre#code-block-5778.rouge .gl { color: #6e7781; } pre#code-block-5778.rouge .gt { color: #6e7781; } pre#code-block-5778.rouge .ni { color: #24292f; } pre#code-block-5778.rouge .si { color: #24292f; } pre#code-block-5778.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-5778.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def initialize parent, context, opts = {} </h3> </div> </div> <pre id="code-block-4687" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">initialize</span> <span class="n">parent</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">opts</span> <span class="o">=</span> <span class="p">{}</span> <span class="k">super</span> <span class="vi">@content_model</span> <span class="o">=</span> <span class="ss">:compound</span> <span class="vi">@blocks</span> <span class="o">=</span> <span class="p">[]</span> <span class="vi">@subs</span> <span class="o">=</span> <span class="p">[]</span> <span class="vi">@id</span> <span class="o">=</span> <span class="vi">@title</span> <span class="o">=</span> <span class="vi">@caption</span> <span class="o">=</span> <span class="vi">@numeral</span> <span class="o">=</span> <span class="vi">@style</span> <span class="o">=</span> <span class="vi">@default_subs</span> <span class="o">=</span> <span class="vi">@source_location</span> <span class="o">=</span> <span class="kp">nil</span> <span class="k">case</span> <span class="n">context</span> <span class="k">when</span> <span class="ss">:document</span><span class="p">,</span> <span class="ss">:section</span> <span class="vi">@level</span> <span class="o">=</span> <span class="vi">@next_section_index</span> <span class="o">=</span> <span class="mi">0</span> <span class="vi">@next_section_ordinal</span> <span class="o">=</span> <span class="mi">1</span> <span class="k">else</span> <span class="vi">@level</span> <span class="o">=</span> <span class="no">AbstractBlock</span> <span class="o">===</span> <span class="n">parent</span> <span class="p">?</span> <span class="n">parent</span><span class="p">.</span><span class="nf">level</span> <span class="p">:</span> <span class="kp">nil</span> <span class="k">end</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-4687.rouge table td { padding: 5px; } pre#code-block-4687.rouge table pre { margin: 0; } pre#code-block-4687.rouge, pre#code-block-4687.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-4687.rouge .k, pre#code-block-4687.rouge .kd, pre#code-block-4687.rouge .kn, pre#code-block-4687.rouge .kp, pre#code-block-4687.rouge .kr, pre#code-block-4687.rouge .kt, pre#code-block-4687.rouge .kv { color: #cf222e; } pre#code-block-4687.rouge .gr { color: #f6f8fa; } pre#code-block-4687.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-4687.rouge .nb { color: #953800; } pre#code-block-4687.rouge .nc { color: #953800; } pre#code-block-4687.rouge .no { color: #953800; } pre#code-block-4687.rouge .nn { color: #953800; } pre#code-block-4687.rouge .sr { color: #116329; } pre#code-block-4687.rouge .na { color: #116329; } pre#code-block-4687.rouge .nt { color: #116329; } pre#code-block-4687.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-4687.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-4687.rouge .kc { color: #0550ae; } pre#code-block-4687.rouge .l, pre#code-block-4687.rouge .ld, pre#code-block-4687.rouge .m, pre#code-block-4687.rouge .mb, pre#code-block-4687.rouge .mf, pre#code-block-4687.rouge .mh, pre#code-block-4687.rouge .mi, pre#code-block-4687.rouge .il, pre#code-block-4687.rouge .mo, pre#code-block-4687.rouge .mx { color: #0550ae; } pre#code-block-4687.rouge .sb { color: #0550ae; } pre#code-block-4687.rouge .bp { color: #0550ae; } pre#code-block-4687.rouge .ne { color: #0550ae; } pre#code-block-4687.rouge .nl { color: #0550ae; } pre#code-block-4687.rouge .py { color: #0550ae; } pre#code-block-4687.rouge .nv, pre#code-block-4687.rouge .vc, pre#code-block-4687.rouge .vg, pre#code-block-4687.rouge .vi, pre#code-block-4687.rouge .vm { color: #0550ae; } pre#code-block-4687.rouge .o, pre#code-block-4687.rouge .ow { color: #0550ae; } pre#code-block-4687.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-4687.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-4687.rouge .s, pre#code-block-4687.rouge .sa, pre#code-block-4687.rouge .sc, pre#code-block-4687.rouge .dl, pre#code-block-4687.rouge .sd, pre#code-block-4687.rouge .s2, pre#code-block-4687.rouge .se, pre#code-block-4687.rouge .sh, pre#code-block-4687.rouge .sx, pre#code-block-4687.rouge .s1, pre#code-block-4687.rouge .ss { color: #0a3069; } pre#code-block-4687.rouge .nd { color: #8250df; } pre#code-block-4687.rouge .nf, pre#code-block-4687.rouge .fm { color: #8250df; } pre#code-block-4687.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-4687.rouge .c, pre#code-block-4687.rouge .ch, pre#code-block-4687.rouge .cd, pre#code-block-4687.rouge .cm, pre#code-block-4687.rouge .cp, pre#code-block-4687.rouge .cpf, pre#code-block-4687.rouge .c1, pre#code-block-4687.rouge .cs { color: #6e7781; } pre#code-block-4687.rouge .gl { color: #6e7781; } pre#code-block-4687.rouge .gt { color: #6e7781; } pre#code-block-4687.rouge .ni { color: #24292f; } pre#code-block-4687.rouge .si { color: #24292f; } pre#code-block-4687.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-4687.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def inline? </h3> </div> </div> <pre id="code-block-2200" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">inline?</span> <span class="kp">false</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-2200.rouge table td { padding: 5px; } pre#code-block-2200.rouge table pre { margin: 0; } pre#code-block-2200.rouge, pre#code-block-2200.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-2200.rouge .k, pre#code-block-2200.rouge .kd, pre#code-block-2200.rouge .kn, pre#code-block-2200.rouge .kp, pre#code-block-2200.rouge .kr, pre#code-block-2200.rouge .kt, pre#code-block-2200.rouge .kv { color: #cf222e; } pre#code-block-2200.rouge .gr { color: #f6f8fa; } pre#code-block-2200.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-2200.rouge .nb { color: #953800; } pre#code-block-2200.rouge .nc { color: #953800; } pre#code-block-2200.rouge .no { color: #953800; } pre#code-block-2200.rouge .nn { color: #953800; } pre#code-block-2200.rouge .sr { color: #116329; } pre#code-block-2200.rouge .na { color: #116329; } pre#code-block-2200.rouge .nt { color: #116329; } pre#code-block-2200.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-2200.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-2200.rouge .kc { color: #0550ae; } pre#code-block-2200.rouge .l, pre#code-block-2200.rouge .ld, pre#code-block-2200.rouge .m, pre#code-block-2200.rouge .mb, pre#code-block-2200.rouge .mf, pre#code-block-2200.rouge .mh, pre#code-block-2200.rouge .mi, pre#code-block-2200.rouge .il, pre#code-block-2200.rouge .mo, pre#code-block-2200.rouge .mx { color: #0550ae; } pre#code-block-2200.rouge .sb { color: #0550ae; } pre#code-block-2200.rouge .bp { color: #0550ae; } pre#code-block-2200.rouge .ne { color: #0550ae; } pre#code-block-2200.rouge .nl { color: #0550ae; } pre#code-block-2200.rouge .py { color: #0550ae; } pre#code-block-2200.rouge .nv, pre#code-block-2200.rouge .vc, pre#code-block-2200.rouge .vg, pre#code-block-2200.rouge .vi, pre#code-block-2200.rouge .vm { color: #0550ae; } pre#code-block-2200.rouge .o, pre#code-block-2200.rouge .ow { color: #0550ae; } pre#code-block-2200.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-2200.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-2200.rouge .s, pre#code-block-2200.rouge .sa, pre#code-block-2200.rouge .sc, pre#code-block-2200.rouge .dl, pre#code-block-2200.rouge .sd, pre#code-block-2200.rouge .s2, pre#code-block-2200.rouge .se, pre#code-block-2200.rouge .sh, pre#code-block-2200.rouge .sx, pre#code-block-2200.rouge .s1, pre#code-block-2200.rouge .ss { color: #0a3069; } pre#code-block-2200.rouge .nd { color: #8250df; } pre#code-block-2200.rouge .nf, pre#code-block-2200.rouge .fm { color: #8250df; } pre#code-block-2200.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-2200.rouge .c, pre#code-block-2200.rouge .ch, pre#code-block-2200.rouge .cd, pre#code-block-2200.rouge .cm, pre#code-block-2200.rouge .cp, pre#code-block-2200.rouge .cpf, pre#code-block-2200.rouge .c1, pre#code-block-2200.rouge .cs { color: #6e7781; } pre#code-block-2200.rouge .gl { color: #6e7781; } pre#code-block-2200.rouge .gt { color: #6e7781; } pre#code-block-2200.rouge .ni { color: #24292f; } pre#code-block-2200.rouge .si { color: #24292f; } pre#code-block-2200.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-2200.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def lineno </h3> </div> Public: Get the source line number where this block started </div> <pre id="code-block-9816" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">lineno</span> <span class="vi">@source_location</span> <span class="o">&&</span> <span class="vi">@source_location</span><span class="p">.</span><span class="nf">lineno</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9816.rouge table td { padding: 5px; } pre#code-block-9816.rouge table pre { margin: 0; } pre#code-block-9816.rouge, pre#code-block-9816.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9816.rouge .k, pre#code-block-9816.rouge .kd, pre#code-block-9816.rouge .kn, pre#code-block-9816.rouge .kp, pre#code-block-9816.rouge .kr, pre#code-block-9816.rouge .kt, pre#code-block-9816.rouge .kv { color: #cf222e; } pre#code-block-9816.rouge .gr { color: #f6f8fa; } pre#code-block-9816.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9816.rouge .nb { color: #953800; } pre#code-block-9816.rouge .nc { color: #953800; } pre#code-block-9816.rouge .no { color: #953800; } pre#code-block-9816.rouge .nn { color: #953800; } pre#code-block-9816.rouge .sr { color: #116329; } pre#code-block-9816.rouge .na { color: #116329; } pre#code-block-9816.rouge .nt { color: #116329; } pre#code-block-9816.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9816.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9816.rouge .kc { color: #0550ae; } pre#code-block-9816.rouge .l, pre#code-block-9816.rouge .ld, pre#code-block-9816.rouge .m, pre#code-block-9816.rouge .mb, pre#code-block-9816.rouge .mf, pre#code-block-9816.rouge .mh, pre#code-block-9816.rouge .mi, pre#code-block-9816.rouge .il, pre#code-block-9816.rouge .mo, pre#code-block-9816.rouge .mx { color: #0550ae; } pre#code-block-9816.rouge .sb { color: #0550ae; } pre#code-block-9816.rouge .bp { color: #0550ae; } pre#code-block-9816.rouge .ne { color: #0550ae; } pre#code-block-9816.rouge .nl { color: #0550ae; } pre#code-block-9816.rouge .py { color: #0550ae; } pre#code-block-9816.rouge .nv, pre#code-block-9816.rouge .vc, pre#code-block-9816.rouge .vg, pre#code-block-9816.rouge .vi, pre#code-block-9816.rouge .vm { color: #0550ae; } pre#code-block-9816.rouge .o, pre#code-block-9816.rouge .ow { color: #0550ae; } pre#code-block-9816.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9816.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9816.rouge .s, pre#code-block-9816.rouge .sa, pre#code-block-9816.rouge .sc, pre#code-block-9816.rouge .dl, pre#code-block-9816.rouge .sd, pre#code-block-9816.rouge .s2, pre#code-block-9816.rouge .se, pre#code-block-9816.rouge .sh, pre#code-block-9816.rouge .sx, pre#code-block-9816.rouge .s1, pre#code-block-9816.rouge .ss { color: #0a3069; } pre#code-block-9816.rouge .nd { color: #8250df; } pre#code-block-9816.rouge .nf, pre#code-block-9816.rouge .fm { color: #8250df; } pre#code-block-9816.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9816.rouge .c, pre#code-block-9816.rouge .ch, pre#code-block-9816.rouge .cd, pre#code-block-9816.rouge .cm, pre#code-block-9816.rouge .cp, pre#code-block-9816.rouge .cpf, pre#code-block-9816.rouge .c1, pre#code-block-9816.rouge .cs { color: #6e7781; } pre#code-block-9816.rouge .gl { color: #6e7781; } pre#code-block-9816.rouge .gt { color: #6e7781; } pre#code-block-9816.rouge .ni { color: #24292f; } pre#code-block-9816.rouge .si { color: #24292f; } pre#code-block-9816.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9816.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def list_marker_keyword list_type = nil </h3> </div> Returns the single-character [String] keyword that represents the marker for the specified list type<br><br>list_type - the type of list; default to the @style if not specified<br><br>For use in the HTML type attribute.<br><br>Public: Retrieve the list marker keyword for the specified list type. </div> <pre id="code-block-3328" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">list_marker_keyword</span> <span class="n">list_type</span> <span class="o">=</span> <span class="kp">nil</span> <span class="no">ORDERED_LIST_KEYWORDS</span><span class="p">[</span><span class="n">list_type</span> <span class="o">||</span> <span class="vi">@style</span><span class="p">]</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-3328.rouge table td { padding: 5px; } pre#code-block-3328.rouge table pre { margin: 0; } pre#code-block-3328.rouge, pre#code-block-3328.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-3328.rouge .k, pre#code-block-3328.rouge .kd, pre#code-block-3328.rouge .kn, pre#code-block-3328.rouge .kp, pre#code-block-3328.rouge .kr, pre#code-block-3328.rouge .kt, pre#code-block-3328.rouge .kv { color: #cf222e; } pre#code-block-3328.rouge .gr { color: #f6f8fa; } pre#code-block-3328.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-3328.rouge .nb { color: #953800; } pre#code-block-3328.rouge .nc { color: #953800; } pre#code-block-3328.rouge .no { color: #953800; } pre#code-block-3328.rouge .nn { color: #953800; } pre#code-block-3328.rouge .sr { color: #116329; } pre#code-block-3328.rouge .na { color: #116329; } pre#code-block-3328.rouge .nt { color: #116329; } pre#code-block-3328.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-3328.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-3328.rouge .kc { color: #0550ae; } pre#code-block-3328.rouge .l, pre#code-block-3328.rouge .ld, pre#code-block-3328.rouge .m, pre#code-block-3328.rouge .mb, pre#code-block-3328.rouge .mf, pre#code-block-3328.rouge .mh, pre#code-block-3328.rouge .mi, pre#code-block-3328.rouge .il, pre#code-block-3328.rouge .mo, pre#code-block-3328.rouge .mx { color: #0550ae; } pre#code-block-3328.rouge .sb { color: #0550ae; } pre#code-block-3328.rouge .bp { color: #0550ae; } pre#code-block-3328.rouge .ne { color: #0550ae; } pre#code-block-3328.rouge .nl { color: #0550ae; } pre#code-block-3328.rouge .py { color: #0550ae; } pre#code-block-3328.rouge .nv, pre#code-block-3328.rouge .vc, pre#code-block-3328.rouge .vg, pre#code-block-3328.rouge .vi, pre#code-block-3328.rouge .vm { color: #0550ae; } pre#code-block-3328.rouge .o, pre#code-block-3328.rouge .ow { color: #0550ae; } pre#code-block-3328.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-3328.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-3328.rouge .s, pre#code-block-3328.rouge .sa, pre#code-block-3328.rouge .sc, pre#code-block-3328.rouge .dl, pre#code-block-3328.rouge .sd, pre#code-block-3328.rouge .s2, pre#code-block-3328.rouge .se, pre#code-block-3328.rouge .sh, pre#code-block-3328.rouge .sx, pre#code-block-3328.rouge .s1, pre#code-block-3328.rouge .ss { color: #0a3069; } pre#code-block-3328.rouge .nd { color: #8250df; } pre#code-block-3328.rouge .nf, pre#code-block-3328.rouge .fm { color: #8250df; } pre#code-block-3328.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-3328.rouge .c, pre#code-block-3328.rouge .ch, pre#code-block-3328.rouge .cd, pre#code-block-3328.rouge .cm, pre#code-block-3328.rouge .cp, pre#code-block-3328.rouge .cpf, pre#code-block-3328.rouge .c1, pre#code-block-3328.rouge .cs { color: #6e7781; } pre#code-block-3328.rouge .gl { color: #6e7781; } pre#code-block-3328.rouge .gt { color: #6e7781; } pre#code-block-3328.rouge .ni { color: #24292f; } pre#code-block-3328.rouge .si { color: #24292f; } pre#code-block-3328.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-3328.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def next_adjacent_block </h3> </div> item in a list, this method will return the following sibling of the list block.<br>Move to the next adjacent block in document order. If the current block is the last </div> <pre id="code-block-7071" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">next_adjacent_block</span> <span class="k">unless</span> <span class="vi">@context</span> <span class="o">==</span> <span class="ss">:document</span> <span class="k">if</span> <span class="p">(</span><span class="nb">p</span> <span class="o">=</span> <span class="vi">@parent</span><span class="p">).</span><span class="nf">context</span> <span class="o">==</span> <span class="ss">:dlist</span> <span class="o">&&</span> <span class="vi">@context</span> <span class="o">==</span> <span class="ss">:list_item</span> <span class="p">(</span><span class="n">sib</span> <span class="o">=</span> <span class="nb">p</span><span class="p">.</span><span class="nf">items</span><span class="p">[(</span><span class="nb">p</span><span class="p">.</span><span class="nf">items</span><span class="p">.</span><span class="nf">find_index</span> <span class="p">{</span><span class="o">|</span><span class="n">terms</span><span class="p">,</span> <span class="n">desc</span><span class="o">|</span> <span class="p">(</span><span class="n">terms</span><span class="p">.</span><span class="nf">include?</span> <span class="nb">self</span><span class="p">)</span> <span class="o">||</span> <span class="n">desc</span> <span class="o">==</span> <span class="nb">self</span> <span class="p">})</span> <span class="o">+</span> <span class="mi">1</span><span class="p">])</span> <span class="p">?</span> <span class="n">sib</span> <span class="p">:</span> <span class="nb">p</span><span class="p">.</span><span class="nf">next_adjacent_block</span> <span class="k">else</span> <span class="p">(</span><span class="n">sib</span> <span class="o">=</span> <span class="nb">p</span><span class="p">.</span><span class="nf">blocks</span><span class="p">[(</span><span class="nb">p</span><span class="p">.</span><span class="nf">blocks</span><span class="p">.</span><span class="nf">find_index</span> <span class="nb">self</span><span class="p">)</span> <span class="o">+</span> <span class="mi">1</span><span class="p">])</span> <span class="p">?</span> <span class="n">sib</span> <span class="p">:</span> <span class="nb">p</span><span class="p">.</span><span class="nf">next_adjacent_block</span> <span class="k">end</span> <span class="k">end</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-7071.rouge table td { padding: 5px; } pre#code-block-7071.rouge table pre { margin: 0; } pre#code-block-7071.rouge, pre#code-block-7071.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-7071.rouge .k, pre#code-block-7071.rouge .kd, pre#code-block-7071.rouge .kn, pre#code-block-7071.rouge .kp, pre#code-block-7071.rouge .kr, pre#code-block-7071.rouge .kt, pre#code-block-7071.rouge .kv { color: #cf222e; } pre#code-block-7071.rouge .gr { color: #f6f8fa; } pre#code-block-7071.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-7071.rouge .nb { color: #953800; } pre#code-block-7071.rouge .nc { color: #953800; } pre#code-block-7071.rouge .no { color: #953800; } pre#code-block-7071.rouge .nn { color: #953800; } pre#code-block-7071.rouge .sr { color: #116329; } pre#code-block-7071.rouge .na { color: #116329; } pre#code-block-7071.rouge .nt { color: #116329; } pre#code-block-7071.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-7071.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-7071.rouge .kc { color: #0550ae; } pre#code-block-7071.rouge .l, pre#code-block-7071.rouge .ld, pre#code-block-7071.rouge .m, pre#code-block-7071.rouge .mb, pre#code-block-7071.rouge .mf, pre#code-block-7071.rouge .mh, pre#code-block-7071.rouge .mi, pre#code-block-7071.rouge .il, pre#code-block-7071.rouge .mo, pre#code-block-7071.rouge .mx { color: #0550ae; } pre#code-block-7071.rouge .sb { color: #0550ae; } pre#code-block-7071.rouge .bp { color: #0550ae; } pre#code-block-7071.rouge .ne { color: #0550ae; } pre#code-block-7071.rouge .nl { color: #0550ae; } pre#code-block-7071.rouge .py { color: #0550ae; } pre#code-block-7071.rouge .nv, pre#code-block-7071.rouge .vc, pre#code-block-7071.rouge .vg, pre#code-block-7071.rouge .vi, pre#code-block-7071.rouge .vm { color: #0550ae; } pre#code-block-7071.rouge .o, pre#code-block-7071.rouge .ow { color: #0550ae; } pre#code-block-7071.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-7071.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-7071.rouge .s, pre#code-block-7071.rouge .sa, pre#code-block-7071.rouge .sc, pre#code-block-7071.rouge .dl, pre#code-block-7071.rouge .sd, pre#code-block-7071.rouge .s2, pre#code-block-7071.rouge .se, pre#code-block-7071.rouge .sh, pre#code-block-7071.rouge .sx, pre#code-block-7071.rouge .s1, pre#code-block-7071.rouge .ss { color: #0a3069; } pre#code-block-7071.rouge .nd { color: #8250df; } pre#code-block-7071.rouge .nf, pre#code-block-7071.rouge .fm { color: #8250df; } pre#code-block-7071.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-7071.rouge .c, pre#code-block-7071.rouge .ch, pre#code-block-7071.rouge .cd, pre#code-block-7071.rouge .cm, pre#code-block-7071.rouge .cp, pre#code-block-7071.rouge .cpf, pre#code-block-7071.rouge .c1, pre#code-block-7071.rouge .cs { color: #6e7781; } pre#code-block-7071.rouge .gl { color: #6e7781; } pre#code-block-7071.rouge .gt { color: #6e7781; } pre#code-block-7071.rouge .ni { color: #24292f; } pre#code-block-7071.rouge .si { color: #24292f; } pre#code-block-7071.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-7071.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def number </h3> </div> Deprecated: Legacy property to get the String or Integer numeral of this section. </div> <pre id="code-block-9734" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">number</span> <span class="p">(</span><span class="no">Integer</span> <span class="vi">@numeral</span><span class="p">)</span> <span class="k">rescue</span> <span class="vi">@numeral</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9734.rouge table td { padding: 5px; } pre#code-block-9734.rouge table pre { margin: 0; } pre#code-block-9734.rouge, pre#code-block-9734.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9734.rouge .k, pre#code-block-9734.rouge .kd, pre#code-block-9734.rouge .kn, pre#code-block-9734.rouge .kp, pre#code-block-9734.rouge .kr, pre#code-block-9734.rouge .kt, pre#code-block-9734.rouge .kv { color: #cf222e; } pre#code-block-9734.rouge .gr { color: #f6f8fa; } pre#code-block-9734.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9734.rouge .nb { color: #953800; } pre#code-block-9734.rouge .nc { color: #953800; } pre#code-block-9734.rouge .no { color: #953800; } pre#code-block-9734.rouge .nn { color: #953800; } pre#code-block-9734.rouge .sr { color: #116329; } pre#code-block-9734.rouge .na { color: #116329; } pre#code-block-9734.rouge .nt { color: #116329; } pre#code-block-9734.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9734.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9734.rouge .kc { color: #0550ae; } pre#code-block-9734.rouge .l, pre#code-block-9734.rouge .ld, pre#code-block-9734.rouge .m, pre#code-block-9734.rouge .mb, pre#code-block-9734.rouge .mf, pre#code-block-9734.rouge .mh, pre#code-block-9734.rouge .mi, pre#code-block-9734.rouge .il, pre#code-block-9734.rouge .mo, pre#code-block-9734.rouge .mx { color: #0550ae; } pre#code-block-9734.rouge .sb { color: #0550ae; } pre#code-block-9734.rouge .bp { color: #0550ae; } pre#code-block-9734.rouge .ne { color: #0550ae; } pre#code-block-9734.rouge .nl { color: #0550ae; } pre#code-block-9734.rouge .py { color: #0550ae; } pre#code-block-9734.rouge .nv, pre#code-block-9734.rouge .vc, pre#code-block-9734.rouge .vg, pre#code-block-9734.rouge .vi, pre#code-block-9734.rouge .vm { color: #0550ae; } pre#code-block-9734.rouge .o, pre#code-block-9734.rouge .ow { color: #0550ae; } pre#code-block-9734.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9734.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9734.rouge .s, pre#code-block-9734.rouge .sa, pre#code-block-9734.rouge .sc, pre#code-block-9734.rouge .dl, pre#code-block-9734.rouge .sd, pre#code-block-9734.rouge .s2, pre#code-block-9734.rouge .se, pre#code-block-9734.rouge .sh, pre#code-block-9734.rouge .sx, pre#code-block-9734.rouge .s1, pre#code-block-9734.rouge .ss { color: #0a3069; } pre#code-block-9734.rouge .nd { color: #8250df; } pre#code-block-9734.rouge .nf, pre#code-block-9734.rouge .fm { color: #8250df; } pre#code-block-9734.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9734.rouge .c, pre#code-block-9734.rouge .ch, pre#code-block-9734.rouge .cd, pre#code-block-9734.rouge .cm, pre#code-block-9734.rouge .cp, pre#code-block-9734.rouge .cpf, pre#code-block-9734.rouge .c1, pre#code-block-9734.rouge .cs { color: #6e7781; } pre#code-block-9734.rouge .gl { color: #6e7781; } pre#code-block-9734.rouge .gt { color: #6e7781; } pre#code-block-9734.rouge .ni { color: #24292f; } pre#code-block-9734.rouge .si { color: #24292f; } pre#code-block-9734.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9734.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def reindex_sections </h3> </div> Returns nothing<br><br>child sections or else the internal counters will be off.<br>IMPORTANT You must invoke this method on a node after removing<br><br>as it appears in document order.<br>and reassign the section 0-based index value to each Section<br>Walk the descendents of the current Document or Section<br><br>Internal: Reassign the section indexes </div> <pre id="code-block-1241" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">reindex_sections</span> <span class="vi">@next_section_index</span> <span class="o">=</span> <span class="mi">0</span> <span class="vi">@next_section_ordinal</span> <span class="o">=</span> <span class="mi">1</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">block</span><span class="o">|</span> <span class="k">if</span> <span class="n">block</span><span class="p">.</span><span class="nf">context</span> <span class="o">==</span> <span class="ss">:section</span> <span class="n">assign_numeral</span> <span class="n">block</span> <span class="n">block</span><span class="p">.</span><span class="nf">reindex_sections</span> <span class="k">end</span> <span class="k">end</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-1241.rouge table td { padding: 5px; } pre#code-block-1241.rouge table pre { margin: 0; } pre#code-block-1241.rouge, pre#code-block-1241.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-1241.rouge .k, pre#code-block-1241.rouge .kd, pre#code-block-1241.rouge .kn, pre#code-block-1241.rouge .kp, pre#code-block-1241.rouge .kr, pre#code-block-1241.rouge .kt, pre#code-block-1241.rouge .kv { color: #cf222e; } pre#code-block-1241.rouge .gr { color: #f6f8fa; } pre#code-block-1241.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-1241.rouge .nb { color: #953800; } pre#code-block-1241.rouge .nc { color: #953800; } pre#code-block-1241.rouge .no { color: #953800; } pre#code-block-1241.rouge .nn { color: #953800; } pre#code-block-1241.rouge .sr { color: #116329; } pre#code-block-1241.rouge .na { color: #116329; } pre#code-block-1241.rouge .nt { color: #116329; } pre#code-block-1241.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-1241.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-1241.rouge .kc { color: #0550ae; } pre#code-block-1241.rouge .l, pre#code-block-1241.rouge .ld, pre#code-block-1241.rouge .m, pre#code-block-1241.rouge .mb, pre#code-block-1241.rouge .mf, pre#code-block-1241.rouge .mh, pre#code-block-1241.rouge .mi, pre#code-block-1241.rouge .il, pre#code-block-1241.rouge .mo, pre#code-block-1241.rouge .mx { color: #0550ae; } pre#code-block-1241.rouge .sb { color: #0550ae; } pre#code-block-1241.rouge .bp { color: #0550ae; } pre#code-block-1241.rouge .ne { color: #0550ae; } pre#code-block-1241.rouge .nl { color: #0550ae; } pre#code-block-1241.rouge .py { color: #0550ae; } pre#code-block-1241.rouge .nv, pre#code-block-1241.rouge .vc, pre#code-block-1241.rouge .vg, pre#code-block-1241.rouge .vi, pre#code-block-1241.rouge .vm { color: #0550ae; } pre#code-block-1241.rouge .o, pre#code-block-1241.rouge .ow { color: #0550ae; } pre#code-block-1241.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-1241.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-1241.rouge .s, pre#code-block-1241.rouge .sa, pre#code-block-1241.rouge .sc, pre#code-block-1241.rouge .dl, pre#code-block-1241.rouge .sd, pre#code-block-1241.rouge .s2, pre#code-block-1241.rouge .se, pre#code-block-1241.rouge .sh, pre#code-block-1241.rouge .sx, pre#code-block-1241.rouge .s1, pre#code-block-1241.rouge .ss { color: #0a3069; } pre#code-block-1241.rouge .nd { color: #8250df; } pre#code-block-1241.rouge .nf, pre#code-block-1241.rouge .fm { color: #8250df; } pre#code-block-1241.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-1241.rouge .c, pre#code-block-1241.rouge .ch, pre#code-block-1241.rouge .cd, pre#code-block-1241.rouge .cm, pre#code-block-1241.rouge .cp, pre#code-block-1241.rouge .cpf, pre#code-block-1241.rouge .c1, pre#code-block-1241.rouge .cs { color: #6e7781; } pre#code-block-1241.rouge .gl { color: #6e7781; } pre#code-block-1241.rouge .gt { color: #6e7781; } pre#code-block-1241.rouge .ni { color: #24292f; } pre#code-block-1241.rouge .si { color: #24292f; } pre#code-block-1241.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-1241.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def remove_sub sub </h3> </div> Returns nothing<br><br>sub - The Symbol substitution name<br><br>Public: Remove a substitution from this block </div> <pre id="code-block-3757" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">remove_sub</span> <span class="nb">sub</span> <span class="vi">@subs</span><span class="p">.</span><span class="nf">delete</span> <span class="nb">sub</span> <span class="kp">nil</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-3757.rouge table td { padding: 5px; } pre#code-block-3757.rouge table pre { margin: 0; } pre#code-block-3757.rouge, pre#code-block-3757.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-3757.rouge .k, pre#code-block-3757.rouge .kd, pre#code-block-3757.rouge .kn, pre#code-block-3757.rouge .kp, pre#code-block-3757.rouge .kr, pre#code-block-3757.rouge .kt, pre#code-block-3757.rouge .kv { color: #cf222e; } pre#code-block-3757.rouge .gr { color: #f6f8fa; } pre#code-block-3757.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-3757.rouge .nb { color: #953800; } pre#code-block-3757.rouge .nc { color: #953800; } pre#code-block-3757.rouge .no { color: #953800; } pre#code-block-3757.rouge .nn { color: #953800; } pre#code-block-3757.rouge .sr { color: #116329; } pre#code-block-3757.rouge .na { color: #116329; } pre#code-block-3757.rouge .nt { color: #116329; } pre#code-block-3757.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-3757.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-3757.rouge .kc { color: #0550ae; } pre#code-block-3757.rouge .l, pre#code-block-3757.rouge .ld, pre#code-block-3757.rouge .m, pre#code-block-3757.rouge .mb, pre#code-block-3757.rouge .mf, pre#code-block-3757.rouge .mh, pre#code-block-3757.rouge .mi, pre#code-block-3757.rouge .il, pre#code-block-3757.rouge .mo, pre#code-block-3757.rouge .mx { color: #0550ae; } pre#code-block-3757.rouge .sb { color: #0550ae; } pre#code-block-3757.rouge .bp { color: #0550ae; } pre#code-block-3757.rouge .ne { color: #0550ae; } pre#code-block-3757.rouge .nl { color: #0550ae; } pre#code-block-3757.rouge .py { color: #0550ae; } pre#code-block-3757.rouge .nv, pre#code-block-3757.rouge .vc, pre#code-block-3757.rouge .vg, pre#code-block-3757.rouge .vi, pre#code-block-3757.rouge .vm { color: #0550ae; } pre#code-block-3757.rouge .o, pre#code-block-3757.rouge .ow { color: #0550ae; } pre#code-block-3757.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-3757.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-3757.rouge .s, pre#code-block-3757.rouge .sa, pre#code-block-3757.rouge .sc, pre#code-block-3757.rouge .dl, pre#code-block-3757.rouge .sd, pre#code-block-3757.rouge .s2, pre#code-block-3757.rouge .se, pre#code-block-3757.rouge .sh, pre#code-block-3757.rouge .sx, pre#code-block-3757.rouge .s1, pre#code-block-3757.rouge .ss { color: #0a3069; } pre#code-block-3757.rouge .nd { color: #8250df; } pre#code-block-3757.rouge .nf, pre#code-block-3757.rouge .fm { color: #8250df; } pre#code-block-3757.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-3757.rouge .c, pre#code-block-3757.rouge .ch, pre#code-block-3757.rouge .cd, pre#code-block-3757.rouge .cm, pre#code-block-3757.rouge .cp, pre#code-block-3757.rouge .cpf, pre#code-block-3757.rouge .c1, pre#code-block-3757.rouge .cs { color: #6e7781; } pre#code-block-3757.rouge .gl { color: #6e7781; } pre#code-block-3757.rouge .gt { color: #6e7781; } pre#code-block-3757.rouge .ni { color: #24292f; } pre#code-block-3757.rouge .si { color: #24292f; } pre#code-block-3757.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-3757.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def sections </h3> </div> Returns an [Array] of Section objects<br><br># => 1<br>sect1.sections.size<br># => 3<br>sect1.blocks.size<br># => true<br>sect1.blocks?<br>sect1_1 << (Block.new sect1_1, :paragraph, source: 'Paragraph 3')<br>sect1_1.title = 'Section 1.1'<br>sect1 << (sect1_1 = Section.new sect1, 2)<br>sect1 << para1 << para2<br>para2 = Block.new sect1, :paragraph, source: 'Paragraph 2'<br>para1 = Block.new sect1, :paragraph, source: 'Paragraph 1'<br>sect1.title = 'Section 1'<br>doc << (sect1 = Section.new doc, 1)<br><br>Examples<br><br>Only applies to Document and Section instances<br><br>Public: Get the Array of child Section objects </div> <pre id="code-block-6482" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">sections</span> <span class="vi">@blocks</span><span class="p">.</span><span class="nf">select</span> <span class="p">{</span><span class="o">|</span><span class="n">block</span><span class="o">|</span> <span class="n">block</span><span class="p">.</span><span class="nf">context</span> <span class="o">==</span> <span class="ss">:section</span> <span class="p">}</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-6482.rouge table td { padding: 5px; } pre#code-block-6482.rouge table pre { margin: 0; } pre#code-block-6482.rouge, pre#code-block-6482.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-6482.rouge .k, pre#code-block-6482.rouge .kd, pre#code-block-6482.rouge .kn, pre#code-block-6482.rouge .kp, pre#code-block-6482.rouge .kr, pre#code-block-6482.rouge .kt, pre#code-block-6482.rouge .kv { color: #cf222e; } pre#code-block-6482.rouge .gr { color: #f6f8fa; } pre#code-block-6482.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-6482.rouge .nb { color: #953800; } pre#code-block-6482.rouge .nc { color: #953800; } pre#code-block-6482.rouge .no { color: #953800; } pre#code-block-6482.rouge .nn { color: #953800; } pre#code-block-6482.rouge .sr { color: #116329; } pre#code-block-6482.rouge .na { color: #116329; } pre#code-block-6482.rouge .nt { color: #116329; } pre#code-block-6482.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-6482.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-6482.rouge .kc { color: #0550ae; } pre#code-block-6482.rouge .l, pre#code-block-6482.rouge .ld, pre#code-block-6482.rouge .m, pre#code-block-6482.rouge .mb, pre#code-block-6482.rouge .mf, pre#code-block-6482.rouge .mh, pre#code-block-6482.rouge .mi, pre#code-block-6482.rouge .il, pre#code-block-6482.rouge .mo, pre#code-block-6482.rouge .mx { color: #0550ae; } pre#code-block-6482.rouge .sb { color: #0550ae; } pre#code-block-6482.rouge .bp { color: #0550ae; } pre#code-block-6482.rouge .ne { color: #0550ae; } pre#code-block-6482.rouge .nl { color: #0550ae; } pre#code-block-6482.rouge .py { color: #0550ae; } pre#code-block-6482.rouge .nv, pre#code-block-6482.rouge .vc, pre#code-block-6482.rouge .vg, pre#code-block-6482.rouge .vi, pre#code-block-6482.rouge .vm { color: #0550ae; } pre#code-block-6482.rouge .o, pre#code-block-6482.rouge .ow { color: #0550ae; } pre#code-block-6482.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-6482.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-6482.rouge .s, pre#code-block-6482.rouge .sa, pre#code-block-6482.rouge .sc, pre#code-block-6482.rouge .dl, pre#code-block-6482.rouge .sd, pre#code-block-6482.rouge .s2, pre#code-block-6482.rouge .se, pre#code-block-6482.rouge .sh, pre#code-block-6482.rouge .sx, pre#code-block-6482.rouge .s1, pre#code-block-6482.rouge .ss { color: #0a3069; } pre#code-block-6482.rouge .nd { color: #8250df; } pre#code-block-6482.rouge .nf, pre#code-block-6482.rouge .fm { color: #8250df; } pre#code-block-6482.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-6482.rouge .c, pre#code-block-6482.rouge .ch, pre#code-block-6482.rouge .cd, pre#code-block-6482.rouge .cm, pre#code-block-6482.rouge .cp, pre#code-block-6482.rouge .cpf, pre#code-block-6482.rouge .c1, pre#code-block-6482.rouge .cs { color: #6e7781; } pre#code-block-6482.rouge .gl { color: #6e7781; } pre#code-block-6482.rouge .gt { color: #6e7781; } pre#code-block-6482.rouge .ni { color: #24292f; } pre#code-block-6482.rouge .si { color: #24292f; } pre#code-block-6482.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-6482.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def sections? </h3> </div> Returns A [Boolean] to indicate whether this block has child Section objects<br><br>Only applies to Document and Section instances<br><br>Public: Check whether this block has any child Section objects. </div> <pre id="code-block-410" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">sections?</span> <span class="vi">@next_section_index</span> <span class="o">></span> <span class="mi">0</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-410.rouge table td { padding: 5px; } pre#code-block-410.rouge table pre { margin: 0; } pre#code-block-410.rouge, pre#code-block-410.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-410.rouge .k, pre#code-block-410.rouge .kd, pre#code-block-410.rouge .kn, pre#code-block-410.rouge .kp, pre#code-block-410.rouge .kr, pre#code-block-410.rouge .kt, pre#code-block-410.rouge .kv { color: #cf222e; } pre#code-block-410.rouge .gr { color: #f6f8fa; } pre#code-block-410.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-410.rouge .nb { color: #953800; } pre#code-block-410.rouge .nc { color: #953800; } pre#code-block-410.rouge .no { color: #953800; } pre#code-block-410.rouge .nn { color: #953800; } pre#code-block-410.rouge .sr { color: #116329; } pre#code-block-410.rouge .na { color: #116329; } pre#code-block-410.rouge .nt { color: #116329; } pre#code-block-410.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-410.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-410.rouge .kc { color: #0550ae; } pre#code-block-410.rouge .l, pre#code-block-410.rouge .ld, pre#code-block-410.rouge .m, pre#code-block-410.rouge .mb, pre#code-block-410.rouge .mf, pre#code-block-410.rouge .mh, pre#code-block-410.rouge .mi, pre#code-block-410.rouge .il, pre#code-block-410.rouge .mo, pre#code-block-410.rouge .mx { color: #0550ae; } pre#code-block-410.rouge .sb { color: #0550ae; } pre#code-block-410.rouge .bp { color: #0550ae; } pre#code-block-410.rouge .ne { color: #0550ae; } pre#code-block-410.rouge .nl { color: #0550ae; } pre#code-block-410.rouge .py { color: #0550ae; } pre#code-block-410.rouge .nv, pre#code-block-410.rouge .vc, pre#code-block-410.rouge .vg, pre#code-block-410.rouge .vi, pre#code-block-410.rouge .vm { color: #0550ae; } pre#code-block-410.rouge .o, pre#code-block-410.rouge .ow { color: #0550ae; } pre#code-block-410.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-410.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-410.rouge .s, pre#code-block-410.rouge .sa, pre#code-block-410.rouge .sc, pre#code-block-410.rouge .dl, pre#code-block-410.rouge .sd, pre#code-block-410.rouge .s2, pre#code-block-410.rouge .se, pre#code-block-410.rouge .sh, pre#code-block-410.rouge .sx, pre#code-block-410.rouge .s1, pre#code-block-410.rouge .ss { color: #0a3069; } pre#code-block-410.rouge .nd { color: #8250df; } pre#code-block-410.rouge .nf, pre#code-block-410.rouge .fm { color: #8250df; } pre#code-block-410.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-410.rouge .c, pre#code-block-410.rouge .ch, pre#code-block-410.rouge .cd, pre#code-block-410.rouge .cm, pre#code-block-410.rouge .cp, pre#code-block-410.rouge .cpf, pre#code-block-410.rouge .c1, pre#code-block-410.rouge .cs { color: #6e7781; } pre#code-block-410.rouge .gl { color: #6e7781; } pre#code-block-410.rouge .gt { color: #6e7781; } pre#code-block-410.rouge .ni { color: #24292f; } pre#code-block-410.rouge .si { color: #24292f; } pre#code-block-410.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-410.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def sub? name </h3> </div> enabled for this block<br>Returns A Boolean indicating whether the specified substitution is<br><br>name - The Symbol substitution name<br><br>substitution is enabled for this block.<br>Public: A convenience method that checks whether the specified </div> <pre id="code-block-4390" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">sub?</span> <span class="nb">name</span> <span class="vi">@subs</span><span class="p">.</span><span class="nf">include?</span> <span class="nb">name</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-4390.rouge table td { padding: 5px; } pre#code-block-4390.rouge table pre { margin: 0; } pre#code-block-4390.rouge, pre#code-block-4390.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-4390.rouge .k, pre#code-block-4390.rouge .kd, pre#code-block-4390.rouge .kn, pre#code-block-4390.rouge .kp, pre#code-block-4390.rouge .kr, pre#code-block-4390.rouge .kt, pre#code-block-4390.rouge .kv { color: #cf222e; } pre#code-block-4390.rouge .gr { color: #f6f8fa; } pre#code-block-4390.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-4390.rouge .nb { color: #953800; } pre#code-block-4390.rouge .nc { color: #953800; } pre#code-block-4390.rouge .no { color: #953800; } pre#code-block-4390.rouge .nn { color: #953800; } pre#code-block-4390.rouge .sr { color: #116329; } pre#code-block-4390.rouge .na { color: #116329; } pre#code-block-4390.rouge .nt { color: #116329; } pre#code-block-4390.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-4390.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-4390.rouge .kc { color: #0550ae; } pre#code-block-4390.rouge .l, pre#code-block-4390.rouge .ld, pre#code-block-4390.rouge .m, pre#code-block-4390.rouge .mb, pre#code-block-4390.rouge .mf, pre#code-block-4390.rouge .mh, pre#code-block-4390.rouge .mi, pre#code-block-4390.rouge .il, pre#code-block-4390.rouge .mo, pre#code-block-4390.rouge .mx { color: #0550ae; } pre#code-block-4390.rouge .sb { color: #0550ae; } pre#code-block-4390.rouge .bp { color: #0550ae; } pre#code-block-4390.rouge .ne { color: #0550ae; } pre#code-block-4390.rouge .nl { color: #0550ae; } pre#code-block-4390.rouge .py { color: #0550ae; } pre#code-block-4390.rouge .nv, pre#code-block-4390.rouge .vc, pre#code-block-4390.rouge .vg, pre#code-block-4390.rouge .vi, pre#code-block-4390.rouge .vm { color: #0550ae; } pre#code-block-4390.rouge .o, pre#code-block-4390.rouge .ow { color: #0550ae; } pre#code-block-4390.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-4390.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-4390.rouge .s, pre#code-block-4390.rouge .sa, pre#code-block-4390.rouge .sc, pre#code-block-4390.rouge .dl, pre#code-block-4390.rouge .sd, pre#code-block-4390.rouge .s2, pre#code-block-4390.rouge .se, pre#code-block-4390.rouge .sh, pre#code-block-4390.rouge .sx, pre#code-block-4390.rouge .s1, pre#code-block-4390.rouge .ss { color: #0a3069; } pre#code-block-4390.rouge .nd { color: #8250df; } pre#code-block-4390.rouge .nf, pre#code-block-4390.rouge .fm { color: #8250df; } pre#code-block-4390.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-4390.rouge .c, pre#code-block-4390.rouge .ch, pre#code-block-4390.rouge .cd, pre#code-block-4390.rouge .cm, pre#code-block-4390.rouge .cp, pre#code-block-4390.rouge .cpf, pre#code-block-4390.rouge .c1, pre#code-block-4390.rouge .cs { color: #6e7781; } pre#code-block-4390.rouge .gl { color: #6e7781; } pre#code-block-4390.rouge .gt { color: #6e7781; } pre#code-block-4390.rouge .ni { color: #24292f; } pre#code-block-4390.rouge .si { color: #24292f; } pre#code-block-4390.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-4390.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def title </h3> </div> Returns the converted String title for this Block, or nil if the source title is falsy<br><br>=> "Foo 3^ # :: Bar(1)"<br>block.title<br>block.title = "Foo 3^ # {two-colons} Bar(1)"<br><br>Examples<br><br>:specialcharacters, :quotes, :replacements, :macros, :attributes and :post_replacements<br><br>The following substitutions are applied to block and section titles:<br><br>Public: Get the String title of this Block with title substitions applied </div> <pre id="code-block-2498" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">title</span> <span class="c1"># prevent substitutions from being applied to title multiple times</span> <span class="vi">@converted_title</span> <span class="o">||=</span> <span class="vi">@title</span> <span class="o">&&</span> <span class="p">(</span><span class="n">apply_title_subs</span> <span class="vi">@title</span><span class="p">)</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-2498.rouge table td { padding: 5px; } pre#code-block-2498.rouge table pre { margin: 0; } pre#code-block-2498.rouge, pre#code-block-2498.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-2498.rouge .k, pre#code-block-2498.rouge .kd, pre#code-block-2498.rouge .kn, pre#code-block-2498.rouge .kp, pre#code-block-2498.rouge .kr, pre#code-block-2498.rouge .kt, pre#code-block-2498.rouge .kv { color: #cf222e; } pre#code-block-2498.rouge .gr { color: #f6f8fa; } pre#code-block-2498.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-2498.rouge .nb { color: #953800; } pre#code-block-2498.rouge .nc { color: #953800; } pre#code-block-2498.rouge .no { color: #953800; } pre#code-block-2498.rouge .nn { color: #953800; } pre#code-block-2498.rouge .sr { color: #116329; } pre#code-block-2498.rouge .na { color: #116329; } pre#code-block-2498.rouge .nt { color: #116329; } pre#code-block-2498.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-2498.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-2498.rouge .kc { color: #0550ae; } pre#code-block-2498.rouge .l, pre#code-block-2498.rouge .ld, pre#code-block-2498.rouge .m, pre#code-block-2498.rouge .mb, pre#code-block-2498.rouge .mf, pre#code-block-2498.rouge .mh, pre#code-block-2498.rouge .mi, pre#code-block-2498.rouge .il, pre#code-block-2498.rouge .mo, pre#code-block-2498.rouge .mx { color: #0550ae; } pre#code-block-2498.rouge .sb { color: #0550ae; } pre#code-block-2498.rouge .bp { color: #0550ae; } pre#code-block-2498.rouge .ne { color: #0550ae; } pre#code-block-2498.rouge .nl { color: #0550ae; } pre#code-block-2498.rouge .py { color: #0550ae; } pre#code-block-2498.rouge .nv, pre#code-block-2498.rouge .vc, pre#code-block-2498.rouge .vg, pre#code-block-2498.rouge .vi, pre#code-block-2498.rouge .vm { color: #0550ae; } pre#code-block-2498.rouge .o, pre#code-block-2498.rouge .ow { color: #0550ae; } pre#code-block-2498.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-2498.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-2498.rouge .s, pre#code-block-2498.rouge .sa, pre#code-block-2498.rouge .sc, pre#code-block-2498.rouge .dl, pre#code-block-2498.rouge .sd, pre#code-block-2498.rouge .s2, pre#code-block-2498.rouge .se, pre#code-block-2498.rouge .sh, pre#code-block-2498.rouge .sx, pre#code-block-2498.rouge .s1, pre#code-block-2498.rouge .ss { color: #0a3069; } pre#code-block-2498.rouge .nd { color: #8250df; } pre#code-block-2498.rouge .nf, pre#code-block-2498.rouge .fm { color: #8250df; } pre#code-block-2498.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-2498.rouge .c, pre#code-block-2498.rouge .ch, pre#code-block-2498.rouge .cd, pre#code-block-2498.rouge .cm, pre#code-block-2498.rouge .cp, pre#code-block-2498.rouge .cpf, pre#code-block-2498.rouge .c1, pre#code-block-2498.rouge .cs { color: #6e7781; } pre#code-block-2498.rouge .gl { color: #6e7781; } pre#code-block-2498.rouge .gt { color: #6e7781; } pre#code-block-2498.rouge .ni { color: #24292f; } pre#code-block-2498.rouge .si { color: #24292f; } pre#code-block-2498.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-2498.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def title= val </h3> </div> Returns the new String title assigned to this Block<br><br>Public: Set the String block title. </div> <pre id="code-block-135" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">title</span><span class="o">=</span> <span class="n">val</span> <span class="vi">@converted_title</span> <span class="o">=</span> <span class="kp">nil</span> <span class="vi">@title</span> <span class="o">=</span> <span class="n">val</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-135.rouge table td { padding: 5px; } pre#code-block-135.rouge table pre { margin: 0; } pre#code-block-135.rouge, pre#code-block-135.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-135.rouge .k, pre#code-block-135.rouge .kd, pre#code-block-135.rouge .kn, pre#code-block-135.rouge .kp, pre#code-block-135.rouge .kr, pre#code-block-135.rouge .kt, pre#code-block-135.rouge .kv { color: #cf222e; } pre#code-block-135.rouge .gr { color: #f6f8fa; } pre#code-block-135.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-135.rouge .nb { color: #953800; } pre#code-block-135.rouge .nc { color: #953800; } pre#code-block-135.rouge .no { color: #953800; } pre#code-block-135.rouge .nn { color: #953800; } pre#code-block-135.rouge .sr { color: #116329; } pre#code-block-135.rouge .na { color: #116329; } pre#code-block-135.rouge .nt { color: #116329; } pre#code-block-135.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-135.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-135.rouge .kc { color: #0550ae; } pre#code-block-135.rouge .l, pre#code-block-135.rouge .ld, pre#code-block-135.rouge .m, pre#code-block-135.rouge .mb, pre#code-block-135.rouge .mf, pre#code-block-135.rouge .mh, pre#code-block-135.rouge .mi, pre#code-block-135.rouge .il, pre#code-block-135.rouge .mo, pre#code-block-135.rouge .mx { color: #0550ae; } pre#code-block-135.rouge .sb { color: #0550ae; } pre#code-block-135.rouge .bp { color: #0550ae; } pre#code-block-135.rouge .ne { color: #0550ae; } pre#code-block-135.rouge .nl { color: #0550ae; } pre#code-block-135.rouge .py { color: #0550ae; } pre#code-block-135.rouge .nv, pre#code-block-135.rouge .vc, pre#code-block-135.rouge .vg, pre#code-block-135.rouge .vi, pre#code-block-135.rouge .vm { color: #0550ae; } pre#code-block-135.rouge .o, pre#code-block-135.rouge .ow { color: #0550ae; } pre#code-block-135.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-135.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-135.rouge .s, pre#code-block-135.rouge .sa, pre#code-block-135.rouge .sc, pre#code-block-135.rouge .dl, pre#code-block-135.rouge .sd, pre#code-block-135.rouge .s2, pre#code-block-135.rouge .se, pre#code-block-135.rouge .sh, pre#code-block-135.rouge .sx, pre#code-block-135.rouge .s1, pre#code-block-135.rouge .ss { color: #0a3069; } pre#code-block-135.rouge .nd { color: #8250df; } pre#code-block-135.rouge .nf, pre#code-block-135.rouge .fm { color: #8250df; } pre#code-block-135.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-135.rouge .c, pre#code-block-135.rouge .ch, pre#code-block-135.rouge .cd, pre#code-block-135.rouge .cm, pre#code-block-135.rouge .cp, pre#code-block-135.rouge .cpf, pre#code-block-135.rouge .c1, pre#code-block-135.rouge .cs { color: #6e7781; } pre#code-block-135.rouge .gl { color: #6e7781; } pre#code-block-135.rouge .gt { color: #6e7781; } pre#code-block-135.rouge .ni { color: #24292f; } pre#code-block-135.rouge .si { color: #24292f; } pre#code-block-135.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-135.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def title? </h3> </div> Returns a [Boolean] indicating whether this block has a title.<br><br>Public: A convenience method that checks whether the title of this block is defined. </div> <pre id="code-block-8735" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">title?</span> <span class="vi">@title</span> <span class="p">?</span> <span class="kp">true</span> <span class="p">:</span> <span class="kp">false</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-8735.rouge table td { padding: 5px; } pre#code-block-8735.rouge table pre { margin: 0; } pre#code-block-8735.rouge, pre#code-block-8735.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-8735.rouge .k, pre#code-block-8735.rouge .kd, pre#code-block-8735.rouge .kn, pre#code-block-8735.rouge .kp, pre#code-block-8735.rouge .kr, pre#code-block-8735.rouge .kt, pre#code-block-8735.rouge .kv { color: #cf222e; } pre#code-block-8735.rouge .gr { color: #f6f8fa; } pre#code-block-8735.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-8735.rouge .nb { color: #953800; } pre#code-block-8735.rouge .nc { color: #953800; } pre#code-block-8735.rouge .no { color: #953800; } pre#code-block-8735.rouge .nn { color: #953800; } pre#code-block-8735.rouge .sr { color: #116329; } pre#code-block-8735.rouge .na { color: #116329; } pre#code-block-8735.rouge .nt { color: #116329; } pre#code-block-8735.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-8735.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-8735.rouge .kc { color: #0550ae; } pre#code-block-8735.rouge .l, pre#code-block-8735.rouge .ld, pre#code-block-8735.rouge .m, pre#code-block-8735.rouge .mb, pre#code-block-8735.rouge .mf, pre#code-block-8735.rouge .mh, pre#code-block-8735.rouge .mi, pre#code-block-8735.rouge .il, pre#code-block-8735.rouge .mo, pre#code-block-8735.rouge .mx { color: #0550ae; } pre#code-block-8735.rouge .sb { color: #0550ae; } pre#code-block-8735.rouge .bp { color: #0550ae; } pre#code-block-8735.rouge .ne { color: #0550ae; } pre#code-block-8735.rouge .nl { color: #0550ae; } pre#code-block-8735.rouge .py { color: #0550ae; } pre#code-block-8735.rouge .nv, pre#code-block-8735.rouge .vc, pre#code-block-8735.rouge .vg, pre#code-block-8735.rouge .vi, pre#code-block-8735.rouge .vm { color: #0550ae; } pre#code-block-8735.rouge .o, pre#code-block-8735.rouge .ow { color: #0550ae; } pre#code-block-8735.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-8735.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-8735.rouge .s, pre#code-block-8735.rouge .sa, pre#code-block-8735.rouge .sc, pre#code-block-8735.rouge .dl, pre#code-block-8735.rouge .sd, pre#code-block-8735.rouge .s2, pre#code-block-8735.rouge .se, pre#code-block-8735.rouge .sh, pre#code-block-8735.rouge .sx, pre#code-block-8735.rouge .s1, pre#code-block-8735.rouge .ss { color: #0a3069; } pre#code-block-8735.rouge .nd { color: #8250df; } pre#code-block-8735.rouge .nf, pre#code-block-8735.rouge .fm { color: #8250df; } pre#code-block-8735.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-8735.rouge .c, pre#code-block-8735.rouge .ch, pre#code-block-8735.rouge .cd, pre#code-block-8735.rouge .cm, pre#code-block-8735.rouge .cp, pre#code-block-8735.rouge .cpf, pre#code-block-8735.rouge .c1, pre#code-block-8735.rouge .cs { color: #6e7781; } pre#code-block-8735.rouge .gl { color: #6e7781; } pre#code-block-8735.rouge .gt { color: #6e7781; } pre#code-block-8735.rouge .ni { color: #24292f; } pre#code-block-8735.rouge .si { color: #24292f; } pre#code-block-8735.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-8735.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> <div class="mt-6 overflow-scroll"> <div class="mt-6 mb-3"> <div class="border-b border-gray-300 pb-2 mb-4"> <h3 class="fs-step-1 font-medium tracking-tight monospace-font-family">def xreftext xrefstyle = nil </h3> </div> nothing if there isn't sufficient information to generate one.<br>Returns the generated [String] xreftext used to refer to this block or<br><br>the xreftext ('full', 'short', or 'basic') (default: nil).<br>xrefstyle - An optional String that specifies the style to use to format<br><br>nil otherwise.<br>text. If this is not a captioned block, return the title, if present, or<br>leverage the {Substitutors#sub_quotes} method to apply formatting to the<br>the value of the xrefstyle argument (e.g., full, short). This logic may<br>block with both a title and caption), generate the xreftext according to<br>{#reftext} method. Otherwise, if this is a section or captioned block (a<br>Use the explicit reftext for this block, if specified, retrieved from the<br><br>to this block.<br>Public: Generate cross reference text (xreftext) that can be used to refer </div> <pre id="code-block-9802" class="rouge border border-gray-300 rounded overflow-scroll px-4 py-2"><span class="k">def</span> <span class="nf">xreftext</span> <span class="n">xrefstyle</span> <span class="o">=</span> <span class="kp">nil</span> <span class="k">if</span> <span class="p">(</span><span class="n">val</span> <span class="o">=</span> <span class="n">reftext</span><span class="p">)</span> <span class="o">&&</span> <span class="o">!</span><span class="n">val</span><span class="p">.</span><span class="nf">empty?</span> <span class="n">val</span> <span class="c1"># NOTE xrefstyle only applies to blocks with a title and a caption or number</span> <span class="k">elsif</span> <span class="n">xrefstyle</span> <span class="o">&&</span> <span class="vi">@title</span> <span class="o">&&</span> <span class="vi">@caption</span> <span class="k">case</span> <span class="n">xrefstyle</span> <span class="k">when</span> <span class="s1">'full'</span> <span class="n">quoted_title</span> <span class="o">=</span> <span class="n">sub_placeholder</span> <span class="p">(</span><span class="n">sub_quotes</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">compat_mode</span> <span class="p">?</span> <span class="sx">%q(``%s'')</span> <span class="p">:</span> <span class="s1">'"`%s`"'</span><span class="p">),</span> <span class="n">title</span> <span class="k">if</span> <span class="vi">@numeral</span> <span class="o">&&</span> <span class="p">(</span><span class="n">caption_attr_name</span> <span class="o">=</span> <span class="no">CAPTION_ATTR_NAMES</span><span class="p">[</span><span class="vi">@context</span><span class="p">])</span> <span class="o">&&</span> <span class="p">(</span><span class="n">prefix</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">attributes</span><span class="p">[</span><span class="n">caption_attr_name</span><span class="p">])</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">prefix</span><span class="si">}</span><span class="sx"> </span><span class="si">#{</span><span class="vi">@numeral</span><span class="si">}</span><span class="sx">, </span><span class="si">#{</span><span class="n">quoted_title</span><span class="si">}</span><span class="sx">)</span> <span class="k">else</span> <span class="sx">%(</span><span class="si">#{</span><span class="vi">@caption</span><span class="p">.</span><span class="nf">chomp</span> <span class="s1">'. '</span><span class="si">}</span><span class="sx">, </span><span class="si">#{</span><span class="n">quoted_title</span><span class="si">}</span><span class="sx">)</span> <span class="k">end</span> <span class="k">when</span> <span class="s1">'short'</span> <span class="k">if</span> <span class="vi">@numeral</span> <span class="o">&&</span> <span class="p">(</span><span class="n">caption_attr_name</span> <span class="o">=</span> <span class="no">CAPTION_ATTR_NAMES</span><span class="p">[</span><span class="vi">@context</span><span class="p">])</span> <span class="o">&&</span> <span class="p">(</span><span class="n">prefix</span> <span class="o">=</span> <span class="vi">@document</span><span class="p">.</span><span class="nf">attributes</span><span class="p">[</span><span class="n">caption_attr_name</span><span class="p">])</span> <span class="sx">%(</span><span class="si">#{</span><span class="n">prefix</span><span class="si">}</span><span class="sx"> </span><span class="si">#{</span><span class="vi">@numeral</span><span class="si">}</span><span class="sx">)</span> <span class="k">else</span> <span class="vi">@caption</span><span class="p">.</span><span class="nf">chomp</span> <span class="s1">'. '</span> <span class="k">end</span> <span class="k">else</span> <span class="c1"># 'basic'</span> <span class="n">title</span> <span class="k">end</span> <span class="k">else</span> <span class="n">title</span> <span class="k">end</span> <span class="k">end</span></pre> <style type="text/css"> pre#code-block-9802.rouge table td { padding: 5px; } pre#code-block-9802.rouge table pre { margin: 0; } pre#code-block-9802.rouge, pre#code-block-9802.rouge .w { color: #24292f; background-color: #f6f8fa; } pre#code-block-9802.rouge .k, pre#code-block-9802.rouge .kd, pre#code-block-9802.rouge .kn, pre#code-block-9802.rouge .kp, pre#code-block-9802.rouge .kr, pre#code-block-9802.rouge .kt, pre#code-block-9802.rouge .kv { color: #cf222e; } pre#code-block-9802.rouge .gr { color: #f6f8fa; } pre#code-block-9802.rouge .gd { color: #82071e; background-color: #ffebe9; } pre#code-block-9802.rouge .nb { color: #953800; } pre#code-block-9802.rouge .nc { color: #953800; } pre#code-block-9802.rouge .no { color: #953800; } pre#code-block-9802.rouge .nn { color: #953800; } pre#code-block-9802.rouge .sr { color: #116329; } pre#code-block-9802.rouge .na { color: #116329; } pre#code-block-9802.rouge .nt { color: #116329; } pre#code-block-9802.rouge .gi { color: #116329; background-color: #dafbe1; } pre#code-block-9802.rouge .ges { font-weight: bold; font-style: italic; } pre#code-block-9802.rouge .kc { color: #0550ae; } pre#code-block-9802.rouge .l, pre#code-block-9802.rouge .ld, pre#code-block-9802.rouge .m, pre#code-block-9802.rouge .mb, pre#code-block-9802.rouge .mf, pre#code-block-9802.rouge .mh, pre#code-block-9802.rouge .mi, pre#code-block-9802.rouge .il, pre#code-block-9802.rouge .mo, pre#code-block-9802.rouge .mx { color: #0550ae; } pre#code-block-9802.rouge .sb { color: #0550ae; } pre#code-block-9802.rouge .bp { color: #0550ae; } pre#code-block-9802.rouge .ne { color: #0550ae; } pre#code-block-9802.rouge .nl { color: #0550ae; } pre#code-block-9802.rouge .py { color: #0550ae; } pre#code-block-9802.rouge .nv, pre#code-block-9802.rouge .vc, pre#code-block-9802.rouge .vg, pre#code-block-9802.rouge .vi, pre#code-block-9802.rouge .vm { color: #0550ae; } pre#code-block-9802.rouge .o, pre#code-block-9802.rouge .ow { color: #0550ae; } pre#code-block-9802.rouge .gh { color: #0550ae; font-weight: bold; } pre#code-block-9802.rouge .gu { color: #0550ae; font-weight: bold; } pre#code-block-9802.rouge .s, pre#code-block-9802.rouge .sa, pre#code-block-9802.rouge .sc, pre#code-block-9802.rouge .dl, pre#code-block-9802.rouge .sd, pre#code-block-9802.rouge .s2, pre#code-block-9802.rouge .se, pre#code-block-9802.rouge .sh, pre#code-block-9802.rouge .sx, pre#code-block-9802.rouge .s1, pre#code-block-9802.rouge .ss { color: #0a3069; } pre#code-block-9802.rouge .nd { color: #8250df; } pre#code-block-9802.rouge .nf, pre#code-block-9802.rouge .fm { color: #8250df; } pre#code-block-9802.rouge .err { color: #f6f8fa; background-color: #82071e; } pre#code-block-9802.rouge .c, pre#code-block-9802.rouge .ch, pre#code-block-9802.rouge .cd, pre#code-block-9802.rouge .cm, pre#code-block-9802.rouge .cp, pre#code-block-9802.rouge .cpf, pre#code-block-9802.rouge .c1, pre#code-block-9802.rouge .cs { color: #6e7781; } pre#code-block-9802.rouge .gl { color: #6e7781; } pre#code-block-9802.rouge .gt { color: #6e7781; } pre#code-block-9802.rouge .ni { color: #24292f; } pre#code-block-9802.rouge .si { color: #24292f; } pre#code-block-9802.rouge .ge { color: #24292f; font-style: italic; } pre#code-block-9802.rouge .gs { color: #24292f; font-weight: bold; } </style> </div> </div> </div> </div> </main> </div> <div class="overflow-hidden mt-6 hidden xl:block"> <div class="block truncate col-span-1 mb-6"> <h3 class="list-header">Namespace</h3> <ul class="list code"> <li><a href="/gems/asciidoctor/v2.0.4/modules/Asciidoctor">Asciidoctor</a></li> </ul> </div> <div class="block truncate col-span-1 mb-6"> <h3 class="list-header">Parent class</h3> <ul class="list code"> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractNode">Asciidoctor::AbstractNode</a></li> </ul> </div> <div class="block truncate col-span-1 mb-6"> <h3 class="list-header">Instance Methods</h3> <ul class="list code"> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/%3C%3C"># <<</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/alt"># alt</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/assign_caption"># assign_caption</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/assign_numeral"># assign_numeral</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/block%3F"># block?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/blocks%3F"># blocks?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/caption"># caption</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/captioned_title"># captioned_title</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/content"># content</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/context="># context=</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/convert"># convert</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/file"># file</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/find_by"># find_by</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/find_by_internal"># find_by_internal</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/initialize"># initialize</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/inline%3F"># inline?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/lineno"># lineno</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/list_marker_keyword"># list_marker_keyword</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/next_adjacent_block"># next_adjacent_block</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/number"># number</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/reindex_sections"># reindex_sections</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/remove_sub"># remove_sub</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/sections"># sections</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/sections%3F"># sections?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/sub%3F"># sub?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/title"># title</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/title="># title=</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/title%3F"># title?</a></li> <li><a href="/gems/asciidoctor/v2.0.4/classes/Asciidoctor::AbstractBlock/instance_methods/xreftext"># xreftext</a></li> </ul> </div> <div class="block truncate col-span-1 mb-6"> <h3 class="list-header">Defined in</h3> <ul class="list code"> <li><a href="/gems/asciidoctor/v2.0.4/files/lib%2Fasciidoctor%2Fabstract_block.rb">lib/asciidoctor/abstract_block.rb</a></li> </ul> </div> </div> </div> </div> </main> </div> <footer class="bg-white"> <div class="mx-auto max-w-7xl overflow-hidden px-6 py-20 sm:py-24 lg:px-8"> <nav class="-mb-6 flex flex-wrap text-center justify-center gap-x-12" aria-label="Footer"> <div class="pb-6"> <a class="text-sm leading-6 text-gray-600 hover:text-gray-900" href="/">Home</a> </div> <div class="pb-6"> <a class="text-sm leading-6 text-gray-600 hover:text-gray-900" href="/gems">Gems</a> </div> <div class="pb-6"> <a class="text-sm leading-6 text-gray-600 hover:text-gray-900" href="/docs">Docs</a> </div> <div class="pb-6"> <a target="_blank" class="text-sm leading-6 text-gray-600 hover:text-gray-900" href="https://github.com/marcoroth/gem.sh">Contribute</a> </div> <div class="pb-6"> <a target="_blank" class="text-sm leading-6 text-gray-600 hover:text-gray-900" href="https://www.rorvswild.com/applications/136042/requests?utm_medium=referral&utm_source=gem.sh">Monitoring</a> </div> </nav> <div class="mt-8 flex justify-center space-x-6"> <a target="_blank" href="https://twitter.com/marcoroth_" class="text-gray-400 hover:text-gray-500"> <span class="sr-only">Twitter</span> <svg class="h-6 w-6" fill="currentColor" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path> </svg> </a> <a target="_blank" href="https://github.com/marcoroth/gem.sh" class="text-gray-400 hover:text-gray-500"> <span class="sr-only">GitHub</span> <svg class="h-6 w-6" fill="currentColor" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"> <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path> </svg> </a> <a target="_blank" href="https://ruby.social/@marcoroth" target="_blank" class="text-gray-400 hover:text-gray-500"> <span class="sr-only">Mastodon</span> <svg class="h-6 w-6" fill="currentColor" viewBox="0 0 16 16"> <path d="M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a3.614 3.614 0 0 1-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522c0-.859.22-1.541.66-2.046.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764.442.505.661 1.187.661 2.046v4.203z"></path> </svg> </a> </div> <p class="mt-10 text-center text-xs leading-5 text-gray-500"> © 2025 gem.sh - Beautiful documentation for any Ruby gem </p> </div> </footer> </body> </html>