class ReVIEW::TOPBuilder

Public Instance Methods

base_block(type, lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 205
def base_block(type, lines, caption = nil)
  blank
  puts "◆→開始:#{@titles[type]}←◆"
  puts "■#{compile_inline(caption)}" if caption.present?
  puts lines.join("\n")
  puts "◆→終了:#{@titles[type]}←◆"
  blank
end
base_parablock(type, lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 214
def base_parablock(type, lines, caption = nil)
  blank
  puts "◆→開始:#{@titles[type]}←◆"
  puts "■#{compile_inline(caption)}" if caption.present?
  puts split_paragraph(lines).join("\n")
  puts "◆→終了:#{@titles[type]}←◆"
  blank
end
best(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 657
def best(lines, caption = nil)
  base_parablock 'best', lines, caption
end
bibpaper(lines, id, caption) click to toggle source
# File lib/review/topbuilder.rb, line 503
def bibpaper(lines, id, caption)
  bibpaper_header id, caption
  bibpaper_bibpaper id, caption, lines unless lines.empty?
end
bibpaper_bibpaper(_id, _caption, lines) click to toggle source
# File lib/review/topbuilder.rb, line 513
def bibpaper_bibpaper(_id, _caption, lines)
  print split_paragraph(lines).join
end
bibpaper_header(id, caption) click to toggle source
# File lib/review/topbuilder.rb, line 508
def bibpaper_header(id, caption)
  print "[#{@chapter.bibpaper(id).number}]"
  puts " #{compile_inline(caption)}"
end
box(lines, caption = nil)
Alias for: insn
bpo(lines) click to toggle source
# File lib/review/topbuilder.rb, line 740
def bpo(lines)
  base_block 'bpo', lines, nil
end
caution(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 669
def caution(lines, caption = nil)
  base_parablock 'caution', lines, caption
end
centering(lines) click to toggle source
# File lib/review/topbuilder.rb, line 633
def centering(lines)
  base_parablock 'centering', lines, nil
end
circle_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 803
def circle_begin(_level, _label, caption)
  puts "・\t#{caption}"
end
circle_end(level) click to toggle source
# File lib/review/topbuilder.rb, line 807
def circle_end(level)
end
cmd(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 242
def cmd(lines, caption = nil)
  base_block 'cmd', lines, caption
end
column_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 565
def column_begin(_level, _label, caption)
  common_column_begin('column', caption)
end
column_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 569
def column_end(_level)
  common_column_end('column')
end
comment(lines, comment = nil) click to toggle source
# File lib/review/topbuilder.rb, line 371
def comment(lines, comment = nil)
  return unless @book.config['draft']
  lines ||= []
  lines.unshift comment unless comment.blank?
  str = lines.join
  puts "◆→#{str}←◆"
end
common_column_begin(type, caption) click to toggle source
# File lib/review/topbuilder.rb, line 554
def common_column_begin(type, caption)
  blank
  puts "◆→開始:#{@titles[type]}←◆"
  puts "■#{compile_inline(caption)}"
end
common_column_end(type) click to toggle source
# File lib/review/topbuilder.rb, line 560
def common_column_end(type)
  puts "◆→終了:#{@titles[type]}←◆"
  blank
end
compile_href(url, label) click to toggle source
# File lib/review/topbuilder.rb, line 398
def compile_href(url, label)
  if label
    "#{label}(△#{url}☆)"
  else
    "△#{url}☆"
  end
end
compile_kw(word, alt) click to toggle source
# File lib/review/topbuilder.rb, line 391
def compile_kw(word, alt)
  if alt
  then "★#{word}☆(#{alt.strip})"
  else "★#{word}☆"
  end
end
compile_ruby(base, ruby) click to toggle source
# File lib/review/topbuilder.rb, line 387
def compile_ruby(base, ruby)
  "#{base}◆→DTP連絡:「#{base}」に「#{ruby}」とルビ←◆"
end
dd(lines) click to toggle source
# File lib/review/topbuilder.rb, line 158
def dd(lines)
  split_paragraph(lines).each { |paragraph| puts "\t#{paragraph.gsub(/\n/, '')}" }
end
dl_begin() click to toggle source
# File lib/review/topbuilder.rb, line 150
def dl_begin
  blank
end
dl_end() click to toggle source
# File lib/review/topbuilder.rb, line 162
def dl_end
  blank
end
dt(line) click to toggle source
# File lib/review/topbuilder.rb, line 154
def dt(line)
  puts "★#{line}☆"
end
dtp(str) click to toggle source
# File lib/review/topbuilder.rb, line 736
def dtp(str)
  # FIXME
end
edition_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 597
def edition_begin(_level, _label, caption)
  common_column_begin('edition', caption)
end
edition_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 601
def edition_end(_level)
  common_column_end('edition')
end
emlist(lines, caption = nil, _lang = nil) click to toggle source
# File lib/review/topbuilder.rb, line 223
def emlist(lines, caption = nil, _lang = nil)
  base_block 'emlist', lines, caption
end
emlistnum(lines, caption = nil, _lang = nil) click to toggle source
# File lib/review/topbuilder.rb, line 227
def emlistnum(lines, caption = nil, _lang = nil)
  blank
  puts "◆→開始:#{@titles['emlist']}←◆"
  puts "■#{compile_inline(caption)}" if caption.present?
  lines.each_with_index { |line, i| puts((i + 1).to_s.rjust(2) + ": #{line}") }
  puts "◆→終了:#{@titles['emlist']}←◆"
  blank
end
expert(lines) click to toggle source
# File lib/review/topbuilder.rb, line 701
def expert(lines)
  base_parablock 'expert', lines, nil
end
extname() click to toggle source
# File lib/review/topbuilder.rb, line 39
def extname
  '.txt'
end
flushright(lines) click to toggle source
# File lib/review/topbuilder.rb, line 629
def flushright(lines)
  base_parablock 'flushright', lines, nil
end
footnote(id, str) click to toggle source
# File lib/review/topbuilder.rb, line 379
def footnote(id, str)
  puts "【注#{@chapter.footnote(id).number}】#{compile_inline(str)}"
end
handle_metric(str) click to toggle source
# File lib/review/topbuilder.rb, line 268
def handle_metric(str)
  str
end
headline(level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 119
def headline(level, _label, caption)
  prefix, _anchor = headline_prefix(level)
  puts %Q(■H#{level}■#{prefix}#{compile_inline(caption)})
end
hood_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 589
def hood_begin(_level, _label, caption)
  common_column_begin('hood', caption)
end
hood_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 593
def hood_end(_level)
  common_column_end('hood')
end
image(lines, id, caption, metric = nil) click to toggle source
# File lib/review/topbuilder.rb, line 276
def image(lines, id, caption, metric = nil)
  metrics = parse_metric('top', metric)
  metrics = " #{metrics}" if metrics.present?
  blank
  puts "◆→開始:#{@titles['image']}←◆"
  if get_chap
    puts "#{I18n.t('image')}#{I18n.t('format_number', [get_chap, @chapter.image(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)}"
  else
    puts "#{I18n.t('image')}#{I18n.t('format_number_without_chapter', [@chapter.image(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)}"
  end
  blank
  if @chapter.image(id).bound?
    puts "◆→#{@chapter.image(id).path}#{metrics}←◆"
  else
    warn "image not bound: #{id}"
    lines.each { |line| puts line }
  end
  puts "◆→終了:#{@titles['image']}←◆"
  blank
end
important(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 661
def important(lines, caption = nil)
  base_parablock 'important', lines, caption
end
indepimage(_lines, id, caption = nil, metric = nil) click to toggle source
# File lib/review/topbuilder.rb, line 715
def indepimage(_lines, id, caption = nil, metric = nil)
  metrics = parse_metric('top', metric)
  metrics = " #{metrics}" if metrics.present?
  blank
  begin
    puts "◆→画像 #{@chapter.image(id).path.sub(%r{\A\./}, '')}#{metrics}←◆"
  rescue
    warn "image not bound: #{id}"
    puts "◆→画像 #{id}←◆"
  end
  puts "図 #{compile_inline(caption)}" if caption.present?
  blank
end
Also aliased as: numberlessimage
info(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 649
def info(lines, caption = nil)
  base_parablock 'info', lines, caption
end
inline_ami(str) click to toggle source
# File lib/review/topbuilder.rb, line 434
def inline_ami(str)
  "#{str}◆→DTP連絡:「#{str}」に網カケ←◆"
end
inline_b(str) click to toggle source
# File lib/review/topbuilder.rb, line 442
def inline_b(str)
  "★#{str}☆"
end
Also aliased as: inline_strong
inline_balloon(str) click to toggle source
# File lib/review/topbuilder.rb, line 483
def inline_balloon(str)
  %Q(\t←#{str.gsub(/@maru\[(\d+)\]/, inline_maru('\1'))})
end
inline_bib(id) click to toggle source
# File lib/review/topbuilder.rb, line 517
def inline_bib(id)
  %Q([#{@chapter.bibpaper(id).number}])
end
inline_bou(str) click to toggle source
# File lib/review/topbuilder.rb, line 475
def inline_bou(str)
  "#{str}◆→DTP連絡:「#{str}」に傍点←◆"
end
inline_br(_str) click to toggle source
# File lib/review/topbuilder.rb, line 758
def inline_br(_str)
  "\n"
end
inline_chap(id) click to toggle source
Calls superclass method ReVIEW::Builder#inline_chap
# File lib/review/topbuilder.rb, line 766
def inline_chap(id)
  # "「第#{super}章 #{inline_title(id)}」"
  # "第#{super}章"
  super
end
inline_chapref(id) click to toggle source
# File lib/review/topbuilder.rb, line 772
def inline_chapref(id)
  chs = ['', '「', '」']
  if @book.config['chapref']
    chs2 = @book.config['chapref'].split(',')
    error '--chapsplitter must have exactly 3 parameters with comma.' if chs2.size != 3
    chs = chs2
  end
  "#{chs[0]}#{@book.chapter_index.number(id)}#{chs[1]}#{@book.chapter_index.title(id)}#{chs[2]}"
rescue KeyError
  error "unknown chapter: #{id}"
  nofunc_text("[UnknownChapter:#{id}]")
end
inline_code(str) click to toggle source
# File lib/review/topbuilder.rb, line 754
def inline_code(str)
  "△#{str}☆"
end
inline_comment(str) click to toggle source
# File lib/review/topbuilder.rb, line 491
def inline_comment(str)
  if @book.config['draft']
    "◆→#{str}←◆"
  else
    ''
  end
end
inline_del(_str) click to toggle source
# File lib/review/topbuilder.rb, line 749
def inline_del(_str)
  # FIXME
  ''
end
inline_dtp(_str) click to toggle source
# File lib/review/topbuilder.rb, line 744
def inline_dtp(_str)
  # FIXME
  ''
end
inline_fn(id) click to toggle source
# File lib/review/topbuilder.rb, line 383
def inline_fn(id)
  "【注#{@chapter.footnote(id).number}】"
end
inline_hd_chap(chap, id) click to toggle source
# File lib/review/topbuilder.rb, line 521
def inline_hd_chap(chap, id)
  if chap.number
    n = chap.headline_index.number(id)
    return I18n.t('chapter_quote', "#{n} #{compile_inline(chap.headline(id).caption)}") if @book.config['secnolevel'] >= n.split('.').size
  end
  I18n.t('chapter_quote', compile_inline(chap.headline(id).caption))
end
inline_hidx(str) click to toggle source
# File lib/review/topbuilder.rb, line 430
def inline_hidx(str)
  "◆→索引項目:#{str}←◆"
end
inline_hint(str) click to toggle source
# File lib/review/topbuilder.rb, line 418
def inline_hint(str)
  "◆→ヒントスタイルここから←◆#{str}◆→ヒントスタイルここまで←◆"
end
inline_i(str) click to toggle source
# File lib/review/topbuilder.rb, line 438
def inline_i(str)
  "▲#{str}☆"
end
inline_icon(id) click to toggle source
# File lib/review/topbuilder.rb, line 466
def inline_icon(id)
  begin
    "◆→画像 #{@chapter.image(id).path.sub(%r{\A\./}, '')}←◆"
  rescue
    warn "image not bound: #{id}"
    "◆→画像 #{id}←◆"
  end
end
inline_idx(str) click to toggle source
# File lib/review/topbuilder.rb, line 426
def inline_idx(str)
  "#{str}◆→索引項目:#{str}←◆"
end
inline_img(id) click to toggle source
# File lib/review/topbuilder.rb, line 259
def inline_img(id)
  chapter, id = extract_chapter_id(id)
  if get_chap(chapter)
    "#{I18n.t('image')}#{I18n.t('format_number', [get_chap(chapter), chapter.image(id).number])}"
  else
    "#{I18n.t('image')}#{I18n.t('format_number_without_chapter', [chapter.image(id).number])}"
  end
end
inline_keytop(str) click to toggle source
# File lib/review/topbuilder.rb, line 479
def inline_keytop(str)
  "#{str}◆→キートップ#{str}←◆"
end
inline_labelref(idref) click to toggle source
# File lib/review/topbuilder.rb, line 793
def inline_labelref(idref)
  "「◆→#{idref}←◆」" # 節、項を参照
end
Also aliased as: inline_ref
inline_list(id) click to toggle source
# File lib/review/topbuilder.rb, line 179
def inline_list(id)
  chapter, id = extract_chapter_id(id)
  if get_chap(chapter)
    %Q(#{I18n.t('list')}#{I18n.t('format_number', [get_chap(chapter), chapter.list(id).number])})
  else
    %Q(#{I18n.t('list')}#{I18n.t('format_number_without_chapter', [chapter.list(id).number])})
  end
end
inline_m(str) click to toggle source
# File lib/review/topbuilder.rb, line 499
def inline_m(str)
  %Q(◆→TeX式ここから←◆#{str}◆→TeX式ここまで←◆)
end
inline_maru(str) click to toggle source
# File lib/review/topbuilder.rb, line 422
def inline_maru(str)
  "#{str}◆→丸数字#{str}←◆"
end
inline_pageref(idref) click to toggle source
# File lib/review/topbuilder.rb, line 799
def inline_pageref(idref)
  "●ページ◆→#{idref}←◆" # ページ番号を参照
end
inline_raw(str) click to toggle source
Calls superclass method ReVIEW::Builder#inline_raw
# File lib/review/topbuilder.rb, line 414
def inline_raw(str)
  super(str).gsub('\\n', "\n")
end
inline_ref(idref)
Alias for: inline_labelref
inline_strong(str)
Alias for: inline_b
inline_sub(str) click to toggle source
# File lib/review/topbuilder.rb, line 410
def inline_sub(str)
  "#{str}◆→DTP連絡:「#{str}」は下付き←◆"
end
inline_sup(str) click to toggle source
# File lib/review/topbuilder.rb, line 406
def inline_sup(str)
  "#{str}◆→DTP連絡:「#{str}」は上付き←◆"
end
inline_table(id) click to toggle source
# File lib/review/topbuilder.rb, line 250
def inline_table(id)
  chapter, id = extract_chapter_id(id)
  if get_chap(chapter)
    "#{I18n.t('table')}#{I18n.t('format_number', [get_chap(chapter), chapter.table(id).number])}"
  else
    "#{I18n.t('table')}#{I18n.t('format_number_without_chapter', [chapter.table(id).number])}"
  end
end
inline_tt(str) click to toggle source
# File lib/review/topbuilder.rb, line 448
def inline_tt(str)
  "△#{str}☆"
end
inline_ttb(str) click to toggle source
# File lib/review/topbuilder.rb, line 452
def inline_ttb(str)
  "★#{str}☆◆→等幅フォント太字←◆"
end
Also aliased as: inline_ttbold
inline_ttbold(str)
Alias for: inline_ttb
inline_tti(str) click to toggle source
# File lib/review/topbuilder.rb, line 458
def inline_tti(str)
  "▲#{str}☆◆→等幅フォントイタ←◆"
end
inline_ttibold(str) click to toggle source
# File lib/review/topbuilder.rb, line 789
def inline_ttibold(str)
  "▲#{str}☆◆→等幅フォント太字イタ←◆"
end
inline_u(str) click to toggle source
# File lib/review/topbuilder.rb, line 462
def inline_u(str)
  "@#{str}@◆→@〜@部分に下線←◆"
end
inline_uchar(str) click to toggle source
# File lib/review/topbuilder.rb, line 487
def inline_uchar(str)
  [str.to_i(16)].pack('U')
end
insideout_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 605
def insideout_begin(_level, _label, caption)
  common_column_begin('insideout', caption)
end
insideout_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 609
def insideout_end(_level)
  common_column_end('insideout')
end
insn(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 705
def insn(lines, caption = nil)
  base_block 'insn', lines, caption
end
Also aliased as: box
label(_id) click to toggle source
# File lib/review/topbuilder.rb, line 731
def label(_id)
  # FIXME
  ''
end
lead(lines)
Alias for: read
list_body(_id, lines, _lang) click to toggle source
# File lib/review/topbuilder.rb, line 199
def list_body(_id, lines, _lang)
  lines.each { |line| puts detab(line) }
  puts "◆→終了:#{@titles['list']}←◆"
  blank
end
list_header(id, caption, _lang) click to toggle source
# File lib/review/topbuilder.rb, line 188
def list_header(id, caption, _lang)
  blank
  puts "◆→開始:#{@titles['list']}←◆"
  if get_chap
    puts %Q(#{I18n.t('list')}#{I18n.t('format_number', [get_chap, @chapter.list(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)})
  else
    puts %Q(#{I18n.t('list')}#{I18n.t('format_number_without_chapter', [@chapter.list(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)})
  end
  blank
end
listnum_body(lines, _lang) click to toggle source
# File lib/review/topbuilder.rb, line 236
def listnum_body(lines, _lang)
  lines.each_with_index { |line, i| puts((i + 1).to_s.rjust(2) + ": #{line}") }
  puts "◆→終了:#{@titles['list']}←◆"
  blank
end
memo(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 641
def memo(lines, caption = nil)
  base_parablock 'memo', lines, caption
end
nodisp_begin(level, label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 547
def nodisp_begin(level, label, caption)
  # return empty
end
nodisp_end(level) click to toggle source
# File lib/review/topbuilder.rb, line 551
def nodisp_end(level)
end
nofunc_text(str) click to toggle source
# File lib/review/topbuilder.rb, line 810
def nofunc_text(str)
  str
end
noindent() click to toggle source
# File lib/review/topbuilder.rb, line 529
def noindent
  puts '◆→DTP連絡:次の1行インデントなし←◆'
end
nonum_begin(level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 533
def nonum_begin(level, _label, caption)
  puts "■H#{level}■#{compile_inline(caption)}"
end
nonum_end(level) click to toggle source
# File lib/review/topbuilder.rb, line 537
def nonum_end(level)
end
note(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 637
def note(lines, caption = nil)
  base_parablock 'note', lines, caption
end
notice(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 681
def notice(lines, caption = nil)
  base_parablock 'notice', lines, caption
end
notoc_begin(level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 540
def notoc_begin(level, _label, caption)
  puts "■H#{level}■#{compile_inline(caption)}◆→DTP連絡:目次に掲載しない←◆"
end
notoc_end(level) click to toggle source
# File lib/review/topbuilder.rb, line 544
def notoc_end(level)
end
numberlessimage(_lines, id, caption = nil, metric = nil)
Alias for: indepimage
ol_begin() click to toggle source
# File lib/review/topbuilder.rb, line 136
def ol_begin
  blank
  @olitem = 0
end
ol_end() click to toggle source
# File lib/review/topbuilder.rb, line 145
def ol_end
  blank
  @olitem = nil
end
ol_item(lines, num) click to toggle source
# File lib/review/topbuilder.rb, line 141
def ol_item(lines, num)
  puts "#{num}\t#{lines.join}"
end
paragraph(lines) click to toggle source
# File lib/review/topbuilder.rb, line 166
def paragraph(lines)
  puts lines.join
end
planning(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 653
def planning(lines, caption = nil)
  base_parablock 'planning', lines, caption
end
point(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 685
def point(lines, caption = nil)
  base_parablock 'point', lines, caption
end
post_paragraph() click to toggle source
# File lib/review/topbuilder.rb, line 35
def post_paragraph
  ''
end
practice(lines) click to toggle source
# File lib/review/topbuilder.rb, line 697
def practice(lines)
  base_parablock 'practice', lines, nil
end
pre_paragraph() click to toggle source
# File lib/review/topbuilder.rb, line 31
def pre_paragraph
  ''
end
quote(lines) click to toggle source
# File lib/review/topbuilder.rb, line 246
def quote(lines)
  base_parablock 'quote', lines, nil
end
read(lines) click to toggle source
# File lib/review/topbuilder.rb, line 170
def read(lines)
  puts "◆→開始:#{@titles['lead']}←◆"
  puts split_paragraph(lines).join("\n")
  puts "◆→終了:#{@titles['lead']}←◆"
  blank
end
Also aliased as: lead
ref_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 613
def ref_begin(_level, _label, caption)
  common_column_begin('ref', caption)
end
ref_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 617
def ref_end(_level)
  common_column_end('ref')
end
reference(lines) click to toggle source
# File lib/review/topbuilder.rb, line 693
def reference(lines)
  base_parablock 'reference', lines, nil
end
result() click to toggle source
# File lib/review/topbuilder.rb, line 115
def result
  @output.string
end
result_metric(array) click to toggle source
# File lib/review/topbuilder.rb, line 272
def result_metric(array)
  array.join(',')
end
security(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 665
def security(lines, caption = nil)
  base_parablock 'security', lines, caption
end
shoot(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 689
def shoot(lines, caption = nil)
  base_parablock 'shoot', lines, caption
end
source(lines, caption = nil, _lang = nil) click to toggle source
# File lib/review/topbuilder.rb, line 785
def source(lines, caption = nil, _lang = nil)
  base_block 'source', lines, caption
end
sup_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 621
def sup_begin(_level, _label, caption)
  common_column_begin('sup', caption)
end
sup_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 625
def sup_end(_level)
  common_column_end('sup')
end
table(lines, id = nil, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 304
def table(lines, id = nil, caption = nil)
  blank
  puts "◆→開始:#{@titles['table']}←◆"

  rows = []
  sepidx = nil
  lines.each_with_index do |line, idx|
    if /\A[\=\-]{12}/ =~ line
      # just ignore
      # error "too many table separator" if sepidx
      sepidx ||= idx
      next
    end
    rows.push(line.strip.split(/\t+/).map { |s| s.sub(/\A\./, '') })
  end
  rows = adjust_n_cols(rows)

  begin
    table_header id, caption if caption.present?
  rescue KeyError
    error "no such table: #{id}"
  end
  return if rows.empty?
  table_begin rows.first.size
  if sepidx
    sepidx.times { tr(rows.shift.map { |s| th(s) }) }
    rows.each { |cols| tr(cols.map { |s| td(s) }) }
  else
    rows.each do |cols|
      h, *cs = *cols
      tr([th(h)] + cs.map { |s| td(s) })
    end
  end
  table_end
end
table_begin(ncols) click to toggle source
# File lib/review/topbuilder.rb, line 351
def table_begin(ncols)
end
table_end() click to toggle source
# File lib/review/topbuilder.rb, line 366
def table_end
  puts "◆→終了:#{@titles['table']}←◆"
  blank
end
table_header(id, caption) click to toggle source
# File lib/review/topbuilder.rb, line 340
def table_header(id, caption)
  if id.nil?
    puts compile_inline(caption)
  elsif get_chap
    puts "#{I18n.t('table')}#{I18n.t('format_number', [get_chap, @chapter.table(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)}"
  else
    puts "#{I18n.t('table')}#{I18n.t('format_number_without_chapter', [@chapter.table(id).number])}#{I18n.t('caption_prefix_idgxml')}#{compile_inline(caption)}"
  end
  blank
end
td(str) click to toggle source
# File lib/review/topbuilder.rb, line 362
def td(str)
  str
end
term(lines) click to toggle source
# File lib/review/topbuilder.rb, line 673
def term(lines)
  base_parablock 'term', lines, nil
end
texequation(lines) click to toggle source
# File lib/review/topbuilder.rb, line 297
def texequation(lines)
  puts "◆→開始:#{@titles['texequation']}←◆"
  puts lines.join("\n")
  puts "◆→終了:#{@titles['texequation']}←◆"
  blank
end
text(str) click to toggle source
# File lib/review/topbuilder.rb, line 762
def text(str)
  str
end
th(str) click to toggle source
# File lib/review/topbuilder.rb, line 358
def th(str)
  "★#{str}☆"
end
tip(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 645
def tip(lines, caption = nil)
  base_parablock 'tip', lines, caption
end
tr(rows) click to toggle source
# File lib/review/topbuilder.rb, line 354
def tr(rows)
  puts rows.join("\t")
end
ul_begin() click to toggle source
# File lib/review/topbuilder.rb, line 124
def ul_begin
  blank
end
ul_end() click to toggle source
# File lib/review/topbuilder.rb, line 132
def ul_end
  blank
end
ul_item(lines) click to toggle source
# File lib/review/topbuilder.rb, line 128
def ul_item(lines)
  puts "●\t#{lines.join}"
end
warning(lines, caption = nil) click to toggle source
# File lib/review/topbuilder.rb, line 709
def warning(lines, caption = nil)
  base_parablock 'warning', lines, caption
end
world_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 581
def world_begin(_level, _label, caption)
  common_column_begin('world', caption)
end
world_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 585
def world_end(_level)
  common_column_end('world')
end
xcolumn_begin(_level, _label, caption) click to toggle source
# File lib/review/topbuilder.rb, line 573
def xcolumn_begin(_level, _label, caption)
  common_column_begin('xcolumn', caption)
end
xcolumn_end(_level) click to toggle source
# File lib/review/topbuilder.rb, line 577
def xcolumn_end(_level)
  common_column_end('xcolumn')
end

Private Instance Methods

blank() click to toggle source
# File lib/review/topbuilder.rb, line 109
def blank
  @output.puts unless @blank_seen
  @blank_seen = true
end
builder_init_file() click to toggle source
# File lib/review/topbuilder.rb, line 43
def builder_init_file
  @section = 0
  @subsection = 0
  @subsubsection = 0
  @subsubsubsection = 0
  @blank_seen = true
  @sec_counter = SecCounter.new(5, @chapter)

  @titles = {
    'emlist' => 'インラインリスト',
    'cmd' => 'コマンド',
    'quote' => '引用',
    'centering' => '中央揃え',
    'flushright' => '右寄せ',
    'note' => 'ノート',
    'memo' => 'メモ',
    'important' => '重要',
    'info' => '情報',
    'planning' => 'プランニング',
    'shoot' => 'トラブルシュート',
    'term' => '用語解説',
    'notice' => '注意',
    'caution' => '警告',
    'warning' => '危険',
    'point' => 'ここがポイント',
    'reference' => '参考',
    'link' => 'リンク',
    'best' => 'ベストプラクティス',
    'practice' => '練習問題',
    'security' => 'セキュリティ',
    'expert' => 'エキスパートに訊け',
    'tip' => 'TIP',
    'box' => '書式',
    'insn' => '書式',
    'column' => 'コラム',
    'xcolumn' => 'コラムパターン2',
    'world' => 'Worldコラム',
    'hood' => 'Under The Hoodコラム',
    'edition' => 'Editionコラム',
    'insideout' => 'InSideOutコラム',
    'ref' => '参照',
    'sup' => '補足',
    'read' => 'リード',
    'lead' => 'リード',
    'list' => 'リスト',
    'image' => '図',
    'texequation' => 'TeX式',
    'table' => '表',
    'bpo' => 'bpo',
    'source' => 'ソースコードリスト'
  }
end
print(s) click to toggle source
Calls superclass method ReVIEW::Builder#print
puts(s) click to toggle source
Calls superclass method ReVIEW::Builder#puts
# File lib/review/topbuilder.rb, line 103
def puts(s)
  @blank_seen = false
  super
end