<!DOCTYPE html>

<html> <head> <meta charset=“UTF-8”>

<title>class ReVIEW::EWBBuilder - review-2.2.0 Documentation</title>

<script type=“text/javascript”>

var rdoc_rel_prefix = "../";
var index_rel_prefix = "../";

</script>

<script src=“../js/jquery.js”></script> <script src=“../js/darkfish.js”></script>

<link href=“../css/fonts.css” rel=“stylesheet”> <link href=“../css/rdoc.css” rel=“stylesheet”>

<body id=“top” role=“document” class=“class”> <nav role=“navigation”>

<div id="project-navigation">
  <div id="home-section" role="region" title="Quick navigation" class="nav-section">
<h2>
  <a href="../index.html" rel="home">Home</a>
</h2>

<div id="table-of-contents-navigation">
  <a href="../table_of_contents.html#pages">Pages</a>
  <a href="../table_of_contents.html#classes">Classes</a>
  <a href="../table_of_contents.html#methods">Methods</a>
</div>

</div>

  <div id="search-section" role="search" class="project-section initially-hidden">
<form action="#" method="get" accept-charset="utf-8">
  <div id="search-field-wrapper">
    <input id="search-field" role="combobox" aria-label="Search"
           aria-autocomplete="list" aria-controls="search-results"
           type="text" name="search" placeholder="Search" spellcheck="false"
           title="Type to search, Up and Down to navigate, Enter to load">
  </div>

  <ul id="search-results" aria-label="Search Results"
      aria-busy="false" aria-expanded="false"
      aria-atomic="false" class="initially-hidden"></ul>
</form>

</div>

</div>

<div id="class-metadata">

  <div id="parent-class-section" class="nav-section">
<h3>Parent</h3>

<p class="link"><a href="Builder.html">ReVIEW::Builder</a>

</div>

  <div id="includes-section" class="nav-section">
<h3>Included Modules</h3>

<ul class="link-list">

  <li><a class="include" href="TextUtils.html">ReVIEW::TextUtils</a>

</ul>

</div>

<!-- Method Quickref -->

<div id=“method-list-section” class=“nav-section”>

<h3>Methods</h3>

<ul class="link-list" role="directory">

  <li class="calls-super" ><a href="#method-c-new">::new</a>

  <li ><a href="#method-i-add_index">#add_index</a>

  <li ><a href="#method-i-cascade">#cascade</a>

  <li ><a href="#method-i-chapter_id">#chapter_id</a>

  <li ><a href="#method-i-chapter_name">#chapter_name</a>

  <li ><a href="#method-i-chapter_number">#chapter_number</a>

  <li ><a href="#method-i-chapter_prefix">#chapter_prefix</a>

  <li ><a href="#method-i-char_length">#char_length</a>

  <li ><a href="#method-i-cmd">#cmd</a>

  <li ><a href="#method-i-emlist">#emlist</a>

  <li ><a href="#method-i-escape">#escape</a>

  <li ><a href="#method-i-figure_filename">#figure_filename</a>

  <li ><a href="#method-i-figure_number">#figure_number</a>

  <li ><a href="#method-i-footnote_number">#footnote_number</a>

  <li ><a href="#method-i-generate_index">#generate_index</a>

  <li ><a href="#method-i-headline">#headline</a>

  <li ><a href="#method-i-image_dummy">#image_dummy</a>

  <li ><a href="#method-i-image_header">#image_header</a>

  <li ><a href="#method-i-image_label">#image_label</a>

  <li ><a href="#method-i-index_number">#index_number</a>

  <li ><a href="#method-i-inline_bou">#inline_bou</a>

  <li ><a href="#method-i-inline_chap">#inline_chap</a>

  <li ><a href="#method-i-inline_chapname">#inline_chapname</a>

  <li ><a href="#method-i-inline_chapref">#inline_chapref</a>

  <li ><a href="#method-i-inline_em">#inline_em</a>

  <li ><a href="#method-i-inline_footnote">#inline_footnote</a>

  <li ><a href="#method-i-inline_img">#inline_img</a>

  <li ><a href="#method-i-inline_keytop">#inline_keytop</a>

  <li ><a href="#method-i-inline_kw">#inline_kw</a>

  <li ><a href="#method-i-inline_list">#inline_list</a>

  <li ><a href="#method-i-inline_math">#inline_math</a>

  <li ><a href="#method-i-inline_ruby">#inline_ruby</a>

  <li ><a href="#method-i-list">#list</a>

  <li ><a href="#method-i-list_number">#list_number</a>

  <li ><a href="#method-i-noindent">#noindent</a>

  <li ><a href="#method-i-note">#note</a>

  <li ><a href="#method-i-ol_begin">#ol_begin</a>

  <li ><a href="#method-i-ol_end">#ol_end</a>

  <li ><a href="#method-i-ol_item">#ol_item</a>

  <li ><a href="#method-i-paragraph">#paragraph</a>

  <li ><a href="#method-i-point">#point</a>

  <li ><a href="#method-i-quote">#quote</a>

  <li ><a href="#method-i-refer">#refer</a>

  <li ><a href="#method-i-table">#table</a>

  <li ><a href="#method-i-text">#text</a>

  <li ><a href="#method-i-ul_begin">#ul_begin</a>

  <li ><a href="#method-i-ul_end">#ul_end</a>

  <li ><a href="#method-i-ul_item">#ul_item</a>

  <li ><a href="#method-i-vspace">#vspace</a>

</ul>

</div>

</div>

</nav>

<main role=“main” aria-labelledby=“class-ReVIEW::EWBBuilder”>

<h1 id="class-ReVIEW::EWBBuilder" class="class">
  class ReVIEW::EWBBuilder
</h1>

<section class="description">

</section>

<section id="5Buntitled-5D" class="documentation-section">

  <section class="constants-list">
    <header>
      <h3>Constants</h3>
    </header>
    <dl>

      <dt id="LI">LI

      <dd>

      <dt id="NAKAGURO">NAKAGURO

      <dd>

      <dt id="Z_SPACE">Z_SPACE

      <dd>

    </dl>
  </section>

   <section id="public-class-5Buntitled-5D-method-details" class="method-section">
     <header>
       <h3>Public Class Methods</h3>
     </header>

    <div id="method-c-new" class="method-detail ">

      <div class="method-heading">
        <span class="method-name">new</span><span
          class="method-args">(chap)</span>

        <span class="method-click-advice">click to toggle source</span>

      </div>

      <div class="method-description">

          <div class="method-calls-super">
            Calls superclass method
            <a href="Builder.html#method-c-new">ReVIEW::Builder.new</a>
          </div>

        <div class="method-source-code" id="new-source">
          <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 11</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>initialize</span>(<span class=“ruby-identifier”>chap</span>)

<span class="ruby-keyword">super</span>
<span class="ruby-ivar">@footnote_buf</span> = []
<span class="ruby-ivar">@index_buffer</span> = []

<span class=“ruby-keyword”>end</span></pre>

      </div>

    </div>

  </div>

</section>

 <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
   <header>
     <h3>Public Instance Methods</h3>
   </header>

  <div id="method-i-add_index" class="method-detail ">

    <div class="method-heading">
      <span class="method-name">add_index</span><span
        class="method-args">(str)</span>

      <span class="method-click-advice">click to toggle source</span>

    </div>

    <div class="method-description">

      <div class="method-source-code" id="add_index-source">
        <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 367</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>add_index</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-ivar">@index_buffer</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">str</span>
<span class="ruby-node">&quot;//in#{index_number(@index_buffer.size)}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-cascade" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">cascade</span><span
      class="method-args">(f)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="cascade-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 196</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>cascade</span>(<span class=“ruby-identifier”>f</span>)

<span class="ruby-comment"># FIXME</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-chapter_id" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">chapter_id</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="chapter_id-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 326</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>chapter_id</span>

<span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-ivar">@filename</span>, <span class="ruby-string">&#39;.rd&#39;</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-chapter_name" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">chapter_name</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="chapter_name-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 351</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>chapter_name</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-string">&#39;『&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">text</span>(<span class="ruby-ivar">@chapter_table</span>.<span class="ruby-identifier">title</span>(<span class="ruby-identifier">key</span>)) <span class="ruby-operator">+</span> <span class="ruby-string">&#39;』&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-chapter_number" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">chapter_number</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="chapter_number-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 334</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>chapter_number</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-identifier">curr</span> = <span class="ruby-ivar">@chapter_table</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">chapter_id</span>)
<span class="ruby-identifier">dest</span> = <span class="ruby-ivar">@chapter_table</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">key</span>)

<span class="ruby-keyword">case</span> <span class="ruby-identifier">chapter_id</span>
<span class="ruby-keyword">when</span> <span class="ruby-regexp">/\.ewb\z/</span>, <span class="ruby-string">&#39;tmp&#39;</span>, <span class="ruby-string">&#39;temp&#39;</span>
  <span class="ruby-keyword">return</span> <span class="ruby-string">&#39;第&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">dest</span> <span class="ruby-operator">+</span> <span class="ruby-string">&#39;章&#39;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">dest</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">curr</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
  <span class="ruby-string">&#39;次章&#39;</span>
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">dest</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">curr</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>
  <span class="ruby-string">&#39;前章&#39;</span>
<span class="ruby-keyword">else</span>
  <span class="ruby-node">&quot;第#{dest}章&quot;</span>
<span class="ruby-keyword">end</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-chapter_prefix" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">chapter_prefix</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="chapter_prefix-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 330</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>chapter_prefix</span>

<span class="ruby-identifier">sprintf</span>(<span class="ruby-string">&#39;%02d&#39;</span>, <span class="ruby-ivar">@chapter_table</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">chapter_id</span>))

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-char_length" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">char_length</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="char_length-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 314</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>char_length</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/./</span>, <span class="ruby-string">&#39;.&#39;</span>).<span class="ruby-identifier">length</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-cmd" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">cmd</span><span
      class="method-args">(lines, caption = nil)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <p><a

href=“Compiler.html#method-c-defsyntax”>ReVIEW::Compiler.defsyntax</a>(:cmd, :block, 0..1) {|args|</p>

<pre class=“ruby”><span class=“ruby-keyword”>if</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-keyword”>and</span> <span class=“ruby-keyword”>not</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-operator”>==</span> <span class=“ruby-string”>&#39;noescape&#39;</span>

<span class="ruby-identifier">raise</span> <span class="ruby-constant">SyntaxError</span>, <span class="ruby-node">&quot;unknown //cmd option: #{args[0]}&quot;</span>

<span class=“ruby-keyword”>end</span> </pre>

<p>}</p>

<div class="method-source-code" id="cmd-source">
  <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 57</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>cmd</span>(<span class=“ruby-identifier”>lines</span>, <span class=“ruby-identifier”>caption</span> = <span class=“ruby-keyword”>nil</span>)

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">caption</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//sc1{&#39;</span>
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">noescape</span>
    <span class="ruby-identifier">puts</span> <span class="ruby-identifier">detab</span>(<span class="ruby-identifier">line</span>)
  <span class="ruby-keyword">elsif</span> <span class="ruby-regexp">/\AC:.*?&gt;(.+)/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">line</span> <span class="ruby-comment"># DOS prompt hack</span>
    <span class="ruby-identifier">prompt</span>, <span class="ruby-identifier">cmd</span> = <span class="ruby-operator">*</span><span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;&gt;&#39;</span>, <span class="ruby-value">2</span>)
    <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{escape(prompt)}&gt;//command{#{escape(cmd)}}//}&quot;</span>
  <span class="ruby-keyword">else</span>
    <span class="ruby-identifier">puts</span> <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">detab</span>(<span class="ruby-identifier">line</span>))
  <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-emlist" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">emlist</span><span
      class="method-args">(lines, caption = nil)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <p><a

href=“Compiler.html#method-c-defsyntax”>ReVIEW::Compiler.defsyntax</a>(:emlist, :block, 0..1) {|args|</p>

<pre class=“ruby”><span class=“ruby-keyword”>if</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-keyword”>and</span> <span class=“ruby-keyword”>not</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-operator”>==</span> <span class=“ruby-string”>&#39;noescape&#39;</span>

<span class="ruby-identifier">raise</span> <span class="ruby-constant">SyntaxError</span>, <span class="ruby-node">&quot;unknown //emlist option: #{args[0]}&quot;</span>

<span class=“ruby-keyword”>end</span> </pre>

<p>}</p>

<div class="method-source-code" id="emlist-source">
  <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 35</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>emlist</span>(<span class=“ruby-identifier”>lines</span>, <span class=“ruby-identifier”>caption</span> = <span class=“ruby-keyword”>nil</span>)

<span class="ruby-comment"># firstline = f.lineno</span>
<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">caption</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//lst1&#39;</span>
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">noescape</span>
    <span class="ruby-identifier">puts</span> <span class="ruby-identifier">detab</span>(<span class="ruby-identifier">line</span>)
  <span class="ruby-keyword">else</span>
    <span class="ruby-identifier">puts</span> <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">detab</span>(<span class="ruby-identifier">line</span>))
  <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-escape" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">escape</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="escape-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 376</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>escape</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">%r{//}</span>, <span class="ruby-string">&#39;////&#39;</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-figure_filename" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">figure_filename</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="figure_filename-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 218</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>figure_filename</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-keyword">if</span> <span class="ruby-identifier">ext</span> = <span class="ruby-identifier">key</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-regexp">/\.\w+\z/</span>)
  <span class="ruby-identifier">base</span> = <span class="ruby-identifier">key</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">/\.\w+\z/</span>, <span class="ruby-string">&#39;&#39;</span>)
<span class="ruby-keyword">else</span>
  <span class="ruby-identifier">base</span> = <span class="ruby-identifier">key</span>
  <span class="ruby-identifier">ext</span> = <span class="ruby-string">&#39;.eps&#39;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">currname</span> = <span class="ruby-node">&quot;images/ch_#{chapter_id}_#{base}#{ext}&quot;</span>
<span class="ruby-identifier">destname</span> = <span class="ruby-node">&quot;images/fig#{figure_number(base)}#{ext}&quot;</span>
<span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span> <span class="ruby-identifier">currname</span>
  <span class="ruby-comment"># error &quot;image file not exist: #{currname}&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">destname</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-figure_number" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">figure_number</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="figure_number-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 359</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>figure_number</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-identifier">sprintf</span>(<span class="ruby-identifier">chapter_prefix</span> <span class="ruby-operator">+</span> <span class="ruby-string">&#39;%02d0&#39;</span>, <span class="ruby-ivar">@figure_table</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">key</span>))

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-footnote_number" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">footnote_number</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="footnote_number-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 363</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>footnote_number</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-identifier">sprintf</span>(<span class="ruby-string">&#39;%02d&#39;</span>, <span class="ruby-ivar">@footnote_index</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">key</span>) <span class="ruby-operator">*</span> <span class="ruby-value">5</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-generate_index" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">generate_index</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="generate_index-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 17</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>generate_index</span>

<span class="ruby-ivar">@index_buffer</span>.<span class="ruby-identifier">each_with_index</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">str</span>, <span class="ruby-identifier">n</span><span class="ruby-operator">|</span>
  <span class="ruby-identifier">printf</span> <span class="ruby-string">&quot;%d\t%s\n&quot;</span>, <span class="ruby-identifier">index_number</span>(<span class="ruby-identifier">n</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>), <span class="ruby-identifier">str</span>
<span class="ruby-keyword">end</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-headline" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">headline</span><span
      class="method-args">(level, caption)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="headline-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 23</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>headline</span>(<span class=“ruby-identifier”>level</span>, <span class=“ruby-identifier”>caption</span>)

<span class="ruby-identifier">puts</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">level</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;//#{&#39;i&#39; * level} #{caption}&quot;</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-image_dummy" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">image_dummy</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="image_dummy-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 100</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>image_dummy</span>

<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//lst1{&#39;</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;---- dummy figure ----&#39;</span>
<span class="ruby-identifier">print</span> <span class="ruby-identifier">dummy</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-image_header" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">image_header</span><span
      class="method-args">(file, caption)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="image_header-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 92</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>image_header</span>(<span class=“ruby-identifier”>file</span>, <span class=“ruby-identifier”>caption</span>)

<span class="ruby-keyword">if</span> <span class="ruby-regexp">/\.png\z/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">file</span> <span class="ruby-keyword">and</span> <span class="ruby-operator">!</span><span class="ruby-constant">FileTest</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-string">&#39;images/&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">file</span>)
  <span class="ruby-identifier">warn</span> <span class="ruby-node">&quot;image file not exist: #{file}&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">id</span> = <span class="ruby-identifier">file</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">/\.\w+\z/</span>, <span class="ruby-string">&#39;&#39;</span>)
<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;//f#{figure_number(id)} #{text(caption)} file=#{file}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">id</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-image_label" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">image_label</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="image_label-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 233</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>image_label</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-node">&quot;#{chapter_id}:#{str}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-index_number" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">index_number</span><span
      class="method-args">(n)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="index_number-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 372</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>index_number</span>(<span class=“ruby-identifier”>n</span>)

<span class="ruby-value">900_000</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@chapter_index</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">chapter_id</span>) <span class="ruby-operator">*</span> <span class="ruby-value">1000</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">n</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_bou" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_bou</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_bou-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 310</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_bou</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-node">&quot;//ruby{#{escape(str)},#{NAKAGURO * char_length(str)}//}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_chap" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_chap</span><span
      class="method-args">(id)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_chap-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 278</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_chap</span>(<span class=“ruby-identifier”>id</span>)

<span class="ruby-identifier">chapter_number</span>(<span class="ruby-identifier">arg</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_chapname" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_chapname</span><span
      class="method-args">(id)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_chapname-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 286</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_chapname</span>(<span class=“ruby-identifier”>id</span>)

<span class="ruby-identifier">chapter_name</span>(<span class="ruby-identifier">arg</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_chapref" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_chapref</span><span
      class="method-args">(id)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_chapref-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 282</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_chapref</span>(<span class=“ruby-identifier”>id</span>)

<span class="ruby-identifier">chapter_number</span>(<span class="ruby-identifier">arg</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">chapter_name</span>(<span class="ruby-identifier">arg</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_em" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_em</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_em-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 318</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_em</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-node">&quot;//g{#{arg}//}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_footnote" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_footnote</span><span
      class="method-args">(id)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_footnote-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 299</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_footnote</span>(<span class=“ruby-identifier”>id</span>)

<span class="ruby-string">&#39;//ky&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">footnote_number</span>(<span class="ruby-identifier">id</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_img" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_img</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_img-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 294</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_img</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-identifier">error</span> <span class="ruby-node">&quot;wrong image label: #{arg}&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-regexp">/[^a-zA-Z\d\-]/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span>
<span class="ruby-string">&#39;//f&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">figure_number</span>(<span class="ruby-identifier">arg</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_keytop" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_keytop</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_keytop-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 274</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_keytop</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-node">&quot;//keytop{#{arg}//}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_kw" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_kw</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_kw-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 260</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_kw</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-identifier">word</span>, <span class="ruby-identifier">eng</span>, <span class="ruby-identifier">abbr</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/,/</span>).<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">strip</span> }
<span class="ruby-keyword">if</span> <span class="ruby-identifier">abbr</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">word</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;//g{#{word}//}&quot;</span> <span class="ruby-operator">+</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">abbr</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;(#{abbr}, &quot;</span> <span class="ruby-operator">+</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">eng</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;#{eng})&quot;</span>
<span class="ruby-keyword">elsif</span> <span class="ruby-identifier">eng</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">word</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;//g{#{word}//}&quot;</span> <span class="ruby-operator">+</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">eng</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;(#{eng})&quot;</span>
<span class="ruby-keyword">else</span>
  <span class="ruby-identifier">add_index</span>(<span class="ruby-identifier">word</span>) <span class="ruby-operator">+</span> <span class="ruby-node">&quot;//g{#{word}//}&quot;</span>
<span class="ruby-keyword">end</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_list" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_list</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_list-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 290</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_list</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-string">&#39;//l&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">list_number</span>(<span class="ruby-identifier">arg</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_math" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_math</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_math-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 322</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_math</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-node">&quot;//LaTeX{ $#{arg}$ //}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-inline_ruby" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">inline_ruby</span><span
      class="method-args">(arg)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="inline_ruby-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 303</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>inline_ruby</span>(<span class=“ruby-identifier”>arg</span>)

<span class="ruby-identifier">error</span> <span class="ruby-string">&#39;wrong number of arg: @&lt;ruby&gt;&#39;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">count</span>(<span class="ruby-string">&#39;,&#39;</span>) <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
<span class="ruby-node">&quot;//ruby{#{arg}//}&quot;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-list" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">list</span><span
      class="method-args">(lines, id, caption)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <p><a

href=“Compiler.html#method-c-defsyntax”>ReVIEW::Compiler.defsyntax</a>(:list, :block, 0..1) {|args|</p>

<pre class=“ruby”><span class=“ruby-keyword”>if</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-keyword”>and</span> <span class=“ruby-keyword”>not</span> <span class=“ruby-identifier”>args</span>[<span class=“ruby-value”>0</span>] <span class=“ruby-operator”>==</span> <span class=“ruby-string”>&#39;noescape&#39;</span>

<span class="ruby-identifier">raise</span> <span class="ruby-constant">SyntaxError</span>, <span class="ruby-node">&quot;unknown //list option: #{args[0]}&quot;</span>

<span class=“ruby-keyword”>end</span> </pre>

<p>}</p>

<div class="method-source-code" id="list-source">
  <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 81</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>list</span>(<span class=“ruby-identifier”>lines</span>, <span class=“ruby-identifier”>id</span>, <span class=“ruby-identifier”>caption</span>)

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;//l#{list_number(id)} &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">caption</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//lst2{&#39;</span>
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
  <span class="ruby-identifier">puts</span> <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">detab</span>(<span class="ruby-identifier">line</span>))
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-list_number" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">list_number</span><span
      class="method-args">(key)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="list_number-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 355</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>list_number</span>(<span class=“ruby-identifier”>key</span>)

<span class="ruby-identifier">sprintf</span>(<span class="ruby-identifier">chapter_prefix</span> <span class="ruby-operator">+</span> <span class="ruby-string">&#39;%02d0&#39;</span>, <span class="ruby-ivar">@list_table</span>.<span class="ruby-identifier">number</span>(<span class="ruby-identifier">key</span>))

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-noindent" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">noindent</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="noindent-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 169</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>noindent</span>

<span class="ruby-ivar">@noindent</span> = <span class="ruby-keyword">true</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-note" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">note</span><span
      class="method-args">(f, caption)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="note-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 187</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>note</span>(<span class=“ruby-identifier”>f</span>, <span class=“ruby-identifier”>caption</span>)

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//note{&#39;</span>
<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;//cg{#{caption}//}&quot;</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//h&#39;</span>
<span class="ruby-identifier">cascade</span> <span class="ruby-identifier">f</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ol_begin" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ol_begin</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ol_begin-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 143</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ol_begin</span>

<span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//k2{&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ol_end" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ol_end</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ol_end-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 152</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ol_end</span>

<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ol_item" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ol_item</span><span
      class="method-args">(num, lines)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ol_item-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 148</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ol_item</span>(<span class=“ruby-identifier”>num</span>, <span class=“ruby-identifier”>lines</span>)

<span class="ruby-identifier">print</span> <span class="ruby-node">&quot;#{num}//|&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">lines</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;&#39;</span>)

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-paragraph" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">paragraph</span><span
      class="method-args">(lines)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="paragraph-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 202</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>paragraph</span>(<span class=“ruby-identifier”>lines</span>)

<span class="ruby-keyword">if</span> <span class="ruby-ivar">@noindent</span>
  <span class="ruby-ivar">@noindent</span> = <span class="ruby-keyword">false</span>
<span class="ruby-keyword">else</span>
  <span class="ruby-identifier">print</span> <span class="ruby-constant">Z_SPACE</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">prev</span> = <span class="ruby-string">&#39;&#39;</span>
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
  <span class="ruby-keyword">if</span> <span class="ruby-regexp">/[a-zA-Z0-9]\z/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">prev</span> <span class="ruby-keyword">and</span> <span class="ruby-regexp">/\A[a-zA-Z0-9]/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">line</span>
    <span class="ruby-identifier">print</span> <span class="ruby-string">&#39; &#39;</span>
  <span class="ruby-keyword">end</span>
  <span class="ruby-identifier">print</span> <span class="ruby-identifier">line</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">puts</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-point" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">point</span><span
      class="method-args">(f)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="point-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 180</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>point</span>(<span class=“ruby-identifier”>f</span>)

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//point{&#39;</span>
<span class="ruby-identifier">cascade</span> <span class="ruby-identifier">f</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-quote" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">quote</span><span
      class="method-args">(lines)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="quote-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 156</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>quote</span>(<span class=“ruby-identifier”>lines</span>)

<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//c1{&#39;</span>
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
  <span class="ruby-identifier">puts</span> <span class="ruby-identifier">text</span>(<span class="ruby-identifier">line</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-refer" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">refer</span><span
      class="method-args">(f)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="refer-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 173</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>refer</span>(<span class=“ruby-identifier”>f</span>)

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//refer{&#39;</span>
<span class="ruby-identifier">cascade</span> <span class="ruby-identifier">f</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-table" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">table</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="table-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 108</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>table</span>

<span class="ruby-comment"># %r&lt;\A//table\[(\w+)\]&gt;</span>
<span class="ruby-identifier">spec</span> = <span class="ruby-node">$1</span>
<span class="ruby-identifier">buf</span> = []
<span class="ruby-keyword">while</span> <span class="ruby-identifier">line</span> = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">gets</span>
  <span class="ruby-keyword">break</span> <span class="ruby-keyword">if</span> <span class="ruby-regexp">%r[\A//\}]</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">line</span>
  <span class="ruby-identifier">buf</span>.<span class="ruby-identifier">push</span> <span class="ruby-identifier">line</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\t+/</span>).<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;.&#39;</span> <span class="ruby-operator">?</span> <span class="ruby-string">&#39;&#39;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">s</span> }
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">table_type</span> = <span class="ruby-string">&#39;tabm&#39;</span>
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;//#{table_type}[&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">spec</span> <span class="ruby-operator">+</span> <span class="ruby-string">&#39;]{&#39;</span>
<span class="ruby-identifier">buf</span>.<span class="ruby-identifier">each_with_index</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">col</span>, <span class="ruby-identifier">idx</span><span class="ruby-operator">|</span>
  <span class="ruby-keyword">if</span> <span class="ruby-regexp">/----/</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">col</span>[<span class="ruby-value">0</span>]
    <span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//kb&#39;</span>
  <span class="ruby-keyword">else</span>
    <span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">col</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">text</span>(<span class="ruby-identifier">s</span>) }.<span class="ruby-identifier">join</span>(<span class="ruby-string">&quot;\t&quot;</span>)
  <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-text" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">text</span><span
      class="method-args">(str)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="text-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 237</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>text</span>(<span class=“ruby-identifier”>str</span>)

<span class="ruby-identifier">str</span> = <span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\t/</span>, <span class="ruby-string">&#39; &#39;</span>)
<span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/([^@^]+)|\^(.*?)\^|@&lt;(\w+)&gt;\{(.*?)\}|@\{(.*?)\}|([@^])/</span>) <span class="ruby-keyword">do</span>
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">normal</span> = <span class="ruby-node">$1</span>
    <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">normal</span>)
  <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">tt</span> = <span class="ruby-node">$2</span>
    <span class="ruby-string">&#39;//tt{&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">tt</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&#39;//}&#39;</span>
  <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">inline</span> = <span class="ruby-node">$3</span>
    <span class="ruby-identifier">compile_inline</span>(<span class="ruby-identifier">inline</span>, <span class="ruby-node">$4</span>)
  <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">index</span> = <span class="ruby-node">$5</span>
    <span class="ruby-identifier">error</span> <span class="ruby-string">&#39;index not implemented&#39;</span>
    <span class="ruby-identifier">text</span>(<span class="ruby-identifier">index</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">index_command</span>(<span class="ruby-identifier">index</span>)
  <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">char</span> = <span class="ruby-node">$6</span>
    <span class="ruby-identifier">escape</span>(<span class="ruby-identifier">char</span>)
  <span class="ruby-keyword">else</span>
    <span class="ruby-identifier">error</span> <span class="ruby-node">&quot;unknown inline: #{str.inspect}&quot;</span>
  <span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>

<span class=“ruby-keyword”>rescue</span> <span class=“ruby-constant”>DocumentError</span> =<span class=“ruby-operator”>&gt;</span> <span class=“ruby-identifier”>e</span>

<span class="ruby-identifier">error</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>
<span class="ruby-keyword">return</span> <span class="ruby-string">&#39;ERROR&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ul_begin" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ul_begin</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ul_begin-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 130</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ul_begin</span>

<span class="ruby-identifier">puts</span>
<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//k1{&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ul_end" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ul_end</span><span
      class="method-args">()</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ul_end-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 139</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ul_end</span>

<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;//}&#39;</span>

<span class=“ruby-keyword”>end</span></pre>

    </div>

  </div>

</div>

<div id="method-i-ul_item" class="method-detail ">

  <div class="method-heading">
    <span class="method-name">ul_item</span><span
      class="method-args">(lines)</span>

    <span class="method-click-advice">click to toggle source</span>

  </div>

  <div class="method-description">

    <div class="method-source-code" id="ul_item-source">
      <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 135</span>

<span class=“ruby-keyword”>def</span> <span class=“ruby-identifier”>ul_item</span>(<span class=“ruby-identifier”>lines</span>)

<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{LI}//|&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">lines</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;&#39;</span>)

<span class=“ruby-keyword”>end</span></pre>

      </div>

    </div>

  </div>

  <div id="method-i-vspace" class="method-detail ">

    <div class="method-heading">
      <span class="method-name">vspace</span><span
        class="method-args">()</span>

      <span class="method-click-advice">click to toggle source</span>

    </div>

    <div class="method-description">

      <div class="method-source-code" id="vspace-source">
        <pre><span class="ruby-comment"># File lib/review/ewbbuilder.rb, line 164</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">vspace</span>
  <span class="ruby-identifier">print</span> <span class="ruby-string">%Q(

//h)</span>

  <span class="ruby-keyword">end</span></pre>
        </div>

      </div>

    </div>

  </section>

</section>

</main>

<footer id=“validator-badges” role=“contentinfo”>

<p><a href="http://validator.w3.org/check/referer">Validate</a>
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.2.
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.

</footer>