review 4.2.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (165) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-win.yml +11 -5
  3. data/.rubocop.yml +113 -24
  4. data/NEWS.ja.md +94 -0
  5. data/NEWS.md +94 -0
  6. data/bin/review-catalog-converter +1 -1
  7. data/bin/review-check +2 -4
  8. data/bin/review-checkdep +1 -1
  9. data/bin/review-compile +8 -14
  10. data/bin/review-validate +1 -1
  11. data/doc/config.yml.sample +4 -1
  12. data/doc/config.yml.sample-simple +1 -1
  13. data/doc/format.ja.md +83 -4
  14. data/doc/format.md +84 -7
  15. data/doc/makeindex.ja.md +2 -2
  16. data/doc/quickstart.ja.md +3 -3
  17. data/doc/quickstart.md +2 -2
  18. data/lib/epubmaker/content.rb +3 -2
  19. data/lib/epubmaker/epubcommon.rb +33 -25
  20. data/lib/epubmaker/epubv2.rb +5 -6
  21. data/lib/epubmaker/epubv3.rb +20 -18
  22. data/lib/review/book.rb +2 -2
  23. data/lib/review/book/base.rb +61 -25
  24. data/lib/review/book/bib.rb +21 -0
  25. data/lib/review/book/book_unit.rb +155 -0
  26. data/lib/review/book/chapter.rb +30 -26
  27. data/lib/review/book/index.rb +23 -185
  28. data/lib/review/book/index/item.rb +7 -1
  29. data/lib/review/book/part.rb +21 -9
  30. data/lib/review/book/volume.rb +1 -1
  31. data/lib/review/builder.rb +68 -13
  32. data/lib/review/catalog.rb +2 -2
  33. data/lib/review/compiler.rb +159 -73
  34. data/lib/review/configure.rb +22 -1
  35. data/lib/review/converter.rb +1 -1
  36. data/lib/review/epub2html.rb +6 -1
  37. data/lib/review/epubmaker.rb +12 -23
  38. data/lib/review/htmlbuilder.rb +36 -7
  39. data/lib/review/htmlutils.rb +7 -10
  40. data/lib/review/i18n.rb +1 -1
  41. data/lib/review/idgxmlbuilder.rb +51 -6
  42. data/lib/review/idgxmlmaker.rb +9 -14
  43. data/lib/review/index_builder.rb +653 -0
  44. data/lib/review/init.rb +5 -13
  45. data/lib/review/latexbuilder.rb +65 -4
  46. data/lib/review/logger.rb +2 -2
  47. data/lib/review/makerhelper.rb +11 -0
  48. data/lib/review/markdownbuilder.rb +19 -1
  49. data/lib/review/pdfmaker.rb +17 -36
  50. data/lib/review/plaintextbuilder.rb +48 -2
  51. data/lib/review/preprocessor.rb +5 -5
  52. data/lib/review/rstbuilder.rb +25 -6
  53. data/lib/review/sec_counter.rb +13 -0
  54. data/lib/review/textmaker.rb +4 -12
  55. data/lib/review/tocprinter.rb +2 -3
  56. data/lib/review/topbuilder.rb +26 -0
  57. data/lib/review/update.rb +7 -7
  58. data/lib/review/version.rb +1 -1
  59. data/lib/review/volumeprinter.rb +2 -3
  60. data/lib/review/webmaker.rb +9 -20
  61. data/review.gemspec +2 -2
  62. data/samples/sample-book/src/config.yml +1 -1
  63. data/samples/syntax-book/Gemfile +1 -1
  64. data/samples/syntax-book/config.yml +1 -1
  65. data/templates/latex/config.erb +27 -23
  66. data/templates/latex/review-jlreq/README.md +3 -1
  67. data/templates/latex/review-jlreq/review-base.sty +31 -15
  68. data/templates/latex/review-jlreq/review-jlreq.cls +8 -24
  69. data/templates/latex/review-jsbook/README.md +7 -5
  70. data/templates/latex/review-jsbook/review-base.sty +34 -16
  71. data/templates/latex/review-jsbook/review-jsbook.cls +4 -2
  72. data/templates/web/html/layout-html5.html.erb +1 -1
  73. data/test/assets/test_template.tex +3 -3
  74. data/test/assets/test_template_backmatter.tex +3 -3
  75. data/test/book_test_helper.rb +11 -5
  76. data/test/test_book.rb +54 -63
  77. data/test/test_book_chapter.rb +93 -52
  78. data/test/test_builder.rb +24 -15
  79. data/test/test_converter.rb +1 -0
  80. data/test/test_epub3maker.rb +2 -2
  81. data/test/test_epubmaker.rb +8 -0
  82. data/test/test_helper.rb +4 -1
  83. data/test/test_htmlbuilder.rb +627 -56
  84. data/test/test_htmlutils.rb +0 -12
  85. data/test/test_i18n.rb +33 -33
  86. data/test/test_idgxmlbuilder.rb +358 -11
  87. data/test/test_idgxmlmaker_cmd.rb +1 -1
  88. data/test/test_index.rb +62 -52
  89. data/test/test_indexbuilder.rb +52 -0
  90. data/test/test_latexbuilder.rb +547 -10
  91. data/test/test_latexbuilder_v2.rb +43 -5
  92. data/test/test_logger.rb +7 -7
  93. data/test/test_makerhelper.rb +0 -12
  94. data/test/test_markdownbuilder.rb +3 -0
  95. data/test/test_pdfmaker.rb +13 -12
  96. data/test/test_pdfmaker_cmd.rb +1 -1
  97. data/test/test_plaintextbuilder.rb +422 -7
  98. data/test/test_review_ext.rb +2 -1
  99. data/test/test_rstbuilder.rb +25 -1
  100. data/test/test_sec_counter.rb +156 -0
  101. data/test/test_textmaker_cmd.rb +1 -1
  102. data/test/test_topbuilder.rb +187 -10
  103. data/test/test_update.rb +10 -10
  104. data/test/test_webtocprinter.rb +12 -12
  105. data/vendor/gentombow/LICENSE +1 -1
  106. data/vendor/gentombow/Makefile +0 -1
  107. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  108. data/vendor/gentombow/bounddvi-en.tex +1 -0
  109. data/vendor/gentombow/bounddvi.pdf +0 -0
  110. data/vendor/gentombow/bounddvi.sty +30 -7
  111. data/vendor/gentombow/bounddvi.tex +1 -0
  112. data/vendor/gentombow/create_archive.sh +1 -0
  113. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  114. data/vendor/gentombow/gentombow-ja.tex +9 -0
  115. data/vendor/gentombow/gentombow.pdf +0 -0
  116. data/vendor/gentombow/gentombow.sty +32 -10
  117. data/vendor/gentombow/gentombow.tex +8 -0
  118. data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
  119. data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
  120. data/vendor/jsclasses/Makefile +3 -2
  121. data/vendor/jsclasses/create_archive.sh +5 -5
  122. data/vendor/jsclasses/jis/Makefile +3 -2
  123. data/vendor/jsclasses/jis/jsarticle.cls +22 -18
  124. data/vendor/jsclasses/jis/jsbook.cls +22 -18
  125. data/vendor/jsclasses/jis/jsclasses.dtx +94 -13
  126. data/vendor/jsclasses/jis/jsclasses.ins +15 -5
  127. data/vendor/jsclasses/jis/jslogo.ins +9 -0
  128. data/vendor/jsclasses/jis/jslogo.sty +1 -13
  129. data/vendor/jsclasses/jis/jspf.cls +22 -18
  130. data/vendor/jsclasses/jis/jsreport.cls +22 -18
  131. data/vendor/jsclasses/jis/jsverb.ins +9 -0
  132. data/vendor/jsclasses/jis/jsverb.sty +1 -13
  133. data/vendor/jsclasses/jis/kiyou.cls +22 -18
  134. data/vendor/jsclasses/jis/minijs.sty +65 -22
  135. data/vendor/jsclasses/jis/okumacro.ins +9 -0
  136. data/vendor/jsclasses/jis/okumacro.sty +1 -13
  137. data/vendor/jsclasses/jis/okuverb.ins +9 -0
  138. data/vendor/jsclasses/jis/okuverb.sty +1 -13
  139. data/vendor/jsclasses/jis/winjis.sty +23 -19
  140. data/vendor/jsclasses/jsarticle.cls +22 -18
  141. data/vendor/jsclasses/jsbook.cls +22 -18
  142. data/vendor/jsclasses/jsclasses.dtx +94 -13
  143. data/vendor/jsclasses/jsclasses.ins +15 -5
  144. data/vendor/jsclasses/jsclasses.pdf +0 -0
  145. data/vendor/jsclasses/jslogo.ins +9 -0
  146. data/vendor/jsclasses/jslogo.pdf +0 -0
  147. data/vendor/jsclasses/jslogo.sty +1 -13
  148. data/vendor/jsclasses/jspf.cls +22 -18
  149. data/vendor/jsclasses/jsreport.cls +22 -18
  150. data/vendor/jsclasses/jsverb.ins +9 -0
  151. data/vendor/jsclasses/jsverb.pdf +0 -0
  152. data/vendor/jsclasses/jsverb.sty +1 -13
  153. data/vendor/jsclasses/kiyou.cls +22 -18
  154. data/vendor/jsclasses/minijs.sty +68 -22
  155. data/vendor/jsclasses/okumacro.ins +9 -0
  156. data/vendor/jsclasses/okumacro.pdf +0 -0
  157. data/vendor/jsclasses/okumacro.sty +1 -13
  158. data/vendor/jsclasses/okuverb.ins +9 -0
  159. data/vendor/jsclasses/okuverb.pdf +0 -0
  160. data/vendor/jsclasses/okuverb.sty +1 -13
  161. data/vendor/jsclasses/tests/relfont.tex +10 -0
  162. data/vendor/jsclasses/winjis.sty +23 -19
  163. metadata +14 -6
  164. data/.rubocop_todo.yml +0 -7
  165. data/lib/review/book/compilable.rb +0 -174
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6045860e33279138a91d9f6fcdecc9dd589c448c9e576858f41969d3fe73fa79
4
- data.tar.gz: 70ccce6b312cf4802261417393e724f6cfbc9d97aa7afd7a2d4783af148ba1ea
3
+ metadata.gz: a64963e856714bc3b342e5b436d5a78f310785cfcad7216afa8a1676ea8b22b1
4
+ data.tar.gz: a43be15aee421f6e864d7ba2007981717786ee359bb70d358cb9e4794827a47c
5
5
  SHA512:
6
- metadata.gz: 7c0bbe35d45e9b099fcc6f1114b3e0cc8b0c8edc2cb1af04288c71a01e188bc1a4e88c68ccb905c30912d82082a822526f0721034b85c1b530b607341404e2d5
7
- data.tar.gz: 7b2010fa445336f13a5067a436957e9899dd17af042ef816c7d742c36c2afd8dbad6c7d0a1a11d572e2f57212e06f100a51403bad0101a5ce9cb8e10505ac531
6
+ metadata.gz: 12d7b001415a9e5f1b38f652ec4b3e89d8ad55661eb20fd911e0e626e1f8b3651844816ed209fa6f015524dcf2ff6f2c604ad5427ebbed91d21187e62f8629d5
7
+ data.tar.gz: 95a137a10cf78f204a3ee1d94d078f4ebe24b9b5a710c43cd41fee30d04c40ce9d350d121cd76952df5a2f01bcb9166588e287399a71cd308ff4bae31cae128e
@@ -23,17 +23,23 @@ jobs:
23
23
  gem install bundler --no-document
24
24
  bundle install --retry 3
25
25
  bundle exec ruby test/run_test.rb --max-diff-target-string-size=10000 --verbose=v
26
- - name: Test with epubcheck-ruby
26
+ - name: install Re:VIEW and epubcheck-ruby
27
27
  shell: bash
28
28
  run: |
29
29
  gem install -N epubcheck-ruby
30
- ruby bin/review-init hello
30
+ rake install
31
+ - name: Test with epubcheck-ruby
32
+ shell: bash
33
+ run: |
34
+ review-init hello
31
35
  cd hello
32
- ruby ../bin/review-epubmaker config.yml
36
+ ruby -e 'Dir.glob("*.re"){|path| File.write(path, File.read(path).gsub("=", "= foo")) }'
37
+ review-epubmaker config.yml
33
38
  epubcheck book.epub
34
39
  cd ..
35
- ruby bin/review-init hello2 --epub-version 2
40
+ review-init hello2 --epub-version 2
36
41
  cd hello2
37
- ruby ../bin/review-epubmaker config.yml
42
+ ruby -e 'Dir.glob("*.re"){|path| File.write(path, File.read(path).gsub("=", "= foo")) }'
43
+ review-epubmaker config.yml
38
44
  epubcheck book.epub
39
45
  cd ..
@@ -3,13 +3,13 @@ AllCops:
3
3
  - lib/lineinput.rb
4
4
  - lib/uuid.rb
5
5
  - test/syntax-book/*
6
+ - tmp/*
6
7
  DisplayCopNames: true
8
+ NewCops: enable
7
9
 
8
10
  require:
9
11
  - rubocop-performance
10
12
 
11
- inherit_from: .rubocop_todo.yml
12
-
13
13
  #### Lint
14
14
 
15
15
  Lint/EmptyWhen:
@@ -25,9 +25,6 @@ Lint/AssignmentInCondition:
25
25
  Lint/ParenthesesAsGroupedExpression:
26
26
  Enabled: true
27
27
 
28
- #Lint/RescueWithoutErrorClass:
29
- # Enabled: false
30
-
31
28
  Lint/UnderscorePrefixedVariableName:
32
29
  Enabled: true
33
30
 
@@ -43,6 +40,18 @@ Lint/UselessAssignment:
43
40
  Lint/ErbNewArguments:
44
41
  Enabled: false
45
42
 
43
+ Lint/DeprecatedOpenSSLConstant:
44
+ Enabled: true
45
+
46
+ Lint/MixedRegexpCaptureTypes:
47
+ Enabled: true
48
+
49
+ Lint/RaiseException:
50
+ Enabled: true
51
+
52
+ Lint/StructNewOverride:
53
+ Enabled: true
54
+
46
55
  #### Performance
47
56
 
48
57
  Performance/RegexpMatch:
@@ -61,6 +70,36 @@ Performance/RangeInclude:
61
70
  Performance/DeletePrefix:
62
71
  Enabled: false
63
72
 
73
+ Performance/RedundantMerge:
74
+ Enabled: true
75
+
76
+ Performance/AncestorsInclude:
77
+ Enabled: true
78
+
79
+ Performance/BigDecimalWithNumericArgument:
80
+ Enabled: true
81
+
82
+ Performance/RedundantSortBlock:
83
+ Enabled: true
84
+
85
+ Performance/RedundantStringChars:
86
+ Enabled: true
87
+
88
+ Performance/ReverseFirst:
89
+ Enabled: true
90
+
91
+ Performance/SortReverse:
92
+ Enabled: true
93
+
94
+ Performance/Squeeze:
95
+ Enabled: true
96
+
97
+ Performance/StringInclude:
98
+ Enabled: false
99
+
100
+ Performance/CollectionLiteralInLoop:
101
+ Enabled: false
102
+
64
103
  #### Style
65
104
 
66
105
  Style/AccessModifierDeclarations:
@@ -75,7 +114,7 @@ Style/Alias:
75
114
  Enabled: true
76
115
 
77
116
  Style/AndOr:
78
- Enabled: false
117
+ Enabled: true
79
118
 
80
119
  Style/BarePercentLiterals:
81
120
  EnforcedStyle: percent_q
@@ -84,9 +123,6 @@ Style/BarePercentLiterals:
84
123
  Style/BlockDelimiters:
85
124
  Enabled: true
86
125
 
87
- Style/BracesAroundHashParameters:
88
- Enabled: false
89
-
90
126
  Style/CaseEquality:
91
127
  Enabled: false
92
128
 
@@ -123,7 +159,7 @@ Style/EmptyElse:
123
159
  Enabled: true
124
160
 
125
161
  Style/EvalWithLocation:
126
- Enabled: false
162
+ Enabled: true
127
163
 
128
164
  Style/FormatString:
129
165
  EnforcedStyle: sprintf
@@ -144,13 +180,10 @@ Style/IfUnlessModifier:
144
180
  Style/MutableConstant:
145
181
  Enabled: false
146
182
 
147
- #Style/MultipleComparison:
148
- # Enabled: true
149
-
150
- Style/RedundantInterpolation:
183
+ Style/MultipleComparison:
151
184
  Enabled: true
152
185
 
153
- Performance/RedundantMerge:
186
+ Style/RedundantInterpolation:
154
187
  Enabled: true
155
188
 
156
189
  Style/ZeroLengthPredicate:
@@ -219,6 +252,9 @@ Style/MethodCallWithArgsParentheses:
219
252
  - 'source'
220
253
  - 'assert'
221
254
  - 'assert_equal'
255
+ - 'assert_raise'
256
+ - 'assert_raises'
257
+ - 'assert_nothing_raised'
222
258
  - 'sh'
223
259
  - 'mv'
224
260
  - 'rm_rf'
@@ -313,8 +349,50 @@ Style/RedundantPercentQ:
313
349
  Style/WhileUntilModifier:
314
350
  Enabled: false
315
351
 
316
- #Style/YodaCondition:
317
- # Enabled: true
352
+ Style/YodaCondition:
353
+ Enabled: true
354
+
355
+ Style/ExponentialNotation:
356
+ Enabled: true
357
+
358
+ Style/HashEachMethods:
359
+ Enabled: true
360
+
361
+ Style/HashTransformKeys:
362
+ Enabled: true
363
+
364
+ Style/HashTransformValues:
365
+ Enabled: true
366
+
367
+ Style/RedundantFetchBlock:
368
+ Enabled: true
369
+
370
+ Style/RedundantRegexpCharacterClass:
371
+ Enabled: true
372
+
373
+ Style/RedundantRegexpEscape:
374
+ Enabled: true
375
+
376
+ Style/SlicingWithRange:
377
+ Enabled: false
378
+
379
+ Style/AccessorGrouping:
380
+ Enabled: false
381
+
382
+ Style/CaseLikeIf:
383
+ Enabled: false
384
+
385
+ Style/StringConcatenation:
386
+ Enabled: false
387
+
388
+ Style/OptionalBooleanParameter:
389
+ Enabled: false
390
+
391
+ Style/SoleNestedConditional:
392
+ Enabled: false
393
+
394
+ Style/CombinableLoops:
395
+ Enabled: false
318
396
 
319
397
  ### Layout
320
398
 
@@ -425,6 +503,17 @@ Layout/TrailingWhitespace:
425
503
  Enabled: true
426
504
  AllowInHeredoc: true
427
505
 
506
+ Layout/EmptyLinesAroundAttributeAccessor:
507
+ Enabled: true
508
+
509
+ Layout/SpaceAroundMethodCallOperator:
510
+ Enabled: true
511
+
512
+ Layout/LineLength:
513
+ Max: 256
514
+ Exclude:
515
+ - "test/**/*"
516
+
428
517
  #### Metrics
429
518
 
430
519
  Metrics/BlockNesting:
@@ -444,11 +533,6 @@ Metrics/ClassLength:
444
533
  Exclude:
445
534
  - 'test/*.rb'
446
535
 
447
- Metrics/LineLength:
448
- Max: 256
449
- Exclude:
450
- - "test/**/*"
451
-
452
536
  ### should be < 50
453
537
  Metrics/MethodLength:
454
538
  Max: 100
@@ -483,8 +567,8 @@ Naming/AccessorMethodName:
483
567
  Enabled: true
484
568
 
485
569
  # When defining the == operator, name its argument other.
486
- #Style/BinaryOperatorParameterName:
487
- # Enabled: true
570
+ Naming/BinaryOperatorParameterName:
571
+ Enabled: true
488
572
 
489
573
  Naming/FileName:
490
574
  Enabled: false
@@ -513,3 +597,8 @@ Naming/VariableNumber:
513
597
 
514
598
  Security/YAMLLoad:
515
599
  Enabled: true
600
+
601
+ #### Gemspec
602
+
603
+ Gemspec/RequiredRubyVersion:
604
+ Enabled: false
data/NEWS.ja.md CHANGED
@@ -1,3 +1,97 @@
1
+ # Version 5.0.0
2
+ ## 新機能
3
+ * review-jsbook / review-jlreq クラスに、`cover_fit_page` オプションを追加しました。`texdocumentclass` パラメータに `cover_fit_page=true` を付けると、画像サイズがどのようなものであっても仕上がりサイズに拡縮して表紙に貼り込みます。なお、制作において図版は実寸で作成することを推奨します ([#1534])
4
+ * 小さな囲み要素 (`//note`, `//memo`, `//tip`, `//info`, `//warning`, `//important`, `//caution`, `//notice`) の中で、`//image` などのブロック命令を含めたり、および箇条書きを入れたりできるようになりました。拡張で類似のことを利用したいときには、defminicolumn で定義します ([#1558], [#1562])
5
+ * 箇条書きの入れ子を指示する命令として `//beginchild`, `//endchild` という1行命令を追加しました。箇条書きの子にしたいものを `//beginchild` と `//endchild` で囲むと、前に位置する箇条書きの子要素になります。**この機能は実験的です。今後のバージョンで挙動を変えたり廃止したりする可能性があります** ([#1497])
6
+
7
+ ## 非互換の変更
8
+ * review-jlreq.cls における hiddenfolio の配置を、jlreqtrimmarkssetup を使って実装するように変更しました。以前のバージョンとは位置や表示に若干の違いがあります ([#1397])
9
+ * `chapterlink` パラメータのデフォルト値を true (有効) にしました。これが有効になっているときには、Web、EPUB での章・項の参照や、図表・リスト・式・参考文献の参照などがハイパーリンク化されます。TeX PDF においては `media=ebook` のときのみ、章・項・参考文献の参照がハイパーリンク化されます ([#1529])
10
+
11
+ ## バグ修正
12
+ * PDFMaker: 同名で拡張子違いの図版ファイルがあるときに、位置がずれる問題を修正しました。extractbb コマンドは明示的に呼び出されなくなります ([#1483])
13
+ * PDFMaker: 著者名 (`aut`) パラメータが空のときにエラーになる問題を修正しました ([#1517])
14
+ * PDFMaker: `//indepimage` 命令で画像が存在せず、かつ ID に TeX のエスケープ対象となる文字を含んでいるとエラーが起きる問題を修正しました ([#1527])
15
+ * PDFMaker: `bookttilename` や `aut` パラメータに TeX のエスケープ対象となる文字を入れると PDF メタ情報がおかしくなる問題を修正しました (`media=ebook` のときのみ) ([#1533])
16
+ * WebMaker: HTML テンプレートで nil が入ってしまうのを修正しました ([#1545])
17
+ * PDFMaker: 章番号を非表示にするとエラーで失敗するのを修正しました ([#1559])
18
+ * MarkdownBuilder: note 等の中の段落を改行区切りではなく空行区切りにしました ([#1572])
19
+
20
+ ## 機能強化
21
+ * 図表などのアイテムでエラーが発生したときの表示を詳細にしました ([#1523])
22
+ * PDFMaker: `@<hd>` 命令で展開した項・段について、`media=ebook` のときにはハイパーリンクになるようにしました ([#1530])
23
+ * HTMLBuilder および IDGXMLBuilder において、文字列のエスケープを従来の `cgi/util` の代わりにより高速な `cgi/escape` が利用できるときにはそれを利用するようにしました。また、`ReVIEW::HTMLUtils.escape` も書き換えられました ([#1536])
24
+ * `@<icon>` 命令の利用時に ID の重複の警告が出るのを抑制しました ([#1541])
25
+ * 不正なエンコーディングのファイルを受け取ったときに妥当なエラー表示をするようにしました ([#1544])
26
+ * IndexBuilder を導入しました。これまで図表等の番号の管理および参照はその都度対象ファイルを解析する方法でしたが、IndexBuilder はプロジェクト全体を走査し、以降の各ビルダのために番号を提供します。review-ext.rb でブロック命令やインライン命令を追加していた場合、IndexBuilder クラス (またはその基底クラスである Builder クラス) にも追加が必要です ([#1384], [#1552])
27
+ * ID やラベルに以下の文字または空白文字が含まれていると、TeX のコンパイルあるいは生成される EPUB においてエラーが発生するため、これらの文字が含まれているときには警告を出すようにしました ([#1393], [#1574])
28
+ ```
29
+ #%\{}[]~/$'"|*?&<>`
30
+ ```
31
+
32
+ ## ドキュメント
33
+ * format.ja.md と format.md のタイプミスを修正しました ([#1528])
34
+ * makeindex.ja.md のサンプル結果の誤りを修正しました ([#1584])
35
+
36
+ ## その他
37
+ * Rubocop 0.92.0 に対応しました ([#1511], [#1569], [#1573])
38
+ * `Re:VIEW::Compiler` 内の `@strategy` は実際はビルダなので、`@builder` という名前に変更しました ([#1520])
39
+ * Rubocop-performance 1.7.1 に対応しました ([#1521])
40
+ * syntax-book サンプルドキュメントの Gemfile を更新しました ([#1522])
41
+ * ImageMagick における GhostScript の呼び出しが非推奨となったため、テストを除去しました ([#1526])
42
+ * 一部のテストユニットの不要な標準エラー出力を抑制しました ([#1538])
43
+ * `Compilable` モジュールの代わりに、`Chapter` および `Part` のスーパークラスとなる `BookUnit` 抽象クラスを導入しました ([#1543])
44
+ * `ReVIEW::Book::Base.load` をやめ、`ReVIEW::Book::Base.load` または `ReVIEW::Book::Base.new` を使うようにしました。`ReVIEW::Book::Base.load` に `:config` オプションを加えました ([#1548], [#1563])
45
+ * 内部のパラメータの汎用構成のために `ReVIEW::Configure.create` コンストラクタを導入しました ([#1549])
46
+ * WebMaker: 使われていない `clean_mathdir` メソッドを削除しました ([#1550])
47
+ * catalog.yml の解析を `ReVIEW::Book::Base.new` の中で最初に実行するようにしました ([#1551])
48
+ * ファイルの書き出しで可能なところは `File.write` を使うようにしました ([#1560])
49
+ * Builder クラスの `builder_init` メソッドを削除し、`initialize` を使うようにしました ([#1564])
50
+
51
+ ## コントリビューターのみなさん
52
+ * [@snoozer05](https://github.com/snoozer05)
53
+
54
+ [#1384]: https://github.com/kmuto/review/pull/1384
55
+ [#1393]: https://github.com/kmuto/review/issues/1393
56
+ [#1397]: https://github.com/kmuto/review/issues/1397
57
+ [#1483]: https://github.com/kmuto/review/issues/1483
58
+ [#1497]: https://github.com/kmuto/review/pull/1497
59
+ [#1511]: https://github.com/kmuto/review/pull/1511
60
+ [#1517]: https://github.com/kmuto/review/issues/1517
61
+ [#1520]: https://github.com/kmuto/review/pull/1520
62
+ [#1521]: https://github.com/kmuto/review/pull/1521
63
+ [#1522]: https://github.com/kmuto/review/pull/1522
64
+ [#1523]: https://github.com/kmuto/review/pull/1523
65
+ [#1526]: https://github.com/kmuto/review/pull/1526
66
+ [#1527]: https://github.com/kmuto/review/pull/1527
67
+ [#1528]: https://github.com/kmuto/review/pull/1528
68
+ [#1529]: https://github.com/kmuto/review/issues/1529
69
+ [#1530]: https://github.com/kmuto/review/issues/1530
70
+ [#1533]: https://github.com/kmuto/review/issues/1533
71
+ [#1534]: https://github.com/kmuto/review/issues/1534
72
+ [#1536]: https://github.com/kmuto/review/pull/1536
73
+ [#1538]: https://github.com/kmuto/review/pull/1538
74
+ [#1541]: https://github.com/kmuto/review/pull/1541
75
+ [#1543]: https://github.com/kmuto/review/pull/1543
76
+ [#1544]: https://github.com/kmuto/review/issues/1544
77
+ [#1545]: https://github.com/kmuto/review/issues/1545
78
+ [#1548]: https://github.com/kmuto/review/pull/1548
79
+ [#1549]: https://github.com/kmuto/review/pull/1549
80
+ [#1550]: https://github.com/kmuto/review/pull/1550
81
+ [#1551]: https://github.com/kmuto/review/pull/1551
82
+ [#1552]: https://github.com/kmuto/review/pull/1552
83
+ [#1558]: https://github.com/kmuto/review/pull/1558
84
+ [#1559]: https://github.com/kmuto/review/issues/1559
85
+ [#1560]: https://github.com/kmuto/review/pull/1560
86
+ [#1562]: https://github.com/kmuto/review/pull/1562
87
+ [#1563]: https://github.com/kmuto/review/pull/1563
88
+ [#1564]: https://github.com/kmuto/review/pull/1564
89
+ [#1569]: https://github.com/kmuto/review/pull/1569
90
+ [#1572]: https://github.com/kmuto/review/pull/1572
91
+ [#1573]: https://github.com/kmuto/review/pull/1573
92
+ [#1574]: https://github.com/kmuto/review/issues/1574
93
+ [#1584]: https://github.com/kmuto/review/pull/1584
94
+
1
95
  # Version 4.2.0
2
96
  ## 新機能
3
97
  * 図・表・リスト・式のキャプションの位置を内容の上側・下側どちらにするかを指定する `caption_position` パラメータを追加しました。`caption_position` の下位パラメータとして `image`・`table`・`list`・`equation` のパラメータがあり、値として `top` (上側) または `bottom` (下側) を指定します。デフォルトは `image` のみ `bottom`、ほかは `top` です ([#1320])
data/NEWS.md CHANGED
@@ -1,3 +1,97 @@
1
+ # Version 5.0.0
2
+ ## New Features
3
+ * added `cover_fit_page` option to review-jsbook / review-jlreq classes. When `cover_fit_page=true` is specified in the `texdocumentclass` parameter, the cover image is scaled to paper size. Note: it is recommended that the images should be created at actual size ([#1534])
4
+ * allow minicolumn nesting. Now you can put a block instruction such as `//image` or itemized list in minicolumn (`//note`, `//memo`, `//tip`, `//info`, `//warning`, `//important`, `//caution`, `//notice`) ([#1558], [#1562])
5
+ * added single commands `//beginchild` and `//endchild` for nesting itemized/enumerate/description list. **EXPERIMENTAL FEATURE** ([#1497])
6
+
7
+ ## Breaking Changes
8
+ * In review-jlreq.cls, hiddenfolio is now implemented by jlreqtrimmarkssetup. It is slightly different from the previous version in position and display ([#1397])
9
+ * The default value of the `chapterlink` parameter is now true. Most links (chapter, section, image, table, list, equation, bibliography) in Web and EPUB are now hyperlinked. In TeX PDF, some links (chapter, section, biliography) are hyperlinked only when `media=ebook` ([#1529])
10
+
11
+ ## Bug Fixes
12
+ * PDFMaker: fixed a problem with multiple same-named image files with different extensions that would cause them to be misaligned ([#1483])
13
+ * PDFMaker: fixed a problem that cuased an error when the author name (`aut`) was empty ([#1517])
14
+ * PDFMaker: fixed a problem that caused an error if `//indepimage`'s image file didn't exist and ID contained characters to be TeX-escaped ([#1527])
15
+ * PDFMaker: fixed a problem with characters to be TeX-escaped in the `bookttilename` and `aut` parameters causing incorrect PDF metainformation ([#1533])
16
+ * WebMaker: fixed to avoid nil in HTML template ([#1545])
17
+ * PDFMaker: fixed a problem when hiding chapter numbers ([#1559])
18
+ * MarkdownBuilder: paragraphs in minicolumn should be separated with a blank line instead of a newline ([#1572])
19
+
20
+ ## Enhancements
21
+ * fix warning message to output more detailed information of item ([#1523])
22
+ * PDFMaker: make `@<hd>` op a hyperlink (when `media=ebook`) ([#1530])
23
+ * use `cgi/escape` first and `cgi/util` as fallback. remove orignal implementation in `ReVIEW::HTMLUtils.escape()` ([#1536])
24
+ * suppress warning with same `@<icon>` ([#1541])
25
+ * fix an error handling when a badly encoded file is received ([#1544])
26
+ * introduce IndexBuilder. IndexBuilder first scans the entire project files and provides indexes for each builder ([#1384], [#1552])
27
+ * IDs and labels containing below characters or space characters are now warned ([#1393], [#1574])
28
+ ```
29
+ #%\{}[]~/$'"|*?&<>`
30
+ ```
31
+
32
+ ## Docs
33
+ * fix a typo in format.ja.md and format.md ([#1528])
34
+ * fix incorrect example in makeindex.ja.md ([#1584])
35
+
36
+ ## Others
37
+ * refactor code with Rubocop 0.92.0 ([#1511], [#1569], [#1573])
38
+ * rename `@strategy` to `@builder` in `Re:VIEW::Compiler` ([#1520])
39
+ * refactor code with Rubocop-performance 1.7.1 ([#1521])
40
+ * update Gemfile in syntax-book ([#1522])
41
+ * calling GhostScript in ImageMagick has been deprecated, so the test has been removed ([#1526])
42
+ * unnecessary stderr output on some test units has been suppressed ([#1538])
43
+ * add `BookUnit` class instead of `Compilable` module, the super class of `Chapter` and `Part` ([#1543])
44
+ * `ReVIEW::Book.load` is deprecated, use `ReVIEW::Book::Base.load` or `ReVIEW::Book::Base.new` add new option `:config` for `ReVIEW::Book::Base.load` ([#1548], [#1563])
45
+ * added `ReVIEW::Configure.create` ([#1549])
46
+ * WebMaker: removed unused `clean_mathdir` ([#1550])
47
+ * add `Base#parse_catalog_file()` and use it in `ReVIEW::Book::Base.new()`. `Base#catalog` is just getter now ([#1551])
48
+ * use `File.write` when it can be used ([#1560])
49
+ * remove `Builder#builder_init()` ([#1564])
50
+
51
+ ## Contributors
52
+ * [@snoozer05](https://github.com/snoozer05)
53
+
54
+ [#1384]: https://github.com/kmuto/review/pull/1384
55
+ [#1393]: https://github.com/kmuto/review/issues/1393
56
+ [#1397]: https://github.com/kmuto/review/issues/1397
57
+ [#1483]: https://github.com/kmuto/review/issues/1483
58
+ [#1497]: https://github.com/kmuto/review/pull/1497
59
+ [#1511]: https://github.com/kmuto/review/pull/1511
60
+ [#1517]: https://github.com/kmuto/review/issues/1517
61
+ [#1520]: https://github.com/kmuto/review/pull/1520
62
+ [#1521]: https://github.com/kmuto/review/pull/1521
63
+ [#1522]: https://github.com/kmuto/review/pull/1522
64
+ [#1523]: https://github.com/kmuto/review/pull/1523
65
+ [#1526]: https://github.com/kmuto/review/pull/1526
66
+ [#1527]: https://github.com/kmuto/review/pull/1527
67
+ [#1528]: https://github.com/kmuto/review/pull/1528
68
+ [#1529]: https://github.com/kmuto/review/issues/1529
69
+ [#1530]: https://github.com/kmuto/review/issues/1530
70
+ [#1533]: https://github.com/kmuto/review/issues/1533
71
+ [#1534]: https://github.com/kmuto/review/issues/1534
72
+ [#1536]: https://github.com/kmuto/review/pull/1536
73
+ [#1538]: https://github.com/kmuto/review/pull/1538
74
+ [#1541]: https://github.com/kmuto/review/pull/1541
75
+ [#1543]: https://github.com/kmuto/review/pull/1543
76
+ [#1544]: https://github.com/kmuto/review/issues/1544
77
+ [#1545]: https://github.com/kmuto/review/issues/1545
78
+ [#1548]: https://github.com/kmuto/review/pull/1548
79
+ [#1549]: https://github.com/kmuto/review/pull/1549
80
+ [#1550]: https://github.com/kmuto/review/pull/1550
81
+ [#1551]: https://github.com/kmuto/review/pull/1551
82
+ [#1552]: https://github.com/kmuto/review/pull/1552
83
+ [#1558]: https://github.com/kmuto/review/pull/1558
84
+ [#1559]: https://github.com/kmuto/review/issues/1559
85
+ [#1560]: https://github.com/kmuto/review/pull/1560
86
+ [#1562]: https://github.com/kmuto/review/pull/1562
87
+ [#1563]: https://github.com/kmuto/review/pull/1563
88
+ [#1564]: https://github.com/kmuto/review/pull/1564
89
+ [#1569]: https://github.com/kmuto/review/pull/1569
90
+ [#1572]: https://github.com/kmuto/review/pull/1572
91
+ [#1573]: https://github.com/kmuto/review/pull/1573
92
+ [#1574]: https://github.com/kmuto/review/issues/1574
93
+ [#1584]: https://github.com/kmuto/review/pull/1584
94
+
1
95
  # Version 4.2.0
2
96
  ## New Features
3
97
  * introduce `caption_position` parameter to specify a caption position of image, table, list, and equation. `caption_position` has child parameters `image`, `table`, `list`, and `equation` and the value is `top` or `bottom` ([#1320])