class ReVIEW::PLAINTEXTBuilder
Public Instance Methods
base_block(_type, lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 168 def base_block(_type, lines, caption = nil) blank puts compile_inline(caption) if caption.present? puts lines.join("\n") blank end
base_parablock(_type, lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 175 def base_parablock(_type, lines, caption = nil) blank puts compile_inline(caption) if caption.present? puts split_paragraph(lines).join("\n") blank end
best(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 524 def best(lines, caption = nil) base_parablock 'best', lines, caption end
bibpaper(lines, id, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 370 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/plaintextbuilder.rb, line 380 def bibpaper_bibpaper(_id, _caption, lines) print split_paragraph(lines).join end
bibpaper_header(id, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 375 def bibpaper_header(id, caption) print @chapter.bibpaper(id).number puts " #{compile_inline(caption)}" end
bpo(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 597 def bpo(lines) base_block 'bpo', lines, nil end
caution(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 536 def caution(lines, caption = nil) base_parablock 'caution', lines, caption end
centering(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 500 def centering(lines) base_parablock 'centering', lines, nil end
circle_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 649 def circle_begin(_level, _label, caption) puts "・#{caption}" end
circle_end(level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 653 def circle_end(level) end
cmd(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 202 def cmd(lines, caption = nil) base_block 'cmd', lines, caption end
column_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 432 def column_begin(_level, _label, caption) common_column_begin('column', caption) end
column_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 436 def column_end(_level) common_column_end('column') end
comment(lines, comment = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 313 def comment(lines, comment = nil) end
common_column_begin(_type, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 423 def common_column_begin(_type, caption) blank puts compile_inline(caption) end
common_column_end(_type)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 428 def common_column_end(_type) blank end
compile_href(url, label)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 338 def compile_href(url, label) if label "#{label}(#{url})" else url end end
compile_kw(word, alt)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 330 def compile_kw(word, alt) if alt "#{word}(#{alt.strip})" else word end end
compile_ruby(base, _ruby)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 326 def compile_ruby(base, _ruby) base end
dd(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 119 def dd(lines) split_paragraph(lines).each do |paragraph| puts paragraph.gsub(/\n/, '') end end
dl_begin()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 111 def dl_begin blank end
dl_end()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 125 def dl_end blank end
dt(line)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 115 def dt(line) puts line end
dtp(str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 594 def dtp(str) end
edition_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 464 def edition_begin(_level, _label, caption) common_column_begin('edition', caption) end
edition_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 468 def edition_end(_level) common_column_end('edition') end
emlist(lines, caption = nil, _lang = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 182 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/plaintextbuilder.rb, line 186 def emlistnum(lines, caption = nil, _lang = nil) blank puts compile_inline(caption) if caption.present? lines.each_with_index do |line, i| puts((i + 1).to_s.rjust(2) + ": #{line}") end blank end
expert(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 568 def expert(lines) base_parablock 'expert', lines, nil end
extname()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 40 def extname '.txt' end
flushright(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 496 def flushright(lines) base_parablock 'flushright', lines, nil end
footnote(id, str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 316 def footnote(id, str) puts "注#{@chapter.footnote(id).number} #{compile_inline(str)}" end
headline(level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 80 def headline(level, _label, caption) prefix, _anchor = headline_prefix(level) puts %Q(#{prefix}#{compile_inline(caption)}) end
hood_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 456 def hood_begin(_level, _label, caption) common_column_begin('hood', caption) end
hood_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 460 def hood_end(_level) common_column_end('hood') end
image(_lines, id, caption, _metric = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 232 def image(_lines, id, caption, _metric = nil) blank 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 end
imgtable(_lines, id, caption = nil, _metric = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 299 def imgtable(_lines, id, caption = nil, _metric = nil) blank table_header id, caption if caption.present? blank end
important(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 528 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/plaintextbuilder.rb, line 582 def indepimage(_lines, _id, caption = nil, _metric = nil) blank puts "図 #{compile_inline(caption)}" if caption.present? blank end
Also aliased as: numberlessimage
info(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 516 def info(lines, caption = nil) base_parablock 'info', lines, caption end
inline_balloon(str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 358 def inline_balloon(str) %Q(←#{str.gsub(/@maru\[(\d+)\]/, inline_maru('\1'))}) end
inline_bib(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 384 def inline_bib(id) %Q(#{@chapter.bibpaper(id).number} ) rescue KeyError error "unknown bib: #{id}" end
inline_br(_str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 609 def inline_br(_str) "\n" end
inline_chap(id)
click to toggle source
Calls superclass method
ReVIEW::Builder#inline_chap
# File lib/review/plaintextbuilder.rb, line 617 def inline_chap(id) # "「第#{super}章 #{inline_title(id)}」" # "第#{super}章" super end
inline_chapref(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 623 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}" end
inline_comment(_str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 366 def inline_comment(_str) '' end
inline_del(_str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 605 def inline_del(_str) '' end
inline_dtp(_str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 601 def inline_dtp(_str) '' end
inline_fn(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 320 def inline_fn(id) " 注#{@chapter.footnote(id).number} " rescue KeyError error "unknown footnote: #{id}" end
inline_hd_chap(chap, id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 390 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)) rescue KeyError error "unknown headline: #{id}" end
inline_hidx(_str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 350 def inline_hidx(_str) '' end
inline_icon(_id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 354 def inline_icon(_id) '' end
inline_img(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 221 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 rescue KeyError error "unknown image: #{id}" end
inline_labelref(_idref)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 639 def inline_labelref(_idref) '●' end
Also aliased as: inline_ref
inline_list(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 140 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 rescue KeyError error "unknown list: #{id}" end
inline_pageref(_idref)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 645 def inline_pageref(_idref) '●ページ' # ページ番号を参照 end
inline_raw(str)
click to toggle source
Calls superclass method
ReVIEW::Builder#inline_raw
# File lib/review/plaintextbuilder.rb, line 346 def inline_raw(str) super(str).gsub('\\n', "\n") end
inline_table(id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 210 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 rescue KeyError error "unknown table: #{id}" end
inline_uchar(str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 362 def inline_uchar(str) [str.to_i(16)].pack('U') end
insideout_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 472 def insideout_begin(_level, _label, caption) common_column_begin('insideout', caption) end
insideout_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 476 def insideout_end(_level) common_column_end('insideout') end
insn(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 572 def insn(lines, caption = nil) base_block 'insn', lines, caption end
Also aliased as: box
label(_id)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 590 def label(_id) '' end
link(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 544 def link(lines, caption = nil) base_parablock 'link', lines, caption end
list_body(_id, lines, _lang)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 161 def list_body(_id, lines, _lang) lines.each do |line| puts detab(line) end blank end
list_header(id, caption, _lang)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 151 def list_header(id, caption, _lang) blank 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/plaintextbuilder.rb, line 195 def listnum_body(lines, _lang) lines.each_with_index do |line, i| puts((i + 1).to_s.rjust(2) + ": #{line}") end blank end
memo(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 508 def memo(lines, caption = nil) base_parablock 'memo', lines, caption end
nodisp_begin(level, label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 417 def nodisp_begin(level, label, caption) end
nodisp_end(level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 420 def nodisp_end(level) end
nofunc_text(str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 656 def nofunc_text(str) str end
Also aliased as: th, td, inline_sup, inline_sub, inline_hint, inline_maru, inline_idx, inline_ami, inline_i, inline_em, inline_b, inline_strong, inline_tt, inline_code, inline_ttb, inline_ttbold, inline_tti, inline_ttibold, inline_u, inline_bou, inline_keytop, inline_m
noindent()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 400 def noindent end
nonum_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 403 def nonum_begin(_level, _label, caption) puts compile_inline(caption) end
nonum_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 407 def nonum_end(_level) end
note(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 504 def note(lines, caption = nil) base_parablock 'note', lines, caption end
notice(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 548 def notice(lines, caption = nil) base_parablock 'notice', lines, caption end
notoc_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 410 def notoc_begin(_level, _label, caption) puts compile_inline(caption) end
notoc_end(level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 414 def notoc_end(level) end
ol_begin()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 97 def ol_begin blank @olitem = 0 end
ol_end()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 106 def ol_end blank @olitem = nil end
ol_item(lines, num)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 102 def ol_item(lines, num) puts "#{num} #{lines.join}" end
olnum(num)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 54 def olnum(num) @ol_num = num.to_i end
paragraph(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 129 def paragraph(lines) puts lines.join end
planning(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 520 def planning(lines, caption = nil) base_parablock 'planning', lines, caption end
point(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 552 def point(lines, caption = nil) base_parablock 'point', lines, caption end
post_paragraph()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 36 def post_paragraph '' end
practice(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 564 def practice(lines) base_parablock 'practice', lines, nil end
pre_paragraph()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 32 def pre_paragraph '' end
quote(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 206 def quote(lines) base_parablock 'quote', lines, nil end
read(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 133 def read(lines) puts split_paragraph(lines).join("\n") blank end
Also aliased as: lead
ref_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 480 def ref_begin(_level, _label, caption) common_column_begin('ref', caption) end
ref_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 484 def ref_end(_level) common_column_end('ref') end
reference(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 560 def reference(lines) base_parablock 'reference', lines, nil end
result()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 76 def result @output.string end
security(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 532 def security(lines, caption = nil) base_parablock 'security', lines, caption end
shoot(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 556 def shoot(lines, caption = nil) base_parablock 'shoot', lines, caption end
source(lines, caption = nil, _lang = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 635 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/plaintextbuilder.rb, line 488 def sup_begin(_level, _label, caption) common_column_begin('sup', caption) end
sup_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 492 def sup_end(_level) common_column_end('sup') end
table(lines, id = nil, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 247 def table(lines, id = nil, caption = nil) blank 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 do tr(rows.shift.map { |s| th(s) }) end rows.each do |cols| tr(cols.map { |s| td(s) }) end 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/plaintextbuilder.rb, line 296 def table_begin(_ncols) end
table_end()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 309 def table_end blank end
table_header(id, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 285 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
term(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 540 def term(lines) base_parablock 'term', lines, nil end
texequation(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 242 def texequation(lines) puts lines.join("\n") blank end
text(str)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 613 def text(str) str end
tip(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 512 def tip(lines, caption = nil) base_parablock 'tip', lines, caption end
tr(rows)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 305 def tr(rows) puts rows.join("\t") end
ul_begin()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 85 def ul_begin blank end
ul_end()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 93 def ul_end blank end
ul_item(lines)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 89 def ul_item(lines) puts lines.join end
warning(lines, caption = nil)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 576 def warning(lines, caption = nil) base_parablock 'warning', lines, caption end
world_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 448 def world_begin(_level, _label, caption) common_column_begin('world', caption) end
world_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 452 def world_end(_level) common_column_end('world') end
xcolumn_begin(_level, _label, caption)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 440 def xcolumn_begin(_level, _label, caption) common_column_begin('xcolumn', caption) end
xcolumn_end(_level)
click to toggle source
# File lib/review/plaintextbuilder.rb, line 444 def xcolumn_end(_level) common_column_end('xcolumn') end
Private Instance Methods
blank()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 70 def blank @output.puts unless @blank_seen @blank_seen = true end
builder_init_file()
click to toggle source
# File lib/review/plaintextbuilder.rb, line 44 def builder_init_file @section = 0 @subsection = 0 @subsubsection = 0 @subsubsubsection = 0 @blank_seen = true @sec_counter = SecCounter.new(5, @chapter) end
print(s)
click to toggle source
Calls superclass method
ReVIEW::Builder#print
# File lib/review/plaintextbuilder.rb, line 58 def print(s) @blank_seen = false super end
puts(s)
click to toggle source
Calls superclass method
ReVIEW::Builder#puts
# File lib/review/plaintextbuilder.rb, line 64 def puts(s) @blank_seen = false super end