review 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +90 -66
  3. data/.travis.yml +1 -1
  4. data/Gemfile +0 -1
  5. data/NEWS.ja.md +82 -0
  6. data/NEWS.md +83 -0
  7. data/README.md +5 -3
  8. data/Rakefile +8 -8
  9. data/bin/review +1 -5
  10. data/bin/review-catalog-converter +22 -27
  11. data/bin/review-check +36 -43
  12. data/bin/review-checkdep +10 -15
  13. data/bin/review-compile +37 -55
  14. data/bin/review-epubmaker +4 -5
  15. data/bin/review-index +21 -29
  16. data/bin/review-init +26 -37
  17. data/bin/review-pdfmaker +0 -2
  18. data/bin/review-preproc +25 -45
  19. data/bin/review-validate +19 -18
  20. data/bin/review-vol +15 -27
  21. data/doc/config.yml.sample +5 -2
  22. data/doc/format.ja.md +20 -1
  23. data/doc/format.md +21 -5
  24. data/doc/images/review-generate.png +0 -0
  25. data/lib/epubmaker.rb +1 -3
  26. data/lib/epubmaker/content.rb +24 -27
  27. data/lib/epubmaker/epubcommon.rb +135 -148
  28. data/lib/epubmaker/epubv2.rb +39 -46
  29. data/lib/epubmaker/epubv3.rb +93 -103
  30. data/lib/epubmaker/producer.rb +138 -151
  31. data/lib/epubmaker/zip_exporter.rb +21 -26
  32. data/lib/review/book.rb +3 -6
  33. data/lib/review/book/base.rb +78 -103
  34. data/lib/review/book/chapter.rb +36 -40
  35. data/lib/review/book/compilable.rb +28 -31
  36. data/lib/review/book/image_finder.rb +6 -13
  37. data/lib/review/book/index.rb +100 -121
  38. data/lib/review/book/page_metric.rb +2 -7
  39. data/lib/review/book/part.rb +18 -20
  40. data/lib/review/book/volume.rb +9 -13
  41. data/lib/review/builder.rb +81 -116
  42. data/lib/review/catalog.rb +15 -19
  43. data/lib/review/compiler.rb +64 -83
  44. data/lib/review/configure.rb +87 -97
  45. data/lib/review/converter.rb +2 -7
  46. data/lib/review/epubbuilder.rb +1 -3
  47. data/lib/review/epubmaker.rb +213 -205
  48. data/lib/review/exception.rb +2 -4
  49. data/lib/review/extentions.rb +0 -1
  50. data/lib/review/extentions/hash.rb +2 -2
  51. data/lib/review/extentions/string.rb +5 -30
  52. data/lib/review/htmlbuilder.rb +320 -375
  53. data/lib/review/htmltoc.rb +4 -7
  54. data/lib/review/htmlutils.rb +29 -32
  55. data/lib/review/i18n.rb +33 -44
  56. data/lib/review/i18n.yml +3 -3
  57. data/lib/review/idgxmlbuilder.rb +309 -345
  58. data/lib/review/latexbuilder.rb +175 -212
  59. data/lib/review/latexindex.rb +2 -8
  60. data/lib/review/latexutils.rb +33 -43
  61. data/lib/review/lineinput.rb +1 -1
  62. data/lib/review/logger.rb +21 -0
  63. data/lib/review/makerhelper.rb +1 -4
  64. data/lib/review/markdownbuilder.rb +44 -53
  65. data/lib/review/md2inaobuilder.rb +6 -12
  66. data/lib/review/pdfmaker.rb +143 -173
  67. data/lib/review/preprocessor.rb +64 -101
  68. data/lib/review/rstbuilder.rb +126 -158
  69. data/lib/review/sec_counter.rb +18 -34
  70. data/lib/review/template.rb +4 -5
  71. data/lib/review/textbuilder.rb +2 -3
  72. data/lib/review/textutils.rb +7 -13
  73. data/lib/review/tocparser.rb +31 -56
  74. data/lib/review/tocprinter.rb +26 -52
  75. data/lib/review/topbuilder.rb +219 -247
  76. data/lib/review/unfold.rb +15 -24
  77. data/lib/review/version.rb +1 -1
  78. data/lib/review/webmaker.rb +75 -99
  79. data/lib/review/webtocprinter.rb +15 -20
  80. data/lib/review/yamlloader.rb +13 -15
  81. data/review.gemspec +20 -22
  82. data/templates/latex/layout.tex.erb +2 -2
  83. data/templates/opf/epubv2.opf.erb +7 -7
  84. data/templates/opf/epubv3.opf.erb +7 -7
  85. data/templates/web/html/layout-html5.html.erb +2 -2
  86. data/test/assets/black.eps +280 -0
  87. data/test/assets/fit.png +0 -0
  88. data/test/assets/large.gif +0 -0
  89. data/test/assets/large.jpg +0 -0
  90. data/test/assets/large.png +0 -0
  91. data/test/assets/large.svg +65 -0
  92. data/test/assets/test_template.tex +1 -1
  93. data/test/book_test_helper.rb +2 -2
  94. data/test/run_test.rb +4 -4
  95. data/test/sample-book/src/Rakefile +21 -22
  96. data/test/syntax-book/Gemfile +4 -0
  97. data/test/syntax-book/Rakefile +72 -0
  98. data/test/syntax-book/appA.re +22 -0
  99. data/test/syntax-book/bib.re +6 -0
  100. data/test/syntax-book/catalog.yml +15 -0
  101. data/test/syntax-book/ch01.re +136 -0
  102. data/test/syntax-book/ch02.re +351 -0
  103. data/test/syntax-book/ch03.re +82 -0
  104. data/test/syntax-book/config.yml +35 -0
  105. data/test/syntax-book/images/ball.png +0 -0
  106. data/test/syntax-book/images/cover.jpg +0 -0
  107. data/test/syntax-book/images/fractal.png +0 -0
  108. data/test/syntax-book/images/img3-1.png +0 -0
  109. data/test/syntax-book/images/inlineicon.jpg +0 -0
  110. data/test/syntax-book/images/logic.png +0 -0
  111. data/test/syntax-book/images/logic2.png +0 -0
  112. data/test/syntax-book/images/puzzle.jpg +0 -0
  113. data/test/syntax-book/images/table.jpg +0 -0
  114. data/test/syntax-book/part2.re +6 -0
  115. data/test/syntax-book/pre01.re +26 -0
  116. data/test/syntax-book/review-ext.rb +14 -0
  117. data/test/syntax-book/sty/jumoline.sty +310 -0
  118. data/test/syntax-book/sty/reviewmacro.sty +39 -0
  119. data/test/syntax-book/style.css +494 -0
  120. data/test/syntax-book/syntax.dic +2 -0
  121. data/test/test_book.rb +106 -111
  122. data/test/test_book_chapter.rb +21 -22
  123. data/test/test_book_part.rb +3 -5
  124. data/test/test_builder.rb +11 -22
  125. data/test/test_catalog.rb +17 -18
  126. data/test/test_catalog_converter_cmd.rb +5 -5
  127. data/test/test_compiler.rb +18 -16
  128. data/test/test_configure.rb +35 -38
  129. data/test/test_converter.rb +3 -4
  130. data/test/test_epub3maker.rb +136 -117
  131. data/test/test_epubmaker.rb +107 -114
  132. data/test/test_epubmaker_cmd.rb +2 -4
  133. data/test/test_extentions_hash.rb +32 -33
  134. data/test/test_helper.rb +9 -11
  135. data/test/test_htmlbuilder.rb +454 -420
  136. data/test/test_htmltoc.rb +8 -12
  137. data/test/test_htmlutils.rb +0 -2
  138. data/test/test_i18n.rb +159 -150
  139. data/test/test_idgxmlbuilder.rb +190 -197
  140. data/test/test_image_finder.rb +21 -22
  141. data/test/test_index.rb +24 -29
  142. data/test/test_latexbuilder.rb +274 -264
  143. data/test/test_lineinput.rb +7 -10
  144. data/test/test_location.rb +7 -7
  145. data/test/test_makerhelper.rb +13 -25
  146. data/test/test_markdownbuilder.rb +23 -26
  147. data/test/test_md2inaobuilder.rb +8 -11
  148. data/test/test_pdfmaker.rb +114 -123
  149. data/test/test_pdfmaker_cmd.rb +1 -3
  150. data/test/test_review_ext.rb +3 -5
  151. data/test/test_rstbuilder.rb +92 -97
  152. data/test/test_template.rb +3 -7
  153. data/test/test_textutils.rb +27 -27
  154. data/test/test_tocparser.rb +2 -2
  155. data/test/test_topbuilder.rb +98 -103
  156. data/test/test_webtocprinter.rb +5 -6
  157. data/test/test_yamlloader.rb +42 -42
  158. data/test/test_zip_exporter.rb +12 -18
  159. metadata +86 -9
  160. data/lib/review/ewbbuilder.rb +0 -382
@@ -1,7 +1,5 @@
1
- #
2
- # $Id: latexindex.rb 2204 2006-03-18 06:10:26Z aamine $
3
- #
4
- # Copyright (c) 2002-2006 Minero Aoki
1
+ # Copyright (c) 2017 Minero Aoki, Kenshi Muto
2
+ # 2002-2006 Minero Aoki
5
3
  #
6
4
  # This program is free software.
7
5
  # You can distribute or modify this program under the terms of
@@ -10,9 +8,7 @@
10
8
  #
11
9
 
12
10
  module ReVIEW
13
-
14
11
  class LaTeXIndex
15
-
16
12
  def load(path)
17
13
  table = {}
18
14
  File.foreach(path) do |line|
@@ -29,7 +25,5 @@ module ReVIEW
29
25
  def [](key)
30
26
  @table.fetch(key)
31
27
  end
32
-
33
28
  end
34
-
35
29
  end
@@ -1,5 +1,3 @@
1
- # encoding: utf-8
2
-
3
1
  # Copyright (c) 2002-2006 Minero Aoki
4
2
  # Copyright (c) 2006-2017 Minero Aoki, Kenshi Muto and Masayoshi Takahashi
5
3
  #
@@ -12,13 +10,11 @@
12
10
  require 'nkf'
13
11
 
14
12
  module ReVIEW
15
-
16
13
  module LaTeXUtils
17
-
18
14
  def initialize_metachars(texcommand)
19
15
  @metachars = {
20
16
  '#' => '\#',
21
- "$" => '\textdollar{}',
17
+ '$' => '\textdollar{}',
22
18
  '%' => '\%',
23
19
  '&' => '\&',
24
20
  '{' => '\{',
@@ -29,36 +25,36 @@ module ReVIEW
29
25
  '|' => '\textbar{}',
30
26
  '<' => '\textless{}',
31
27
  '>' => '\textgreater{}',
32
- "\\" => '\reviewbackslash{}',
33
- "-" => '{-}'
28
+ '\\' => '\reviewbackslash{}',
29
+ '-' => '{-}'
34
30
  }
35
31
 
36
- if File.basename(texcommand, ".*") == "platex"
37
- @metachars.merge!({
38
- '⓪' => '\UTF{24EA}',
39
- '①' => '\UTF{2460}',
40
- '②' => '\UTF{2461}',
41
- '③' => '\UTF{2462}',
42
- '④' => '\UTF{2463}',
43
- '⑤' => '\UTF{2464}',
44
- '⑥' => '\UTF{2465}',
45
- '⑦' => '\UTF{2466}',
46
- '⑧' => '\UTF{2467}',
47
- '⑨' => '\UTF{2468}',
48
- '⑩' => '\UTF{2469}',
49
- '⑪' => '\UTF{246A}',
50
- '⑫' => '\UTF{246B}',
51
- '⑬' => '\UTF{246C}',
52
- '⑭' => '\UTF{246D}',
53
- '⑮' => '\UTF{246E}',
54
- '⑯' => '\UTF{246F}'
55
- })
56
-
57
- kanalist = %w{。 「 」 、 ・ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ ー ア イ ウ エ
32
+ if File.basename(texcommand, '.*') == 'platex'
33
+ @metachars.merge!(
34
+ '⓪' => '\UTF{24EA}',
35
+ '①' => '\UTF{2460}',
36
+ '②' => '\UTF{2461}',
37
+ '③' => '\UTF{2462}',
38
+ '④' => '\UTF{2463}',
39
+ '⑤' => '\UTF{2464}',
40
+ '⑥' => '\UTF{2465}',
41
+ '⑦' => '\UTF{2466}',
42
+ '⑧' => '\UTF{2467}',
43
+ '⑨' => '\UTF{2468}',
44
+ '⑩' => '\UTF{2469}',
45
+ '⑪' => '\UTF{246A}',
46
+ '⑫' => '\UTF{246B}',
47
+ '⑬' => '\UTF{246C}',
48
+ '⑭' => '\UTF{246D}',
49
+ '⑮' => '\UTF{246E}',
50
+ '⑯' => '\UTF{246F}'
51
+ )
52
+
53
+ kanalist = %w[。 「 」 、 ・ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ ー ア イ ウ エ
58
54
  オ カ キ ク ケ コ サ シ ス セ ソ タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ
59
- ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン ゙ ゚}
55
+ ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン ゙ ゚]
60
56
  kanalist.each do |char|
61
- char_jisx0208 = NKF.nkf('-WwX',char)
57
+ char_jisx0208 = NKF.nkf('-WwX', char)
62
58
  @metachars[char] = "\\aj半角{#{char_jisx0208}}"
63
59
  end
64
60
  end
@@ -69,34 +65,28 @@ module ReVIEW
69
65
  end
70
66
 
71
67
  def escape_latex(str)
72
- str.gsub(@metachars_re) {|s|
73
- @metachars[s] or raise "unknown trans char: #{s}"
74
- }
68
+ str.gsub(@metachars_re) { |s| @metachars[s] or raise "unknown trans char: #{s}" }
75
69
  end
76
70
 
77
71
  alias_method :escape, :escape_latex
78
72
 
79
73
  def unescape_latex(str)
80
- metachars_invert_re = Regexp.new(@metachars_invert.keys.collect{|key| Regexp.escape(key)}.join('|'))
81
- str.gsub(metachars_invert_re) {|s|
82
- @metachars_invert[s] or raise "unknown trans char: #{s}"
83
- }
74
+ metachars_invert_re = Regexp.new(@metachars_invert.keys.collect { |key| Regexp.escape(key) }.join('|'))
75
+ str.gsub(metachars_invert_re) { |s| @metachars_invert[s] or raise "unknown trans char: #{s}" }
84
76
  end
85
77
 
86
78
  alias_method :unescape, :unescape_latex
87
79
 
88
80
  def escape_index(str)
89
- str.gsub(/[@!|"]/) {|s| '"' + s }
81
+ str.gsub(/[@!|"]/) { |s| '"' + s }
90
82
  end
91
83
 
92
84
  def escape_url(str)
93
- str.gsub(/[\#%]/) {|s| '\\'+s }
85
+ str.gsub(/[\#%]/) { |s| '\\' + s }
94
86
  end
95
87
 
96
88
  def macro(name, *args)
97
- "\\#{name}" + args.map {|a| "{#{a}}" }.join('')
89
+ "\\#{name}" + args.map { |a| "{#{a}}" }.join
98
90
  end
99
-
100
91
  end
101
-
102
92
  end
@@ -4,7 +4,7 @@ module ReVIEW
4
4
  class LineInput < LineInput
5
5
  def skip_comment_lines
6
6
  n = 0
7
- while line = gets()
7
+ while line = gets
8
8
  unless line.strip =~ /\A\#@/
9
9
  ungets line
10
10
  return n
@@ -0,0 +1,21 @@
1
+ require 'logger'
2
+
3
+ module ReVIEW
4
+ class Logger < ::Logger
5
+ def initialize(*logdev)
6
+ if logdev.empty?
7
+ super(STDERR, formatter: ->(severity, _datetime, _progname, msg) { "#{severity}: #{msg}\n" })
8
+ else
9
+ super
10
+ end
11
+ end
12
+ end
13
+
14
+ def self.logger
15
+ @logger ||= ReVIEW::Logger.new
16
+ end
17
+
18
+ def self.logger=(logger)
19
+ @logger = logger
20
+ end
21
+ end
@@ -1,5 +1,3 @@
1
- # encoding: utf-8
2
-
3
1
  # Copyright (c) 2012-2017 Yuto HAYAMIZU, Kenshi Muto
4
2
  #
5
3
  # This program is free software.
@@ -53,7 +51,7 @@ module ReVIEW
53
51
  image_files << "#{from_dir}/#{fname}.#{conv_type}"
54
52
  end
55
53
 
56
- exts = options[:exts] || %w(png gif jpg jpeg svg pdf eps ai tif)
54
+ exts = options[:exts] || %w[png gif jpg jpeg svg pdf eps ai tif]
57
55
  exts_str = exts.join('|')
58
56
  if !is_converted && fname =~ /\.(#{exts_str})$/i
59
57
  FileUtils.cp "#{from_dir}/#{fname}", to_dir
@@ -66,6 +64,5 @@ module ReVIEW
66
64
  image_files
67
65
  end
68
66
  module_function :copy_images_to_dir
69
-
70
67
  end
71
68
  end
@@ -1,5 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
-
3
1
  # This program is free software.
4
2
  # You can distribute or modify this program under the terms of
5
3
  # the GNU LGPL, Lesser General Public License version 2.1.
@@ -9,7 +7,6 @@ require 'review/textutils'
9
7
  require 'review/htmlutils'
10
8
 
11
9
  module ReVIEW
12
-
13
10
  class MARKDOWNBuilder < Builder
14
11
  include TextUtils
15
12
  include HTMLUtils
@@ -21,7 +18,7 @@ module ReVIEW
21
18
  def builder_init_file
22
19
  @blank_seen = nil
23
20
  @ul_indent = 0
24
- @chapter.book.image_types = %w(.png .jpg .jpeg .gif .svg)
21
+ @chapter.book.image_types = %w[.png .jpg .jpeg .gif .svg]
25
22
  end
26
23
  private :builder_init_file
27
24
 
@@ -35,16 +32,16 @@ module ReVIEW
35
32
  @blank_seen = true
36
33
  end
37
34
 
38
- def headline(level, label, caption)
35
+ def headline(level, _label, caption)
39
36
  blank
40
- prefix = "#" * level
37
+ prefix = '#' * level
41
38
  puts "#{prefix} #{caption}"
42
39
  blank
43
40
  end
44
41
 
45
42
  def quote(lines)
46
43
  blank
47
- puts split_paragraph(lines).map{|line| "> #{line}"}.join("\n> \n")
44
+ puts split_paragraph(lines).map { |line| "> #{line}" }.join("\n> \n")
48
45
  blank
49
46
  end
50
47
 
@@ -55,15 +52,15 @@ module ReVIEW
55
52
 
56
53
  def list_header(id, caption, lang)
57
54
  if get_chap.nil?
58
- print %Q[リスト#{@chapter.list(id).number} #{compile_inline(caption)}\n\n]
55
+ print %Q(リスト#{@chapter.list(id).number} #{compile_inline(caption)}\n\n)
59
56
  else
60
- print %Q[リスト#{get_chap}.#{@chapter.list(id).number} #{compile_inline(caption)}\n\n]
57
+ print %Q(リスト#{get_chap}.#{@chapter.list(id).number} #{compile_inline(caption)}\n\n)
61
58
  end
62
- lang ||= ""
59
+ lang ||= ''
63
60
  puts "```#{lang}"
64
61
  end
65
62
 
66
- def list_body(id, lines, lang)
63
+ def list_body(_id, lines, _lang)
67
64
  lines.each do |line|
68
65
  puts detab(line)
69
66
  end
@@ -76,7 +73,7 @@ module ReVIEW
76
73
  end
77
74
 
78
75
  def ul_item_begin(lines)
79
- puts " " * (@ul_indent - 1) + "* " + "#{lines.join}"
76
+ puts ' ' * (@ul_indent - 1) + '* ' + lines.join
80
77
  end
81
78
 
82
79
  def ul_item_end
@@ -121,17 +118,17 @@ module ReVIEW
121
118
  puts caption
122
119
  print "\n"
123
120
  end
124
- lang ||= ""
121
+ lang ||= ''
125
122
  puts "```#{lang}"
126
123
  lines.each do |line|
127
124
  puts detab(line)
128
125
  end
129
- puts "```"
126
+ puts '```'
130
127
  blank
131
128
  end
132
129
 
133
130
  def hr
134
- puts "----"
131
+ puts '----'
135
132
  end
136
133
 
137
134
  def compile_href(url, label)
@@ -163,43 +160,41 @@ module ReVIEW
163
160
  "`#{str}`"
164
161
  end
165
162
 
166
- def image_image(id, caption, metric)
163
+ def image_image(id, caption, _metric)
167
164
  blank
168
- puts "![#{compile_inline(caption)}](#{@chapter.image(id).path.sub(/\A\.\//, "")})"
165
+ puts "![#{compile_inline(caption)}](#{@chapter.image(id).path.sub(%r{\A\./}, '')})"
169
166
  blank
170
167
  end
171
168
 
172
- def image_dummy(id, caption, lines)
169
+ def image_dummy(_id, _caption, lines)
173
170
  puts lines.join
174
171
  end
175
172
 
176
173
  def inline_img(id)
177
- "#{I18n.t("image")}#{@chapter.image(id).number}"
174
+ "#{I18n.t('image')}#{@chapter.image(id).number}"
178
175
  rescue KeyError
179
176
  error "unknown image: #{id}"
180
177
  nofunc_text("[UnknownImage:#{id}]")
181
178
  end
182
179
 
183
- def indepimage(id, caption="", metric=nil)
180
+ def indepimage(_lines, id, caption = '', _metric = nil)
184
181
  blank
185
- puts "![#{compile_inline(caption)}](#{@chapter.image(id).path.sub(/\A\.\//, "")})"
182
+ puts "![#{compile_inline(caption)}](#{@chapter.image(id).path.sub(%r{\A\./}, '')})"
186
183
  blank
187
184
  end
188
185
 
189
186
  def pagebreak
190
- puts "{pagebreak}"
187
+ puts '{pagebreak}'
191
188
  end
192
189
 
193
190
  def image_ext
194
- "jpg"
191
+ 'jpg'
195
192
  end
196
193
 
197
194
  def cmd(lines)
198
- puts "```shell-session"
199
- lines.each do |line|
200
- puts detab(line)
201
- end
202
- puts "```"
195
+ puts '```shell-session'
196
+ lines.each { |line| puts detab(line) }
197
+ puts '```'
203
198
  end
204
199
 
205
200
  def table(lines, id = nil, caption = nil)
@@ -208,11 +203,11 @@ module ReVIEW
208
203
  lines.each_with_index do |line, idx|
209
204
  if /\A[\=\-]{12}/ =~ line
210
205
  # just ignore
211
- #error "too many table separator" if sepidx
206
+ # error "too many table separator" if sepidx
212
207
  sepidx ||= idx
213
208
  next
214
209
  end
215
- rows.push(line.strip.split(/\t+/).map {|s| s.sub(/\A\./, '') })
210
+ rows.push(line.strip.split(/\t+/).map { |s| s.sub(/\A\./, '') })
216
211
  end
217
212
  rows = adjust_n_cols(rows)
218
213
 
@@ -225,16 +220,16 @@ module ReVIEW
225
220
  return if rows.empty?
226
221
  if sepidx
227
222
  sepidx.times do
228
- tr(rows.shift.map {|s| th(s) })
223
+ tr(rows.shift.map { |s| th(s) })
229
224
  end
230
225
  table_border rows.first.size
231
226
  rows.each do |cols|
232
- tr(cols.map {|s| td(s) })
227
+ tr(cols.map { |s| td(s) })
233
228
  end
234
229
  else
235
230
  rows.each do |cols|
236
231
  h, *cs = *cols
237
- tr([th(h)] + cs.map {|s| td(s) })
232
+ tr([th(h)] + cs.map { |s| td(s) })
238
233
  end
239
234
  end
240
235
  table_end
@@ -243,12 +238,10 @@ module ReVIEW
243
238
  def table_header(id, caption)
244
239
  if id.nil?
245
240
  puts compile_inline(caption)
241
+ elsif get_chap
242
+ puts %Q(#{I18n.t('table')}#{I18n.t('format_number_header', [get_chap, @chapter.table(id).number])}#{I18n.t('caption_prefix')}#{compile_inline(caption)})
246
243
  else
247
- if get_chap.nil?
248
- puts %Q[#{I18n.t("table")}#{I18n.t("format_number_header_without_chapter", [@chapter.table(id).number])}#{I18n.t("caption_prefix")}#{compile_inline(caption)}]
249
- else
250
- puts %Q[#{I18n.t("table")}#{I18n.t("format_number_header", [get_chap, @chapter.table(id).number])}#{I18n.t("caption_prefix")}#{compile_inline(caption)}]
251
- end
244
+ puts %Q(#{I18n.t('table')}#{I18n.t('format_number_header_without_chapter', [@chapter.table(id).number])}#{I18n.t('caption_prefix')}#{compile_inline(caption)})
252
245
  end
253
246
  blank
254
247
  end
@@ -257,19 +250,19 @@ module ReVIEW
257
250
  end
258
251
 
259
252
  def tr(rows)
260
- puts "|#{rows.join("|")}|"
253
+ puts "|#{rows.join('|')}|"
261
254
  end
262
255
 
263
256
  def table_border(ncols)
264
- puts (0..ncols).map{"|"}.join(":--")
257
+ puts((0..ncols).map { '|' }.join(':--'))
265
258
  end
266
259
 
267
260
  def th(str)
268
- "#{str}"
261
+ str
269
262
  end
270
263
 
271
264
  def td(str)
272
- "#{str}"
265
+ str
273
266
  end
274
267
 
275
268
  def table_end
@@ -285,7 +278,7 @@ module ReVIEW
285
278
  "[^#{id}]"
286
279
  end
287
280
 
288
- def inline_br(str)
281
+ def inline_br(_str)
289
282
  "\n"
290
283
  end
291
284
 
@@ -295,28 +288,26 @@ module ReVIEW
295
288
 
296
289
  def compile_ruby(base, ruby)
297
290
  if @book.htmlversion == 5
298
- %Q[<ruby>#{escape_html(base)}<rp>#{I18n.t("ruby_prefix")}</rp><rt>#{escape_html(ruby)}</rt><rp>#{I18n.t("ruby_postfix")}</rp></ruby>]
291
+ %Q(<ruby>#{escape_html(base)}<rp>#{I18n.t('ruby_prefix')}</rp><rt>#{escape_html(ruby)}</rt><rp>#{I18n.t('ruby_postfix')}</rp></ruby>)
299
292
  else
300
- %Q[<ruby><rb>#{escape_html(base)}</rb><rp>#{I18n.t("ruby_prefix")}</rp><rt>#{ruby}</rt><rp>#{I18n.t("ruby_postfix")}</rp></ruby>]
293
+ %Q(<ruby><rb>#{escape_html(base)}</rb><rp>#{I18n.t('ruby_prefix')}</rp><rt>#{ruby}</rt><rp>#{I18n.t('ruby_postfix')}</rp></ruby>)
301
294
  end
302
295
  end
303
296
 
304
297
  def comment(lines, comment = nil)
305
- if @book.config["draft"]
306
- lines ||= []
307
- lines.unshift comment unless comment.blank?
308
- str = lines.join("<br />")
309
- puts %Q(<div class="red">#{escape_html(str)}</div>)
310
- end
298
+ return unless @book.config['draft']
299
+ lines ||= []
300
+ lines.unshift comment unless comment.blank?
301
+ str = lines.join('<br />')
302
+ puts %Q(<div class="red">#{escape_html(str)}</div>)
311
303
  end
312
304
 
313
305
  def inline_comment(str)
314
- if @book.config["draft"]
306
+ if @book.config['draft']
315
307
  %Q(<span class="red">#{escape_html(str)}</span>)
316
308
  else
317
309
  ''
318
310
  end
319
311
  end
320
312
  end
321
-
322
313
  end # module ReVIEW