review 3.2.0 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (282) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-tex.yml +31 -0
  3. data/.github/workflows/ruby-win.yml +45 -0
  4. data/.github/workflows/ruby.yml +27 -0
  5. data/.rubocop.yml +167 -42
  6. data/.travis.yml +1 -1
  7. data/Dockerfile +21 -5
  8. data/NEWS.ja.md +428 -1
  9. data/NEWS.md +429 -2
  10. data/README.md +11 -7
  11. data/Rakefile +7 -2
  12. data/appveyor.yml +0 -20
  13. data/bin/review +2 -4
  14. data/bin/review-catalog-converter +5 -5
  15. data/bin/review-check +13 -17
  16. data/bin/review-checkdep +3 -6
  17. data/bin/review-compile +13 -22
  18. data/bin/review-epub2html +1 -4
  19. data/bin/review-epubmaker +3 -4
  20. data/bin/review-idgxmlmaker +14 -0
  21. data/bin/review-index +5 -86
  22. data/bin/review-init +1 -4
  23. data/bin/review-pdfmaker +1 -3
  24. data/bin/review-preproc +11 -13
  25. data/bin/review-textmaker +1 -3
  26. data/bin/review-update +1 -4
  27. data/bin/review-validate +7 -7
  28. data/bin/review-vol +5 -82
  29. data/bin/review-webmaker +1 -3
  30. data/doc/config.yml.sample +67 -16
  31. data/doc/config.yml.sample-simple +4 -3
  32. data/doc/format.ja.md +133 -21
  33. data/doc/format.md +135 -34
  34. data/doc/makeindex.ja.md +2 -2
  35. data/doc/pdfmaker.ja.md +43 -1
  36. data/doc/pdfmaker.md +42 -1
  37. data/doc/quickstart.ja.md +55 -25
  38. data/doc/quickstart.md +47 -17
  39. data/lib/review.rb +1 -1
  40. data/lib/review/book.rb +2 -2
  41. data/lib/review/book/base.rb +89 -90
  42. data/lib/review/book/bib.rb +21 -0
  43. data/lib/review/book/book_unit.rb +158 -0
  44. data/lib/review/book/chapter.rb +51 -29
  45. data/lib/review/book/index.rb +42 -248
  46. data/lib/review/book/index/item.rb +46 -0
  47. data/lib/review/book/page_metric.rb +7 -7
  48. data/lib/review/book/part.rb +45 -10
  49. data/lib/review/book/volume.rb +5 -5
  50. data/lib/review/builder.rb +171 -54
  51. data/lib/review/call_hook.rb +20 -0
  52. data/lib/review/catalog.rb +15 -17
  53. data/lib/review/compiler.rb +240 -102
  54. data/lib/review/configure.rb +101 -12
  55. data/lib/review/converter.rb +1 -1
  56. data/lib/review/epub2html.rb +6 -1
  57. data/lib/review/epubmaker.rb +120 -118
  58. data/lib/review/epubmaker/content.rb +113 -0
  59. data/lib/review/epubmaker/epubcommon.rb +372 -0
  60. data/lib/review/epubmaker/epubv2.rb +178 -0
  61. data/lib/review/epubmaker/epubv3.rb +231 -0
  62. data/lib/review/epubmaker/producer.rb +168 -0
  63. data/lib/review/epubmaker/reviewheaderlistener.rb +12 -2
  64. data/lib/review/epubmaker/zip_exporter.rb +84 -0
  65. data/lib/review/exception.rb +6 -0
  66. data/lib/review/extentions/string.rb +0 -4
  67. data/lib/review/htmlbuilder.rb +147 -149
  68. data/lib/review/htmlutils.rb +10 -14
  69. data/lib/review/i18n.rb +4 -3
  70. data/lib/review/idgxmlbuilder.rb +229 -103
  71. data/lib/review/idgxmlmaker.rb +188 -0
  72. data/lib/review/img_math.rb +245 -0
  73. data/lib/review/index_builder.rb +654 -0
  74. data/lib/review/init-web/finish.html +10 -0
  75. data/lib/review/init-web/index.html +190 -0
  76. data/lib/review/init-web/review-layout-design.js +691 -0
  77. data/lib/review/init.rb +124 -41
  78. data/lib/review/latexbox.rb +58 -0
  79. data/lib/review/latexbuilder.rb +249 -97
  80. data/lib/review/latexutils.rb +9 -1
  81. data/lib/review/lineinput.rb +113 -3
  82. data/lib/review/logger.rb +43 -8
  83. data/lib/review/makerhelper.rb +13 -186
  84. data/lib/review/markdownbuilder.rb +75 -39
  85. data/lib/review/md2inaobuilder.rb +3 -5
  86. data/lib/review/pdfmaker.rb +88 -83
  87. data/lib/review/plaintextbuilder.rb +158 -83
  88. data/lib/review/preprocessor.rb +30 -24
  89. data/lib/review/rstbuilder.rb +58 -39
  90. data/lib/review/sec_counter.rb +14 -0
  91. data/lib/review/template.rb +6 -0
  92. data/lib/review/textmaker.rb +29 -17
  93. data/lib/review/textutils.rb +68 -2
  94. data/lib/review/tocprinter.rb +242 -97
  95. data/lib/review/topbuilder.rb +147 -61
  96. data/lib/review/update.rb +27 -28
  97. data/lib/review/version.rb +1 -1
  98. data/lib/review/volumeprinter.rb +97 -0
  99. data/lib/review/webmaker.rb +36 -35
  100. data/lib/review/webtocprinter.rb +39 -35
  101. data/lib/review/yamlloader.rb +4 -0
  102. data/review.gemspec +8 -5
  103. data/samples/sample-book/README.md +7 -2
  104. data/samples/sample-book/src/.gitignore +154 -0
  105. data/samples/sample-book/src/config-ebook.yml +4 -0
  106. data/samples/sample-book/src/config-epub2.yml +1 -1
  107. data/samples/sample-book/src/config-jlreq-ebook.yml +4 -0
  108. data/samples/sample-book/src/config-jlreq.yml +6 -0
  109. data/samples/sample-book/src/config.yml +3 -3
  110. data/samples/sample-book/src/lib/tasks/review.rake +45 -14
  111. data/samples/sample-book/src/lib/tasks/z01_copy_sty.rake +14 -8
  112. data/samples/syntax-book/Gemfile +1 -1
  113. data/samples/syntax-book/ch01.re +3 -1
  114. data/samples/syntax-book/ch02.re +28 -21
  115. data/samples/syntax-book/ch03.re +4 -7
  116. data/samples/syntax-book/config-jlreq-lualatex.yml +4 -0
  117. data/samples/syntax-book/config-jlreq.yml +5 -0
  118. data/samples/syntax-book/config-print.yml +3 -0
  119. data/samples/syntax-book/config.yml +1 -1
  120. data/samples/syntax-book/images/img3-2.png +0 -0
  121. data/samples/syntax-book/lib/tasks/review.rake +30 -15
  122. data/samples/syntax-book/lib/tasks/z01_copy_sty.rake +14 -8
  123. data/templates/html/_colophon.html.erb +23 -0
  124. data/templates/html/_colophon_history.html.erb +9 -0
  125. data/templates/html/_cover.html.erb +10 -0
  126. data/templates/html/_part_body.html.erb +6 -0
  127. data/templates/html/_titlepage.html.erb +20 -0
  128. data/templates/html/layout-html5.html.erb +6 -0
  129. data/templates/html/layout-xhtml1.html.erb +6 -0
  130. data/templates/latex/config.erb +45 -27
  131. data/templates/latex/layout.tex.erb +1 -0
  132. data/templates/latex/review-jlreq/README.md +3 -1
  133. data/templates/latex/review-jlreq/review-base.sty +124 -37
  134. data/templates/latex/review-jlreq/review-jlreq.cls +29 -22
  135. data/templates/latex/review-jlreq/review-style.sty +9 -1
  136. data/templates/latex/review-jlreq/review-tcbox.sty +348 -0
  137. data/templates/latex/review-jlreq/reviewmacro.sty +5 -0
  138. data/templates/latex/review-jsbook/README.md +46 -5
  139. data/templates/latex/review-jsbook/review-base.sty +111 -30
  140. data/templates/latex/review-jsbook/review-jsbook.cls +16 -2
  141. data/templates/latex/review-jsbook/review-style.sty +10 -2
  142. data/templates/latex/review-jsbook/review-tcbox.sty +348 -0
  143. data/templates/latex/review-jsbook/reviewmacro.sty +5 -0
  144. data/templates/opf/epubv2.opf.erb +7 -7
  145. data/templates/opf/epubv3.opf.erb +7 -7
  146. data/templates/opf/opf_manifest_epubv2.opf.erb +10 -0
  147. data/templates/opf/opf_manifest_epubv3.opf.erb +10 -0
  148. data/templates/opf/opf_metainfo_epubv2.opf.erb +17 -0
  149. data/templates/opf/opf_metainfo_epubv3.opf.erb +49 -0
  150. data/templates/opf/opf_tocx_epubv2.opf.erb +9 -0
  151. data/templates/opf/opf_tocx_epubv3.opf.erb +17 -0
  152. data/templates/web/html/layout-html5.html.erb +9 -8
  153. data/templates/web/html/layout-xhtml1.html.erb +6 -0
  154. data/test/assets/header_listener.html +35 -0
  155. data/test/assets/img_math/img1.png +0 -0
  156. data/test/assets/img_math/img2.png +0 -0
  157. data/test/assets/img_math/img3.png +0 -0
  158. data/test/assets/syntax_book_index_detail.txt +58 -0
  159. data/test/assets/test_template.tex +20 -9
  160. data/test/assets/test_template_backmatter.tex +20 -9
  161. data/test/book_test_helper.rb +11 -5
  162. data/test/run_test.rb +1 -1
  163. data/test/test_book.rb +123 -78
  164. data/test/test_book_chapter.rb +99 -56
  165. data/test/test_book_part.rb +3 -3
  166. data/test/test_builder.rb +24 -15
  167. data/test/test_catalog.rb +19 -42
  168. data/test/test_catalog_converter_cmd.rb +1 -1
  169. data/test/test_converter.rb +1 -0
  170. data/test/test_epub3maker.rb +170 -126
  171. data/test/test_epubmaker.rb +249 -129
  172. data/test/test_epubmaker_cmd.rb +16 -9
  173. data/test/test_helper.rb +23 -11
  174. data/test/test_htmlbuilder.rb +1083 -114
  175. data/test/test_htmlutils.rb +0 -12
  176. data/test/test_i18n.rb +37 -37
  177. data/test/test_idgxmlbuilder.rb +627 -27
  178. data/test/test_idgxmlmaker_cmd.rb +50 -0
  179. data/test/test_image_finder.rb +52 -70
  180. data/test/test_img_math.rb +111 -0
  181. data/test/test_index.rb +62 -52
  182. data/test/test_indexbuilder.rb +52 -0
  183. data/test/test_latexbuilder.rb +1189 -59
  184. data/test/test_latexbuilder_v2.rb +74 -34
  185. data/test/test_lineinput.rb +20 -93
  186. data/test/test_logger.rb +17 -4
  187. data/test/test_makerhelper.rb +2 -14
  188. data/test/test_markdownbuilder.rb +77 -4
  189. data/test/test_md2inaobuilder.rb +12 -2
  190. data/test/test_pdfmaker.rb +101 -12
  191. data/test/test_pdfmaker_cmd.rb +102 -8
  192. data/test/test_plaintextbuilder.rb +562 -31
  193. data/test/test_review_ext.rb +2 -1
  194. data/test/test_reviewheaderlistener.rb +49 -0
  195. data/test/test_rstbuilder.rb +58 -5
  196. data/test/test_sec_counter.rb +156 -0
  197. data/test/test_template.rb +12 -2
  198. data/test/test_textmaker_cmd.rb +58 -0
  199. data/test/test_textutils.rb +109 -2
  200. data/test/test_tocprinter.rb +46 -0
  201. data/test/test_topbuilder.rb +400 -17
  202. data/test/test_update.rb +53 -44
  203. data/test/test_webtocprinter.rb +75 -43
  204. data/test/test_yamlloader.rb +13 -0
  205. data/test/test_zip_exporter.rb +5 -6
  206. data/vendor/gentombow/LICENSE +1 -1
  207. data/vendor/gentombow/Makefile +0 -1
  208. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  209. data/vendor/gentombow/bounddvi-en.tex +1 -0
  210. data/vendor/gentombow/bounddvi.pdf +0 -0
  211. data/vendor/gentombow/bounddvi.sty +30 -7
  212. data/vendor/gentombow/bounddvi.tex +1 -0
  213. data/vendor/gentombow/create_archive.sh +1 -0
  214. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  215. data/vendor/gentombow/gentombow-ja.tex +9 -0
  216. data/vendor/gentombow/gentombow.pdf +0 -0
  217. data/vendor/gentombow/gentombow.sty +32 -10
  218. data/vendor/gentombow/gentombow.tex +8 -0
  219. data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
  220. data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
  221. data/vendor/jsclasses/LICENSE +1 -1
  222. data/vendor/jsclasses/Makefile +3 -2
  223. data/vendor/jsclasses/create_archive.sh +5 -5
  224. data/vendor/jsclasses/jis/Makefile +3 -2
  225. data/vendor/jsclasses/jis/jsarticle.cls +74 -31
  226. data/vendor/jsclasses/jis/jsbook.cls +74 -31
  227. data/vendor/jsclasses/jis/jsclasses.dtx +176 -36
  228. data/vendor/jsclasses/jis/jsclasses.ins +15 -5
  229. data/vendor/jsclasses/jis/jslogo.dtx +4 -4
  230. data/vendor/jsclasses/jis/jslogo.ins +9 -0
  231. data/vendor/jsclasses/jis/jslogo.sty +4 -16
  232. data/vendor/jsclasses/jis/jspf.cls +73 -30
  233. data/vendor/jsclasses/jis/jsreport.cls +74 -31
  234. data/vendor/jsclasses/jis/jsverb.ins +9 -0
  235. data/vendor/jsclasses/jis/jsverb.sty +1 -13
  236. data/vendor/jsclasses/jis/kiyou.cls +74 -31
  237. data/vendor/jsclasses/jis/minijs.sty +65 -22
  238. data/vendor/jsclasses/jis/okumacro.dtx +4 -5
  239. data/vendor/jsclasses/jis/okumacro.ins +9 -0
  240. data/vendor/jsclasses/jis/okumacro.sty +4 -17
  241. data/vendor/jsclasses/jis/okuverb.ins +9 -0
  242. data/vendor/jsclasses/jis/okuverb.sty +1 -13
  243. data/vendor/jsclasses/jis/winjis.sty +23 -19
  244. data/vendor/jsclasses/jsarticle.cls +74 -31
  245. data/vendor/jsclasses/jsbook.cls +74 -31
  246. data/vendor/jsclasses/jsclasses.dtx +176 -36
  247. data/vendor/jsclasses/jsclasses.ins +15 -5
  248. data/vendor/jsclasses/jsclasses.pdf +0 -0
  249. data/vendor/jsclasses/jslogo.dtx +4 -4
  250. data/vendor/jsclasses/jslogo.ins +9 -0
  251. data/vendor/jsclasses/jslogo.pdf +0 -0
  252. data/vendor/jsclasses/jslogo.sty +4 -16
  253. data/vendor/jsclasses/jspf.cls +73 -30
  254. data/vendor/jsclasses/jsreport.cls +74 -31
  255. data/vendor/jsclasses/jsverb.ins +9 -0
  256. data/vendor/jsclasses/jsverb.pdf +0 -0
  257. data/vendor/jsclasses/jsverb.sty +1 -13
  258. data/vendor/jsclasses/kiyou.cls +74 -31
  259. data/vendor/jsclasses/minijs.sty +68 -22
  260. data/vendor/jsclasses/okumacro.dtx +4 -5
  261. data/vendor/jsclasses/okumacro.ins +9 -0
  262. data/vendor/jsclasses/okumacro.pdf +0 -0
  263. data/vendor/jsclasses/okumacro.sty +4 -17
  264. data/vendor/jsclasses/okuverb.ins +9 -0
  265. data/vendor/jsclasses/okuverb.pdf +0 -0
  266. data/vendor/jsclasses/okuverb.sty +1 -13
  267. data/vendor/jsclasses/tests/relfont.tex +10 -0
  268. data/vendor/jsclasses/winjis.sty +23 -19
  269. metadata +136 -23
  270. data/.rubocop_todo.yml +0 -7
  271. data/lib/epubmaker.rb +0 -23
  272. data/lib/epubmaker/content.rb +0 -110
  273. data/lib/epubmaker/epubcommon.rb +0 -441
  274. data/lib/epubmaker/epubv2.rb +0 -143
  275. data/lib/epubmaker/epubv3.rb +0 -233
  276. data/lib/epubmaker/producer.rb +0 -375
  277. data/lib/epubmaker/zip_exporter.rb +0 -81
  278. data/lib/lineinput.rb +0 -155
  279. data/lib/review/book/compilable.rb +0 -173
  280. data/lib/review/tocparser.rb +0 -271
  281. data/samples/syntax-book/review-ext.rb +0 -14
  282. data/test/test_tocparser.rb +0 -25
data/.travis.yml CHANGED
@@ -16,7 +16,7 @@ addons:
16
16
 
17
17
  before_install:
18
18
  - |-
19
- gem update --system
19
+ ## gem update --system
20
20
  gem install bundler
21
21
  gem install epubcheck-ruby
22
22
 
data/Dockerfile CHANGED
@@ -9,13 +9,29 @@
9
9
  #
10
10
  # cf. https://github.com/vvakame/docker-review/blob/master/Dockerfile
11
11
 
12
- FROM debian:sid
12
+ FROM debian:buster
13
13
  MAINTAINER takahashim
14
14
 
15
- RUN apt-get update \
16
- && apt-get install -y --no-install-recommends git-core ruby locales zip \
17
- && apt-get install -y --no-install-recommends texlive-lang-cjk texlive-lang-japanese texlive-fonts-recommended texlive-latex-extra ghostscript \
18
- && rm -rf /var/lib/apt/lists/*
15
+ RUN apt-get update && \
16
+ apt-get install -y --no-install-recommends \
17
+ locales git-core curl ca-certificates && \
18
+ apt-get clean && \
19
+ rm -rf /var/lib/apt/lists/*
20
+ RUN echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
21
+ RUN locale-gen en_US.UTF-8 && update-locale en_US.UTF-8
22
+
23
+ RUN apt-get update && \
24
+ apt-get install -y --no-install-recommends \
25
+ texlive-lang-japanese texlive-fonts-recommended texlive-latex-extra lmodern fonts-lmodern cm-super tex-gyre fonts-texgyre texlive-pictures texlive-plain-generic \
26
+ ghostscript gsfonts \
27
+ zip ruby-zip \
28
+ ruby-nokogiri mecab ruby-mecab mecab-ipadic-utf8 poppler-data \
29
+ mecab-jumandic- mecab-jumandic-utf8- \
30
+ texlive-extra-utils poppler-utils && \
31
+ apt-get clean && \
32
+ rm -rf /var/lib/apt/lists/*
33
+ RUN kanji-config-updmap-sys ipaex
34
+
19
35
  RUN gem install review rake bundler --no-rdoc --no-ri
20
36
 
21
37
  VOLUME ["/work"]
data/NEWS.ja.md CHANGED
@@ -1,6 +1,433 @@
1
- # Version 3.2.0
1
+ # Version 5.1.0
2
+ ## 新機能
3
+ * CSS 組版ソフトウェア [Vivliostyle-CLI](https://github.com/vivliostyle/vivliostyle-cli) を呼び出す Rake ルールを追加しました。Vivliostyle-CLI をインストールした環境において、`rake vivliostyle:build` または `rake vivliostyle` で PDF を作成、`rake vivliostyle:preview` でブラウザのプレビューが開きます ([#1663])
4
+ * PDFMaker: `config.yml` に `boxsetting` パラメータを新設し、column・note・memo・tip・info・warning・important・caution・notice の囲み飾りを事前定義のものや独自に作成したものから選択およびカスタマイズできるようにしました ([#1637])
5
+ * 挿入箇所を示す `@<ins>`、削除箇所を示す `@<del>` の2つのインライン命令を追加しました ([#1630])
6
+ * EPUBMaker, WebMaker: 数式表現手法として MathJax をサポートし、数式表現手法を `math_format` パラメータで選択するようにしました ([#1587], [#1614])
7
+
8
+ ## 非互換の変更
9
+ * EPUBMaker: `urnid` パラメータのデフォルト値のプレフィクスを、`urn:uid` から `urn:uuid` に変更しました ([#1658])
10
+ * PDFMaker: 長い脚注がページ分断されないようにしました ([#1607])
11
+
12
+ ## バグ修正
13
+ * `contentdir` を設定しているときに WebMaker, review-vol, review-index がエラーになるのを修正しました ([#1633])
14
+ * WebMaker: `images/html` 図版フォルダが見つけられないのを修正しました ([#1623])
15
+ * PDFMaker: 用語リストの見出しで chapterlink がおかしな結果になるのを修正しました ([#1619])
16
+ * PDFMaker: 索引に `{`, `}`, `|` が含まれているときにエラーや奇妙な文字に変換されるのを修正しました ([#1611])
17
+ * review-vol: 不正な見出しがあったときに妥当なエラーメッセージを出力するようにしました ([#1604])
18
+ * PDFMaker: `after_makeindex` フックを LaTeX コンパイル後ではなく `mendex` 実行後に実行するように修正しました ([#1605])
19
+ * PDFMaker: `//image` のキャプションが空だったときに内部エラーではなく図番号が出力されるように修正しました ([#1666])
20
+ * review-vol, review-index が不正なファイルを受け取ったときのエラー処理を修正しました ([#1671])
21
+ * EPUBMaker: author などの静的ファイルを指示したときに、ファイルが存在しないと内部エラーを起こしていたのを修正しました ([#1670])
22
+
23
+ ## 機能強化
24
+ * tty-loger gem パッケージがインストールされている場合、Re:VIEW の各 Maker コマンドの進行状態をアイコンおよびカラーで示すようにしました ([#1660])
25
+ * PDFMaker: クラスファイルで `\RequirePackage{plautopatch}` を最初に評価するようにしました ([#1644])
26
+ * MARKDOWNBuilder: `@<hd>` をサポートしました ([#1629])
27
+ * Re:VIEW ドキュメントファイルに不正なエスケープシーケンス文字が含まれているときにエラーを出すようにしました ([#1596], [#1602])
28
+ * `=` の数が6を超える見出し扱いの行があるときにエラーを出すようにしました ([#1591])
29
+
30
+ ## ドキュメント
31
+ * 画像探索の際に各 Maker が参照するサブフォルダ名について記載しました ([#1626])
32
+
33
+ ## その他
34
+ * EPUBMaker: EPUB ライブラリ一式を `lib/epubmaker` から `lib/review/epubmaker` に移動し、リファクタリングしました ([#1575], [#1617], [#1635], [#1640], [#1641], [#1650], [#1653], [#1655])
35
+ * EPUBMaker: テストを追加しました ([#1656])
36
+ * PDFMaker: いくつかの処理をリファクタリングしました ([#1664])
37
+ * 数式画像生成処理を `ReVIEW::ImgMath` クラスにまとめました ([#1642], [#1649], [#1659], [#1662])
38
+ * IDGXMLMaker: いくつかの処理をリファクタリングしました ([#1654])
39
+ * MakerHelper: いくつかの処理をリファクタリングしました ([#1652])
40
+ * テンプレート処理を `ReVIEW::Template.generate` メソッドに統一しました ([#1648])
41
+ * GitHub Actions で TeX コンパイルのテストも行うようにしました ([#1643])
42
+ * Rubocop 1.10 に対応しました ([#1593], [#1598], [#1613], [#1636], [#1647], [#1669])
43
+ * サンプル syntax-book の重複 ID を修正しました ([#1646])
44
+ * ライブラリの相対パスの参照方法をリファクタリングしました ([#1639])
45
+ * `ReVIEW::LineInput` クラスをリファタクタリングしました ([#1638])
46
+ * Copyright を2021年に更新しました ([#1632])
47
+ * Ruby 3.0 でのテストを実行するようにしました ([#1622])
48
+ * 不安定な Pygments のテストを抑制しました ([#1610], [#1618])
49
+ * WebTocPrinter: テストのエラーを修正しました ([#1606])
50
+ * テストのターゲットを指定しやすいようにしました ([#1594])
51
+
52
+ [#1671]: https://github.com/kmuto/review/issues/1671
53
+ [#1670]: https://github.com/kmuto/review/pull/1670
54
+ [#1669]: https://github.com/kmuto/review/pull/1669
55
+ [#1666]: https://github.com/kmuto/review/issues/1666
56
+ [#1664]: https://github.com/kmuto/review/pull/1664
57
+ [#1663]: https://github.com/kmuto/review/pull/1663
58
+ [#1662]: https://github.com/kmuto/review/issues/1662
59
+ [#1660]: https://github.com/kmuto/review/issues/1660
60
+ [#1659]: https://github.com/kmuto/review/pull/1659
61
+ [#1658]: https://github.com/kmuto/review/pull/1658
62
+ [#1656]: https://github.com/kmuto/review/pull/1656
63
+ [#1655]: https://github.com/kmuto/review/pull/1655
64
+ [#1654]: https://github.com/kmuto/review/pull/1654
65
+ [#1653]: https://github.com/kmuto/review/pull/1653
66
+ [#1652]: https://github.com/kmuto/review/pull/1652
67
+ [#1650]: https://github.com/kmuto/review/pull/1650
68
+ [#1649]: https://github.com/kmuto/review/pull/1649
69
+ [#1648]: https://github.com/kmuto/review/pull/1648
70
+ [#1647]: https://github.com/kmuto/review/pull/1647
71
+ [#1646]: https://github.com/kmuto/review/pull/1646
72
+ [#1644]: https://github.com/kmuto/review/issues/1644
73
+ [#1643]: https://github.com/kmuto/review/pull/1643
74
+ [#1642]: https://github.com/kmuto/review/pull/1642
75
+ [#1641]: https://github.com/kmuto/review/pull/1641
76
+ [#1640]: https://github.com/kmuto/review/pull/1640
77
+ [#1639]: https://github.com/kmuto/review/pull/1639
78
+ [#1638]: https://github.com/kmuto/review/pull/1638
79
+ [#1637]: https://github.com/kmuto/review/pull/1637
80
+ [#1636]: https://github.com/kmuto/review/pull/1636
81
+ [#1635]: https://github.com/kmuto/review/pull/1635
82
+ [#1633]: https://github.com/kmuto/review/issues/1633
83
+ [#1632]: https://github.com/kmuto/review/issues/1632
84
+ [#1630]: https://github.com/kmuto/review/issues/1630
85
+ [#1629]: https://github.com/kmuto/review/pull/1629
86
+ [#1626]: https://github.com/kmuto/review/pull/1626
87
+ [#1623]: https://github.com/kmuto/review/issues/1623
88
+ [#1622]: https://github.com/kmuto/review/pull/1622
89
+ [#1619]: https://github.com/kmuto/review/issues/1619
90
+ [#1618]: https://github.com/kmuto/review/pull/1618
91
+ [#1617]: https://github.com/kmuto/review/pull/1617
92
+ [#1614]: https://github.com/kmuto/review/pull/1614
93
+ [#1613]: https://github.com/kmuto/review/pull/1613
94
+ [#1611]: https://github.com/kmuto/review/issues/1611
95
+ [#1610]: https://github.com/kmuto/review/pull/1610
96
+ [#1607]: https://github.com/kmuto/review/issues/1607
97
+ [#1606]: https://github.com/kmuto/review/issues/1606
98
+ [#1605]: https://github.com/kmuto/review/issues/1605
99
+ [#1604]: https://github.com/kmuto/review/issues/1604
100
+ [#1602]: https://github.com/kmuto/review/pull/1602
101
+ [#1598]: https://github.com/kmuto/review/pull/1598
102
+ [#1596]: https://github.com/kmuto/review/issues/1596
103
+ [#1594]: https://github.com/kmuto/review/pull/1594
104
+ [#1593]: https://github.com/kmuto/review/pull/1593
105
+ [#1591]: https://github.com/kmuto/review/issues/1591
106
+ [#1587]: https://github.com/kmuto/review/issues/1587
107
+ [#1575]: https://github.com/kmuto/review/issues/1575
108
+
109
+ # Version 5.0.0
110
+ ## 新機能
111
+ * review-jsbook / review-jlreq クラスに、`cover_fit_page` オプションを追加しました。`texdocumentclass` パラメータに `cover_fit_page=true` を付けると、画像サイズがどのようなものであっても仕上がりサイズに拡縮して表紙に貼り込みます。なお、制作において図版は実寸で作成することを推奨します ([#1534])
112
+ * 小さな囲み要素 (`//note`, `//memo`, `//tip`, `//info`, `//warning`, `//important`, `//caution`, `//notice`) の中で、`//image` などのブロック命令を含めたり、および箇条書きを入れたりできるようになりました。拡張で類似のことを利用したいときには、defminicolumn で定義します ([#1558], [#1562])
113
+ * 箇条書きの入れ子を指示する命令として `//beginchild`, `//endchild` という1行命令を追加しました。箇条書きの子にしたいものを `//beginchild` と `//endchild` で囲むと、前に位置する箇条書きの子要素になります。**この機能は実験的です。今後のバージョンで挙動を変えたり廃止したりする可能性があります** ([#1497])
114
+
115
+ ## 非互換の変更
116
+ * review-jlreq.cls における hiddenfolio の配置を、jlreqtrimmarkssetup を使って実装するように変更しました。以前のバージョンとは位置や表示に若干の違いがあります ([#1397])
117
+ * `chapterlink` パラメータのデフォルト値を true (有効) にしました。これが有効になっているときには、Web、EPUB での章・項の参照や、図表・リスト・式・参考文献の参照などがハイパーリンク化されます。TeX PDF においては `media=ebook` のときのみ、章・項・参考文献の参照がハイパーリンク化されます ([#1529])
118
+
119
+ ## バグ修正
120
+ * PDFMaker: 同名で拡張子違いの図版ファイルがあるときに、位置がずれる問題を修正しました。extractbb コマンドは明示的に呼び出されなくなります ([#1483])
121
+ * PDFMaker: 著者名 (`aut`) パラメータが空のときにエラーになる問題を修正しました ([#1517])
122
+ * PDFMaker: `//indepimage` 命令で画像が存在せず、かつ ID に TeX のエスケープ対象となる文字を含んでいるとエラーが起きる問題を修正しました ([#1527])
123
+ * PDFMaker: `bookttilename` や `aut` パラメータに TeX のエスケープ対象となる文字を入れると PDF メタ情報がおかしくなる問題を修正しました (`media=ebook` のときのみ) ([#1533])
124
+ * WebMaker: HTML テンプレートで nil が入ってしまうのを修正しました ([#1545])
125
+ * PDFMaker: 章番号を非表示にするとエラーで失敗するのを修正しました ([#1559])
126
+ * MarkdownBuilder: note 等の中の段落を改行区切りではなく空行区切りにしました ([#1572])
127
+
128
+ ## 機能強化
129
+ * 図表などのアイテムでエラーが発生したときの表示を詳細にしました ([#1523])
130
+ * PDFMaker: `@<hd>` 命令で展開した項・段について、`media=ebook` のときにはハイパーリンクになるようにしました ([#1530])
131
+ * HTMLBuilder および IDGXMLBuilder において、文字列のエスケープを従来の `cgi/util` の代わりにより高速な `cgi/escape` が利用できるときにはそれを利用するようにしました。また、`ReVIEW::HTMLUtils.escape` も書き換えられました ([#1536])
132
+ * `@<icon>` 命令の利用時に ID の重複の警告が出るのを抑制しました ([#1541])
133
+ * 不正なエンコーディングのファイルを受け取ったときに妥当なエラー表示をするようにしました ([#1544])
134
+ * IndexBuilder を導入しました。これまで図表等の番号の管理および参照はその都度対象ファイルを解析する方法でしたが、IndexBuilder はプロジェクト全体を走査し、以降の各ビルダのために番号を提供します。review-ext.rb でブロック命令やインライン命令を追加していた場合、IndexBuilder クラス (またはその基底クラスである Builder クラス) にも追加が必要です ([#1384], [#1552])
135
+ * ID やラベルに以下の文字または空白文字が含まれていると、TeX のコンパイルあるいは生成される EPUB においてエラーが発生するため、これらの文字が含まれているときには警告を出すようにしました ([#1393], [#1574])
136
+ ```
137
+ #%\{}[]~/$'"|*?&<>`
138
+ ```
139
+
140
+ ## ドキュメント
141
+ * format.ja.md と format.md のタイプミスを修正しました ([#1528])
142
+ * makeindex.ja.md のサンプル結果の誤りを修正しました ([#1584])
143
+
144
+ ## その他
145
+ * Rubocop 0.92.0 に対応しました ([#1511], [#1569], [#1573])
146
+ * `Re:VIEW::Compiler` 内の `@strategy` は実際はビルダなので、`@builder` という名前に変更しました ([#1520])
147
+ * Rubocop-performance 1.7.1 に対応しました ([#1521])
148
+ * syntax-book サンプルドキュメントの Gemfile を更新しました ([#1522])
149
+ * ImageMagick における GhostScript の呼び出しが非推奨となったため、テストを除去しました ([#1526])
150
+ * 一部のテストユニットの不要な標準エラー出力を抑制しました ([#1538])
151
+ * `Compilable` モジュールの代わりに、`Chapter` および `Part` のスーパークラスとなる `BookUnit` 抽象クラスを導入しました ([#1543])
152
+ * `ReVIEW::Book::Base.load` をやめ、`ReVIEW::Book::Base.load` または `ReVIEW::Book::Base.new` を使うようにしました。`ReVIEW::Book::Base.load` に `:config` オプションを加えました ([#1548], [#1563])
153
+ * 内部のパラメータの汎用構成のために `ReVIEW::Configure.create` コンストラクタを導入しました ([#1549])
154
+ * WebMaker: 使われていない `clean_mathdir` メソッドを削除しました ([#1550])
155
+ * catalog.yml の解析を `ReVIEW::Book::Base.new` の中で最初に実行するようにしました ([#1551])
156
+ * ファイルの書き出しで可能なところは `File.write` を使うようにしました ([#1560])
157
+ * Builder クラスの `builder_init` メソッドを削除し、`initialize` を使うようにしました ([#1564])
158
+
159
+ ## コントリビューターのみなさん
160
+ * [@snoozer05](https://github.com/snoozer05)
161
+
162
+ [#1384]: https://github.com/kmuto/review/pull/1384
163
+ [#1393]: https://github.com/kmuto/review/issues/1393
164
+ [#1397]: https://github.com/kmuto/review/issues/1397
165
+ [#1483]: https://github.com/kmuto/review/issues/1483
166
+ [#1497]: https://github.com/kmuto/review/pull/1497
167
+ [#1511]: https://github.com/kmuto/review/pull/1511
168
+ [#1517]: https://github.com/kmuto/review/issues/1517
169
+ [#1520]: https://github.com/kmuto/review/pull/1520
170
+ [#1521]: https://github.com/kmuto/review/pull/1521
171
+ [#1522]: https://github.com/kmuto/review/pull/1522
172
+ [#1523]: https://github.com/kmuto/review/pull/1523
173
+ [#1526]: https://github.com/kmuto/review/pull/1526
174
+ [#1527]: https://github.com/kmuto/review/pull/1527
175
+ [#1528]: https://github.com/kmuto/review/pull/1528
176
+ [#1529]: https://github.com/kmuto/review/issues/1529
177
+ [#1530]: https://github.com/kmuto/review/issues/1530
178
+ [#1533]: https://github.com/kmuto/review/issues/1533
179
+ [#1534]: https://github.com/kmuto/review/issues/1534
180
+ [#1536]: https://github.com/kmuto/review/pull/1536
181
+ [#1538]: https://github.com/kmuto/review/pull/1538
182
+ [#1541]: https://github.com/kmuto/review/pull/1541
183
+ [#1543]: https://github.com/kmuto/review/pull/1543
184
+ [#1544]: https://github.com/kmuto/review/issues/1544
185
+ [#1545]: https://github.com/kmuto/review/issues/1545
186
+ [#1548]: https://github.com/kmuto/review/pull/1548
187
+ [#1549]: https://github.com/kmuto/review/pull/1549
188
+ [#1550]: https://github.com/kmuto/review/pull/1550
189
+ [#1551]: https://github.com/kmuto/review/pull/1551
190
+ [#1552]: https://github.com/kmuto/review/pull/1552
191
+ [#1558]: https://github.com/kmuto/review/pull/1558
192
+ [#1559]: https://github.com/kmuto/review/issues/1559
193
+ [#1560]: https://github.com/kmuto/review/pull/1560
194
+ [#1562]: https://github.com/kmuto/review/pull/1562
195
+ [#1563]: https://github.com/kmuto/review/pull/1563
196
+ [#1564]: https://github.com/kmuto/review/pull/1564
197
+ [#1569]: https://github.com/kmuto/review/pull/1569
198
+ [#1572]: https://github.com/kmuto/review/pull/1572
199
+ [#1573]: https://github.com/kmuto/review/pull/1573
200
+ [#1574]: https://github.com/kmuto/review/issues/1574
201
+ [#1584]: https://github.com/kmuto/review/pull/1584
202
+
203
+ # Version 4.2.0
204
+ ## 新機能
205
+ * 図・表・リスト・式のキャプションの位置を内容の上側・下側どちらにするかを指定する `caption_position` パラメータを追加しました。`caption_position` の下位パラメータとして `image`・`table`・`list`・`equation` のパラメータがあり、値として `top` (上側) または `bottom` (下側) を指定します。デフォルトは `image` のみ `bottom`、ほかは `top` です ([#1320])
206
+
207
+ ## 非互換の変更
208
+ * review-vol を再構成しました。部の処理や見出し内のインライン命令の処理を正しました。表示形式をわかりやすい形に変更しました。部を指定したときに部のボリュームではなく、部ファイル単体のボリュームを返すようにしました。`-P`, `--directory` オプションは廃止しました ([#1485])
209
+ * review-index を再構成しました。オプション名を大幅に変更しています。行数・文字数は `-d` オプションを指定したときのみ表示するようにしました。また、ファイルの行数・文字数ではなく、PLAINTEXTBuilder を利用して、変換結果に近い行数・文字数を返すようにしました (review-vol よりも正確です)。特定の章は `-y` オプションで複数指定できるようにしました ([#1485])
210
+
211
+ ## バグ修正
212
+ * 重複する `@non_parsed_commands` 宣言を削除しました ([#1499])
213
+ * WebMaker、TextMaker で数式画像が作成されない問題を修正しました ([#1501])
214
+
215
+ ## 機能強化
216
+ * imgmath での数式画像の作成処理を最適化し、高速化しました ([#1488])
217
+ * デフォルト以外の固有の YAML 設定を PDFMaker に引き渡したいときのために、`layouts/config-local.tex.erb` ファイルが存在すればそれを評価・読み込みするようにしました ([#1505])
2
218
 
219
+ ## その他
220
+ * GitHub Actions を eregon/use-ruby-action から ruby/setup-ruby に切り替えました ([#1490])
221
+ * テストの際、samples フォルダ内にあるビルド成果物を無視するようにしました ([#1504])
222
+
223
+ [#1320]: https://github.com/kmuto/review/issues/1320
224
+ [#1485]: https://github.com/kmuto/review/issues/1485
225
+ [#1488]: https://github.com/kmuto/review/issues/1488
226
+ [#1490]: https://github.com/kmuto/review/pull/1490
227
+ [#1499]: https://github.com/kmuto/review/issues/1499
228
+ [#1501]: https://github.com/kmuto/review/pull/1501
229
+ [#1504]: https://github.com/kmuto/review/pull/1504
230
+ [#1505]: https://github.com/kmuto/review/issues/1505
231
+
232
+ # Version 4.1.0
3
233
  ## 新機能
234
+ * 表のセル区切りの文字を `table_row_separator` パラメータで変更できるようにしました。指定可能な値は tabs (1個以上のタブ、デフォルト)、singletab (1文字のタブ文字区切り)、spaces (1文字以上のスペースまたはタブ文字の区切り)、 verticalbar ("0個以上の空白 | 0個以上の空白" の区切り) です ([#1420])
235
+ * PDFMaker, EPUBMaker, WEBMaker, TEXTMaker, IDGXMLMaker: 全ファイルでなく変換対象ファイルを指定するための `-y`(または`--only`)オプションを追加しました ([#1428], [#1467])
236
+ * config.yml のコメント行を含めないようにする `--without-config-comment` オプションを review-init に追加しました ([#1453])
237
+ * PDFMaker: `pdfmaker` セクションに `use_original_image_size` パラメータを新設しました。デフォルトでは `//image`, `//indepimage`, `//imgtable` で挿入する画像において、metrics の指定がないときには版面の横幅に合うよう拡縮しますが、`use_original_image_size` パラメータを true に設定すると、拡縮なしで原寸のまま配置します ([#1461])
238
+
239
+ ## 非互換の変更
240
+ * PDFMaker: config.yml の `image_scale2width` パラメータを、直下から `pdfmaker` セクションの下に属するように変更しました ([#1462])
241
+
242
+ ## バグ修正
243
+ * PDFMaker: Re:VIEW 3 系のプロジェクトとの後方互換処理の誤りを修正しました ([#1414])
244
+ * PDFMaker: review-jlreq を LuaLaTeX でコンパイルしたときのエラーを修正しました ([#1416])
245
+ * PDFMaker: 索引が目次に含まれない問題を修正しました ([#1418])
246
+ * RSTBuilder: メソッドの引数の誤りで変換に失敗する問題を修正しました ([#1426])
247
+ * IDGXMLBuilder: 表に関する警告を出すときの誤りを修正しました ([#1427])
248
+ * IDGXMLMaker: フィルタプログラムにエラーが発生したときの処理の誤りを修正しました ([#1429])
249
+ * PDFMaker: `media=ebook` のときに、見出し等に `@<code>` や `@<tt>` のようなコード書体の命令を使うとビルドに失敗する問題を修正しました ([#1432], [#1465])
250
+ * PDFMaker: MeCab がインストールされていないときにエラーになるのを警告に変更しました ([#1445])
251
+ * IDGXMLBuilder: `//imgtable` が正しく動作しなかったのを修正しました ([#1448])
252
+ * PDFMaker: 索引が1つも登録されていない状態で makeindex を有効にするとエラーになるのを修正しました ([#1467])
253
+ * PDFMaker: 説明箇条書き (`:`) の見出しに脚注を入れると消えてしまうのを修正しました ([#1476])
254
+ * review-index: `@<w>` が見出しに使われているときにエラーになるのを修正しました ([#1484])
255
+
256
+ ## 機能強化
257
+ * PDFMaker: 問題報告の解析に役立つよう、提供する cls、sty ファイルについてバージョンを付けるようにしました ([#1163])
258
+ * Dockerfile を更新しました ([#1412])
259
+ * IDGXMLMaker: フィルタプログラムの標準エラー出力を警告扱いで出力するようにしました ([#1443])
260
+ * .gitignore ファイルに 〜-idgxml フォルダ を追加しました ([#1448])
261
+ * `//source` 命令は全ビルダでオプションを省略できるようになりました ([#1447])
262
+ * Ruby 2.7 をテスト対象に加えました ([#1468])
263
+ * `word_files` パラメータは配列で複数の単語 CSV ファイルを受け付けるようになりました ([#1469])
264
+ * EPUBMaker: 見出しが1つもない .re ファイルについて警告を出すようにしました。EPUB においてはファイル内に見出しが必ず1つは必要です。見出しを入れたくないときには、`=[notoc]` (目次に入れない) や `=[nodisp]` (目次に入れず表示もしない) を使用してください ([#1474])
265
+
266
+ ## ドキュメント
267
+ * 奥付に関係する `contact` (連絡先)および `colophon_order` (項目の掲載順序)についてのドキュメントを設定ファイルサンプル `config.yml.sample` に追加しました ([#1425])
268
+ * quickstart.ja.md, quickstart.md を Re:VIEW 4 の内容に更新しました ([#1442])
269
+ * サンプル syntax-book を更新しました ([#1448], [#1449])
270
+ * README.md を更新しました ([#1455], [#1458])
271
+ * 図版のビルダ固有オプション `::` の記法を format.ja.md, format.md に記載しました ([#1421])
272
+
273
+ ## その他
274
+ * Rubocop 0.78.0 の指摘に対応しました ([#1424], [#1430])
275
+ * LaTeX の実行環境がある場合、PDF のビルドテストをより厳密に実行するようにしました ([#1433])
276
+ * ビルドテストを Travis CI から GitHub Actions に切り替えました ([#1431], [#1436], [#1437])
277
+ * IDGXMLBuilder のコードリストの処理をリファクタリングしました ([#1438], [#1439])
278
+ * サンプル syntax-book に入っていた review-ext.rb はもう不要なので削除しました ([#1446])
279
+ * IDGXMLMaker, TextMaker のテストを追加しました ([#1448])
280
+ * Index 関連の処理をリファクタリングしました ([#1456], [#1457], [#1459])
281
+ * jsclasses パッケージを 2020/02/02 バージョンに更新しました ([#1478])
282
+
283
+ ## コントリビューターのみなさん
284
+ * [@turky](https://github.com/turky)
285
+
286
+ [#1163]: https://github.com/kmuto/review/issues/1163
287
+ [#1412]: https://github.com/kmuto/review/pull/1412
288
+ [#1414]: https://github.com/kmuto/review/issues/1414
289
+ [#1416]: https://github.com/kmuto/review/issues/1416
290
+ [#1418]: https://github.com/kmuto/review/issues/1418
291
+ [#1420]: https://github.com/kmuto/review/issues/1420
292
+ [#1421]: https://github.com/kmuto/review/issues/1421
293
+ [#1424]: https://github.com/kmuto/review/pull/1424
294
+ [#1425]: https://github.com/kmuto/review/pull/1425
295
+ [#1426]: https://github.com/kmuto/review/pull/1426
296
+ [#1427]: https://github.com/kmuto/review/pull/1427
297
+ [#1428]: https://github.com/kmuto/review/pull/1428
298
+ [#1429]: https://github.com/kmuto/review/pull/1429
299
+ [#1430]: https://github.com/kmuto/review/pull/1430
300
+ [#1431]: https://github.com/kmuto/review/pull/1431
301
+ [#1432]: https://github.com/kmuto/review/issues/1432
302
+ [#1433]: https://github.com/kmuto/review/pull/1433
303
+ [#1436]: https://github.com/kmuto/review/pull/1436
304
+ [#1437]: https://github.com/kmuto/review/issues/1437
305
+ [#1438]: https://github.com/kmuto/review/pull/1438
306
+ [#1439]: https://github.com/kmuto/review/pull/1439
307
+ [#1442]: https://github.com/kmuto/review/issues/1442
308
+ [#1443]: https://github.com/kmuto/review/pull/1443
309
+ [#1445]: https://github.com/kmuto/review/pull/1445
310
+ [#1446]: https://github.com/kmuto/review/pull/1446
311
+ [#1447]: https://github.com/kmuto/review/issues/1447
312
+ [#1448]: https://github.com/kmuto/review/pull/1448
313
+ [#1449]: https://github.com/kmuto/review/pull/1449
314
+ [#1453]: https://github.com/kmuto/review/pull/1453
315
+ [#1455]: https://github.com/kmuto/review/pull/1455
316
+ [#1456]: https://github.com/kmuto/review/pull/1456
317
+ [#1457]: https://github.com/kmuto/review/pull/1457
318
+ [#1458]: https://github.com/kmuto/review/pull/1458
319
+ [#1459]: https://github.com/kmuto/review/pull/1459
320
+ [#1461]: https://github.com/kmuto/review/issues/1461
321
+ [#1462]: https://github.com/kmuto/review/issues/1462
322
+ [#1465]: https://github.com/kmuto/review/pull/1465
323
+ [#1466]: https://github.com/kmuto/review/pull/1466
324
+ [#1467]: https://github.com/kmuto/review/pull/1467
325
+ [#1468]: https://github.com/kmuto/review/pull/1468
326
+ [#1469]: https://github.com/kmuto/review/issues/1469
327
+ [#1474]: https://github.com/kmuto/review/issues/1474
328
+ [#1476]: https://github.com/kmuto/review/issues/1476
329
+ [#1478]: https://github.com/kmuto/review/issues/1478
330
+ [#1484]: https://github.com/kmuto/review/pull/1484
331
+
332
+ # Version 4.0.0
333
+ ## 新機能
334
+ * IDGXML ファイルをまとめて生成する、review-idgxmlmaker を導入しました ([#1337])
335
+ * review-textmaker は、imgmath パラメータが有効になっている場合に、数式を画像化するようになりました ([#1338])
336
+ * review-init に `-w` オプションを指定することで、Web ブラウザ上で TeX のレイアウトができるウィザードモードを用意しました。なお、この機能は実験的であり、将来別のものに置き換える可能性もあります ([#1403])
337
+ * 実験的実装として、複数行から段落を結合する際に、前後の文字の種類に基づいて空白文字の挿入を行う機能を追加しました。この機能を利用するには、unicode-eaw gem をインストールした上で、config.yml に `join_lines_by_lang: true` を追加してください ([#1362])
338
+
339
+ ## 非互換の変更
340
+ * 通常の利用では使われることがないので、review-init の実行時に空の layouts フォルダを作成するのをやめました ([#1340])
341
+ * PDFMaker: `@<code>`、`@<tt>`、`@<tti>`、`@<ttb>` で空白文字が消えてしまう問題を修正しました。および利便性のために、文字列が版面からあふれるときに途中で改行するようにもしました ([#1348])
342
+ * `//texequation`、`//embed`、`//graph` はもともとインライン命令を許容しないので、内容のエスケープもしないようにしました。また、末尾に余計な空行が加わるのも防ぐようにしました ([#1371], [#1374])
343
+ * PDFMaker: コラム内での使用を考えて、表の配置のデフォルトを htp (指定位置→ページ上→独立ページの順に試行) から H (絶対に指定位置) にしました (review-style.sty の `\floatplacement{table}` の値) [#1385]
344
+ * PDFMaker: コードリスト内では和文欧文間の空きを 1/4 文字ではなく 0 にするようにしました ([#1401])
345
+ * config.yml の目次を制御する toc パラメータの値は、これまで null (false、目次は作らない) でしたが、一般的な利用方法を鑑みて、デフォルトを true (目次を作る) に切り替えました ([#1405])
346
+
347
+ ## バグ修正
348
+ * review-jlreq がタイプミスのために一部の jlreq.cls バージョンで正しく動作しないのを修正しました ([#1350])
349
+ * re ファイルが改行コード CR で記述されたときに不正な結果になるのを修正しました ([#1341])
350
+ * PDFMaker: review-jlreq において `//cmd` のブロックがページをまたいだときに文字色が黒になって見えなくなってしまうのを修正しました ([#1363])
351
+ * PDFMaker: `@<column>` で「コラム」ラベルが重複して出力されるのを修正しました ([#1367])
352
+ * PDFMaker: gentombow.sty と jsbook.cls は review-jsbook の場合のみコピーするようにしました ([#1381])
353
+ * PDFMaker: LuaLaTeX で review-jlreq を使ったときに壊れた PDFDocumentInformation ができる問題を修正しました ([#1392])
354
+ * PDFMaker: review-jlreq で偶数ページに隠しノンブルが入らなかったのを修正しました ([#1395])
355
+
356
+ ## 機能強化
357
+ * IDGXML ビルダで `@<em>` および `@<strong>` をサポートしました ([#1353])
358
+ * PDFMaker: コードブロックの各行の処理を `code_line`, `code_line_num` のメソッドに切り出しました ([#1368])
359
+ * PDFMaker: デフォルトのコンパイルオプションに `-halt-on-error` を追加しました。TeX のコンパイルエラーが発生したときに即終了することで問題が把握しやすくなります ([#1378])
360
+ * PDFMaker: コラム内に脚注 (`@<fn>`) があるときの挙動がコラムの実装手段によって異なり、番号がずれるなどの問題を起こすことがあるため、脚注の文章 (`//footnote`) はコラムの後に置くことを推奨します。コラム内に脚注文章が存在する場合は警告するようにしました ([#1379])
361
+ * YAML ファイルのエラーチェックを強化しました ([#1386])
362
+ * Logger での表示時に標準の progname を使うようにしました ([#1388])
363
+ * PDFMaker: 電子版の作成時に、表紙のページ番号を偶数とし、名前を「cover」にするようにしました ([#1402])
364
+ * PDFMaker: `generate_pdf` メソッドのリファクタリングを行いました ([#1404])
365
+ * プロジェクトの新規作成時に登録除外ファイル一覧の .gitignore ファイルを置くようにしました ([#1407])
366
+
367
+ ## ドキュメント
368
+ * sample-book の README.md を更新しました ([#1354])
369
+ * review-jsbook の README.md に jsbook.cls のオプションの説明を追加しました ([#1365])
370
+
371
+ ## その他
372
+ * メソッド引数のコーディングルールを統一しました ([#1360])
373
+ * `Catalog#{chaps,parts,predef,postdef,appendix}` は String ではなく Array を返すようにしました ([#1372])
374
+ * YAML ファイルの読み込みに `safe_load` を使うようにしました ([#1375])
375
+ * `table` メソッドをリファクタリングし、ビルダ個々の処理を簡略化しました ([#1356])
376
+ * `XXX_header` と `XXX_body` まわりをリファクタリングしました ([#1359])
377
+ * `Builder#highlight?` メソッドを HTMLBuilder 以外でも利用できるようにしました ([#1373])
378
+ * mkchap* と mkpart* まわりをリファクタリングしました ([#1383])
379
+ * Travis CI で rubygems を更新しないようにしました ([#1389])
380
+ * Index まわりをリファクタリングしました ([#1390])
381
+ * samples フォルダのサンプルドキュメントに review-jlreq のための設定を追加しました ([#1391])
382
+ * 用語リストは `:` の前にスペースを入れることを強く推奨するようにしました。スペースがない場合、警告されます ([#1398])
383
+
384
+ ## コントリビューターのみなさん
385
+ * [@m-shibata](https://github.com/m-shibata)
386
+ * [@masarakki](https://github.com/masarakki)
387
+
388
+ [#1337]: https://github.com/kmuto/review/issues/1337
389
+ [#1338]: https://github.com/kmuto/review/issues/1338
390
+ [#1340]: https://github.com/kmuto/review/issues/1340
391
+ [#1341]: https://github.com/kmuto/review/issues/1341
392
+ [#1348]: https://github.com/kmuto/review/issues/1348
393
+ [#1350]: https://github.com/kmuto/review/issues/1350
394
+ [#1353]: https://github.com/kmuto/review/pull/1353
395
+ [#1354]: https://github.com/kmuto/review/pull/1354
396
+ [#1356]: https://github.com/kmuto/review/pull/1356
397
+ [#1359]: https://github.com/kmuto/review/pull/1359
398
+ [#1360]: https://github.com/kmuto/review/pull/1360
399
+ [#1362]: https://github.com/kmuto/review/pull/1362
400
+ [#1363]: https://github.com/kmuto/review/issues/1363
401
+ [#1365]: https://github.com/kmuto/review/pull/1365
402
+ [#1367]: https://github.com/kmuto/review/issues/1367
403
+ [#1368]: https://github.com/kmuto/review/issues/1368
404
+ [#1371]: https://github.com/kmuto/review/pull/1371
405
+ [#1372]: https://github.com/kmuto/review/pull/1372
406
+ [#1373]: https://github.com/kmuto/review/pull/1373
407
+ [#1374]: https://github.com/kmuto/review/pull/1374
408
+ [#1375]: https://github.com/kmuto/review/pull/1375
409
+ [#1378]: https://github.com/kmuto/review/pull/1378
410
+ [#1379]: https://github.com/kmuto/review/issues/1379
411
+ [#1381]: https://github.com/kmuto/review/issues/1381
412
+ [#1383]: https://github.com/kmuto/review/issues/1383
413
+ [#1385]: https://github.com/kmuto/review/issues/1385
414
+ [#1386]: https://github.com/kmuto/review/pull/1386
415
+ [#1388]: https://github.com/kmuto/review/pull/1388
416
+ [#1389]: https://github.com/kmuto/review/pull/1389
417
+ [#1390]: https://github.com/kmuto/review/pull/1390
418
+ [#1391]: https://github.com/kmuto/review/pull/1391
419
+ [#1392]: https://github.com/kmuto/review/issues/1392
420
+ [#1395]: https://github.com/kmuto/review/issues/1395
421
+ [#1398]: https://github.com/kmuto/review/issues/1398
422
+ [#1401]: https://github.com/kmuto/review/pull/1401
423
+ [#1402]: https://github.com/kmuto/review/pull/1402
424
+ [#1403]: https://github.com/kmuto/review/pull/1403
425
+ [#1404]: https://github.com/kmuto/review/pull/1404
426
+ [#1405]: https://github.com/kmuto/review/pull/1405
427
+ [#1407]: https://github.com/kmuto/review/pull/1407
428
+
429
+ # Version 3.2.0
430
+
4
431
  ## 非互換の変更
5
432
  * PDFMaker: `//image` 命令などで画像を配置するときに `\includegraphics` ではなく、それを抽象化した `\reviewincludegraphics` を使うようにしました ([#1318])
6
433