review 4.1.0 → 5.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (259) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby-tex.yml +35 -0
  3. data/.github/workflows/ruby-win.yml +19 -9
  4. data/.github/workflows/ruby.yml +7 -3
  5. data/.rubocop.yml +138 -34
  6. data/NEWS.ja.md +285 -0
  7. data/NEWS.md +285 -1
  8. data/README.md +7 -6
  9. data/Rakefile +7 -2
  10. data/bin/review +2 -4
  11. data/bin/review-catalog-converter +4 -4
  12. data/bin/review-check +8 -12
  13. data/bin/review-checkdep +2 -5
  14. data/bin/review-compile +18 -34
  15. data/bin/review-epub2html +1 -4
  16. data/bin/review-epubmaker +3 -4
  17. data/bin/review-idgxmlmaker +1 -3
  18. data/bin/review-index +5 -86
  19. data/bin/review-init +1 -4
  20. data/bin/review-pdfmaker +1 -3
  21. data/bin/review-preproc +30 -38
  22. data/bin/review-textmaker +1 -3
  23. data/bin/review-update +1 -4
  24. data/bin/review-validate +4 -4
  25. data/bin/review-vol +5 -82
  26. data/bin/review-webmaker +1 -3
  27. data/doc/config.yml.sample +45 -11
  28. data/doc/config.yml.sample-simple +3 -3
  29. data/doc/format.ja.md +103 -13
  30. data/doc/format.md +104 -16
  31. data/doc/makeindex.ja.md +2 -2
  32. data/doc/pdfmaker.ja.md +42 -0
  33. data/doc/pdfmaker.md +41 -0
  34. data/doc/quickstart.ja.md +19 -6
  35. data/doc/quickstart.md +18 -6
  36. data/doc/writing_vertical.ja.md +6 -0
  37. data/lib/review.rb +1 -1
  38. data/lib/review/book.rb +2 -2
  39. data/lib/review/book/base.rb +67 -29
  40. data/lib/review/book/bib.rb +21 -0
  41. data/lib/review/book/book_unit.rb +158 -0
  42. data/lib/review/book/chapter.rb +33 -26
  43. data/lib/review/book/index.rb +24 -185
  44. data/lib/review/book/index/item.rb +7 -1
  45. data/lib/review/book/page_metric.rb +7 -7
  46. data/lib/review/book/part.rb +26 -11
  47. data/lib/review/book/volume.rb +5 -5
  48. data/lib/review/builder.rb +121 -52
  49. data/lib/review/call_hook.rb +20 -0
  50. data/lib/review/catalog.rb +3 -2
  51. data/lib/review/compiler.rb +230 -111
  52. data/lib/review/configure.rb +91 -7
  53. data/lib/review/converter.rb +1 -1
  54. data/lib/review/epub2html.rb +6 -1
  55. data/lib/review/epubmaker.rb +124 -152
  56. data/lib/review/epubmaker/content.rb +113 -0
  57. data/lib/review/epubmaker/epubcommon.rb +372 -0
  58. data/lib/review/epubmaker/epubv2.rb +178 -0
  59. data/lib/review/epubmaker/epubv3.rb +231 -0
  60. data/lib/review/epubmaker/producer.rb +167 -0
  61. data/lib/review/epubmaker/reviewheaderlistener.rb +12 -2
  62. data/lib/review/epubmaker/zip_exporter.rb +84 -0
  63. data/lib/review/exception.rb +13 -0
  64. data/lib/review/htmlbuilder.rb +176 -89
  65. data/lib/review/htmlutils.rb +8 -11
  66. data/lib/review/i18n.rb +2 -1
  67. data/lib/review/idgxmlbuilder.rb +165 -75
  68. data/lib/review/idgxmlmaker.rb +24 -28
  69. data/lib/review/img_math.rb +238 -0
  70. data/lib/review/index_builder.rb +645 -0
  71. data/lib/review/init.rb +9 -17
  72. data/lib/review/latexbox.rb +58 -0
  73. data/lib/review/latexbuilder.rb +193 -75
  74. data/lib/review/latexutils.rb +9 -1
  75. data/lib/review/lineinput.rb +112 -2
  76. data/lib/review/loggable.rb +27 -0
  77. data/lib/review/logger.rb +90 -3
  78. data/lib/review/makerhelper.rb +17 -188
  79. data/lib/review/markdownbuilder.rb +54 -4
  80. data/lib/review/pdfmaker.rb +76 -84
  81. data/lib/review/plaintextbuilder.rb +106 -22
  82. data/lib/review/preprocessor.rb +107 -303
  83. data/lib/review/preprocessor/directive.rb +35 -0
  84. data/lib/review/preprocessor/line.rb +34 -0
  85. data/lib/review/preprocessor/repository.rb +177 -0
  86. data/lib/review/rstbuilder.rb +27 -8
  87. data/lib/review/sec_counter.rb +14 -0
  88. data/lib/review/template.rb +11 -1
  89. data/lib/review/textmaker.rb +27 -32
  90. data/lib/review/textutils.rb +3 -12
  91. data/lib/review/tocprinter.rb +242 -97
  92. data/lib/review/topbuilder.rb +98 -31
  93. data/lib/review/update.rb +12 -13
  94. data/lib/review/version.rb +1 -1
  95. data/lib/review/volumeprinter.rb +97 -0
  96. data/lib/review/webmaker.rb +40 -47
  97. data/lib/review/webtocprinter.rb +39 -35
  98. data/lib/review/yamlloader.rb +2 -1
  99. data/review.gemspec +5 -3
  100. data/samples/sample-book/src/config-epub2.yml +1 -1
  101. data/samples/sample-book/src/config.yml +3 -3
  102. data/samples/sample-book/src/lib/tasks/review.rake +19 -1
  103. data/samples/sample-book/src/lib/tasks/z01_copy_sty.rake +2 -1
  104. data/samples/syntax-book/Gemfile +1 -1
  105. data/samples/syntax-book/ch01.re +1 -1
  106. data/samples/syntax-book/ch02.re +21 -6
  107. data/samples/syntax-book/ch03.re +1 -1
  108. data/samples/syntax-book/config.yml +1 -1
  109. data/samples/syntax-book/images/img3-2.png +0 -0
  110. data/samples/syntax-book/lib/tasks/z01_copy_sty.rake +2 -1
  111. data/templates/html/_colophon.html.erb +23 -0
  112. data/templates/html/_colophon_history.html.erb +9 -0
  113. data/templates/html/_cover.html.erb +10 -0
  114. data/templates/html/_part_body.html.erb +6 -0
  115. data/templates/html/_titlepage.html.erb +20 -0
  116. data/templates/html/layout-html5.html.erb +6 -0
  117. data/templates/html/layout-xhtml1.html.erb +6 -0
  118. data/templates/latex/config.erb +35 -23
  119. data/templates/latex/review-jlreq/README.md +3 -1
  120. data/templates/latex/review-jlreq/review-base.sty +36 -23
  121. data/templates/latex/review-jlreq/review-jlreq.cls +18 -25
  122. data/templates/latex/review-jlreq/review-style.sty +6 -1
  123. data/templates/latex/review-jlreq/review-tcbox.sty +348 -0
  124. data/templates/latex/review-jlreq/reviewmacro.sty +5 -0
  125. data/templates/latex/review-jsbook/README.md +7 -5
  126. data/templates/latex/review-jsbook/review-base.sty +40 -24
  127. data/templates/latex/review-jsbook/review-jsbook.cls +13 -3
  128. data/templates/latex/review-jsbook/review-style.sty +6 -1
  129. data/templates/latex/review-jsbook/review-tcbox.sty +348 -0
  130. data/templates/latex/review-jsbook/reviewmacro.sty +5 -0
  131. data/templates/opf/epubv2.opf.erb +7 -7
  132. data/templates/opf/epubv3.opf.erb +7 -7
  133. data/templates/opf/opf_manifest_epubv2.opf.erb +10 -0
  134. data/templates/opf/opf_manifest_epubv3.opf.erb +10 -0
  135. data/templates/opf/opf_metainfo_epubv2.opf.erb +17 -0
  136. data/templates/opf/opf_metainfo_epubv3.opf.erb +49 -0
  137. data/templates/opf/opf_tocx_epubv2.opf.erb +9 -0
  138. data/templates/opf/opf_tocx_epubv3.opf.erb +17 -0
  139. data/templates/web/html/layout-html5.html.erb +9 -8
  140. data/templates/web/html/layout-xhtml1.html.erb +6 -0
  141. data/test/assets/header_listener.html +35 -0
  142. data/test/assets/img_math/img1.png +0 -0
  143. data/test/assets/img_math/img2.png +0 -0
  144. data/test/assets/img_math/img3.png +0 -0
  145. data/test/assets/syntax_book_index_detail.txt +58 -0
  146. data/test/assets/test_template.tex +6 -3
  147. data/test/assets/test_template_backmatter.tex +6 -3
  148. data/test/book_test_helper.rb +11 -5
  149. data/test/run_test.rb +1 -1
  150. data/test/test_book.rb +54 -63
  151. data/test/test_book_chapter.rb +95 -54
  152. data/test/test_book_part.rb +3 -3
  153. data/test/test_builder.rb +29 -20
  154. data/test/test_catalog_converter_cmd.rb +1 -1
  155. data/test/test_converter.rb +1 -0
  156. data/test/test_epub3maker.rb +170 -126
  157. data/test/test_epubmaker.rb +254 -129
  158. data/test/test_epubmaker_cmd.rb +15 -4
  159. data/test/test_helper.rb +12 -5
  160. data/test/test_htmlbuilder.rb +926 -76
  161. data/test/test_htmlutils.rb +0 -12
  162. data/test/test_i18n.rb +33 -33
  163. data/test/test_idgxmlbuilder.rb +531 -20
  164. data/test/test_idgxmlmaker_cmd.rb +7 -3
  165. data/test/test_img_math.rb +111 -0
  166. data/test/test_index.rb +62 -52
  167. data/test/test_indexbuilder.rb +52 -0
  168. data/test/test_latexbuilder.rb +891 -20
  169. data/test/test_latexbuilder_v2.rb +56 -10
  170. data/test/test_lineinput.rb +20 -93
  171. data/test/test_logger.rb +7 -7
  172. data/test/test_makerhelper.rb +0 -12
  173. data/test/test_markdownbuilder.rb +32 -0
  174. data/test/test_pdfmaker.rb +100 -11
  175. data/test/test_pdfmaker_cmd.rb +3 -3
  176. data/test/test_plaintextbuilder.rb +546 -32
  177. data/test/test_preprocessor.rb +188 -1
  178. data/test/test_review_ext.rb +2 -1
  179. data/test/test_reviewheaderlistener.rb +49 -0
  180. data/test/test_rstbuilder.rb +25 -1
  181. data/test/test_sec_counter.rb +156 -0
  182. data/test/test_template.rb +12 -2
  183. data/test/test_textmaker_cmd.rb +5 -1
  184. data/test/test_tocprinter.rb +46 -0
  185. data/test/test_topbuilder.rb +324 -20
  186. data/test/test_update.rb +44 -44
  187. data/test/test_webtocprinter.rb +75 -43
  188. data/test/test_zip_exporter.rb +5 -6
  189. data/vendor/gentombow/LICENSE +1 -1
  190. data/vendor/gentombow/Makefile +0 -1
  191. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  192. data/vendor/gentombow/bounddvi-en.tex +1 -0
  193. data/vendor/gentombow/bounddvi.pdf +0 -0
  194. data/vendor/gentombow/bounddvi.sty +30 -7
  195. data/vendor/gentombow/bounddvi.tex +1 -0
  196. data/vendor/gentombow/create_archive.sh +1 -0
  197. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  198. data/vendor/gentombow/gentombow-ja.tex +9 -0
  199. data/vendor/gentombow/gentombow.pdf +0 -0
  200. data/vendor/gentombow/gentombow.sty +32 -10
  201. data/vendor/gentombow/gentombow.tex +8 -0
  202. data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
  203. data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
  204. data/vendor/jsclasses/Makefile +3 -2
  205. data/vendor/jsclasses/create_archive.sh +5 -5
  206. data/vendor/jsclasses/jis/Makefile +3 -2
  207. data/vendor/jsclasses/jis/jsarticle.cls +22 -18
  208. data/vendor/jsclasses/jis/jsbook.cls +22 -18
  209. data/vendor/jsclasses/jis/jsclasses.dtx +94 -13
  210. data/vendor/jsclasses/jis/jsclasses.ins +15 -5
  211. data/vendor/jsclasses/jis/jslogo.ins +9 -0
  212. data/vendor/jsclasses/jis/jslogo.sty +1 -13
  213. data/vendor/jsclasses/jis/jspf.cls +22 -18
  214. data/vendor/jsclasses/jis/jsreport.cls +22 -18
  215. data/vendor/jsclasses/jis/jsverb.ins +9 -0
  216. data/vendor/jsclasses/jis/jsverb.sty +1 -13
  217. data/vendor/jsclasses/jis/kiyou.cls +22 -18
  218. data/vendor/jsclasses/jis/minijs.sty +65 -22
  219. data/vendor/jsclasses/jis/okumacro.ins +9 -0
  220. data/vendor/jsclasses/jis/okumacro.sty +1 -13
  221. data/vendor/jsclasses/jis/okuverb.ins +9 -0
  222. data/vendor/jsclasses/jis/okuverb.sty +1 -13
  223. data/vendor/jsclasses/jis/winjis.sty +23 -19
  224. data/vendor/jsclasses/jsarticle.cls +22 -18
  225. data/vendor/jsclasses/jsbook.cls +22 -18
  226. data/vendor/jsclasses/jsclasses.dtx +94 -13
  227. data/vendor/jsclasses/jsclasses.ins +15 -5
  228. data/vendor/jsclasses/jsclasses.pdf +0 -0
  229. data/vendor/jsclasses/jslogo.ins +9 -0
  230. data/vendor/jsclasses/jslogo.pdf +0 -0
  231. data/vendor/jsclasses/jslogo.sty +1 -13
  232. data/vendor/jsclasses/jspf.cls +22 -18
  233. data/vendor/jsclasses/jsreport.cls +22 -18
  234. data/vendor/jsclasses/jsverb.ins +9 -0
  235. data/vendor/jsclasses/jsverb.pdf +0 -0
  236. data/vendor/jsclasses/jsverb.sty +1 -13
  237. data/vendor/jsclasses/kiyou.cls +22 -18
  238. data/vendor/jsclasses/minijs.sty +68 -22
  239. data/vendor/jsclasses/okumacro.ins +9 -0
  240. data/vendor/jsclasses/okumacro.pdf +0 -0
  241. data/vendor/jsclasses/okumacro.sty +1 -13
  242. data/vendor/jsclasses/okuverb.ins +9 -0
  243. data/vendor/jsclasses/okuverb.pdf +0 -0
  244. data/vendor/jsclasses/okuverb.sty +1 -13
  245. data/vendor/jsclasses/tests/relfont.tex +10 -0
  246. data/vendor/jsclasses/winjis.sty +23 -19
  247. metadata +106 -22
  248. data/.rubocop_todo.yml +0 -7
  249. data/lib/epubmaker.rb +0 -23
  250. data/lib/epubmaker/content.rb +0 -110
  251. data/lib/epubmaker/epubcommon.rb +0 -441
  252. data/lib/epubmaker/epubv2.rb +0 -143
  253. data/lib/epubmaker/epubv3.rb +0 -233
  254. data/lib/epubmaker/producer.rb +0 -375
  255. data/lib/epubmaker/zip_exporter.rb +0 -81
  256. data/lib/lineinput.rb +0 -155
  257. data/lib/review/book/compilable.rb +0 -178
  258. data/lib/review/tocparser.rb +0 -275
  259. data/test/test_tocparser.rb +0 -25
@@ -4,25 +4,13 @@
4
4
  %%
5
5
  %% The original source files were:
6
6
  %%
7
- %% jsclasses.dtx (with options: `book')
7
+ %% jsclasses.dtx (with options: `class,book')
8
8
  %%
9
- %% IMPORTANT NOTICE:
9
+ %% Maintained on GitHub: https://github.com/texjporg/jsclasses
10
10
  %%
11
- %% For the copyright see the source file.
12
- %%
13
- %% Any modified versions of this file must be renamed
14
- %% with new filenames distinct from jsbook.cls.
15
- %%
16
- %% For distribution of the original source see the terms
17
- %% for copying and modification in the file jsclasses.dtx.
18
- %%
19
- %% This generated file may be distributed as long as the
20
- %% original source files, as listed above, are part of the
21
- %% same distribution. (The sources need not necessarily be
22
- %% in the same archive or directory.)
23
11
  \NeedsTeXFormat{pLaTeX2e}
24
12
  \ProvidesClass{jsbook}
25
- [2020/02/02 jsclasses (okumura, texjporg)]
13
+ [2020/10/09 jsclasses (okumura, texjporg)]
26
14
  \def\jsc@clsname{jsbook}
27
15
  \newif\ifjsc@needsp@tch
28
16
  \jsc@needsp@tchfalse
@@ -261,10 +249,11 @@
261
249
  \fi
262
250
  \ifpapersize
263
251
  \iftombow
264
- \AtBeginDvi{\special{papersize=\the\stockwidth,\the\stockheight}}
252
+ \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight}
265
253
  \else
266
- \AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
254
+ \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight}
267
255
  \fi
256
+ \AtBeginDvi{\special{\jsc@papersize@special}}
268
257
  \fi
269
258
  \if@slide\def\n@baseline{13}\else\def\n@baseline{16}\fi
270
259
  \newdimen\jsc@mpt
@@ -465,6 +454,10 @@
465
454
  \DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
466
455
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{}
467
456
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{}
457
+ %% ad-hoc "relation font"
458
+ \@ifl@t@r\fmtversion{2020/10/01}
459
+ {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue}
460
+ \ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN
468
461
  \ifx\@rmfamilyhook\@undefined % old
469
462
  \DeclareRobustCommand\rmfamily
470
463
  {\not@math@alphabet\rmfamily\mathrm
@@ -494,6 +487,14 @@
494
487
  \g@addto@macro\@ttfamilyhook
495
488
  {\prepare@family@series@update@kanji{gt}\gtdefault}
496
489
  \fi
490
+ \else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN
491
+ \AddToHook{rmfamily}%
492
+ {\prepare@family@series@update@kanji{mc}\mcdefault}
493
+ \AddToHook{sffamily}%
494
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
495
+ \AddToHook{ttfamily}%
496
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
497
+ \fi % --- for 2020-10-01 END
497
498
  \ifx\DeclareFixJFMCJKTextFontCommand\@undefined
498
499
  \DeclareRobustCommand\textmc[1]{%
499
500
  \relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}}
@@ -702,6 +703,7 @@
702
703
  \xspcode`^^fe=3
703
704
  \xspcode`^^ff=3
704
705
  \def\@{\spacefactor3000{}}
706
+ %% \@setfontsize with \parindent and \(x)kanjiskip settings
705
707
  \def\@setfontsize#1#2#3{%
706
708
  \ifx\protect\@typeset@protect
707
709
  \let\@currsize#1%
@@ -719,7 +721,8 @@
719
721
  \if@slide \xkanjiskip=0.1em \else
720
722
  \xkanjiskip=0.25em plus 0.15em minus 0.06em
721
723
  \fi
722
- \fi}
724
+ \fi
725
+ }
723
726
  \def\jsc@setfontsize#1#2#3{%
724
727
  \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}}
725
728
  \emergencystretch 3zw
@@ -750,6 +753,7 @@
750
753
  \belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
751
754
  \belowdisplayshortskip \belowdisplayskip
752
755
  \let\@listi\@listI}
756
+ %% initialize
753
757
  \normalsize
754
758
  \setbox0\hbox{\char\jis"3441}%
755
759
  \setlength\Cht{\ht0}
@@ -4,7 +4,7 @@
4
4
  % pLaTeX2$B&E?7%I%-%e%a%s%H%/%i%9!JF|K\8l(B TeX $B3+H/%3%_%e%K%F%#HG!K(B
5
5
  % $B86:n<T!'1|B<@2I'(B <okumura@okumuralab.org>
6
6
  %
7
- % Copyright 1993-2019
7
+ % Copyright 1993-2020
8
8
  % The LaTeX3 Project and any individual authors listed elsewhere
9
9
  % in this file.
10
10
  %
@@ -23,10 +23,11 @@
23
23
  %<report>\ProvidesClass{jsreport}
24
24
  %<jspf>\ProvidesClass{jspf}
25
25
  %<kiyou>\ProvidesClass{kiyou}
26
+ %<minijs>\ProvidesPackage{minijs}
26
27
  %<*driver>
27
28
  \ProvidesFile{jsclasses.dtx}
28
29
  %</driver>
29
- [2020/02/02 jsclasses (okumura, texjporg)]
30
+ [2020/10/09 jsclasses (okumura, texjporg)]
30
31
  %<*driver>
31
32
  \documentclass{jsarticle}
32
33
  \usepackage{doc}
@@ -119,11 +120,26 @@
119
120
  %
120
121
  % $B0J2<$G$O<B:]$N%3!<%I$KB($7$F@bL@$7$^$9!#(B
121
122
  %
123
+ % \texttt{minijs}$B$O!$(B\texttt{jsclasses}$B$K;w$?@_Dj$r9T$&%Q%C%1!<%8$G$9!#(B
124
+ %
125
+ % \begin{macrocode}
126
+ %<*minijs>
127
+ %% if jsclasses loaded, abort loading this package
128
+ \ifx\@jsc@uplatextrue\@undefined\else
129
+ \PackageInfo{minijs}{jsclasses does not need minijs, exiting}
130
+ \expandafter\endinput
131
+ \fi
132
+ %% "fake" jsarticle
133
+ \expandafter\def\csname ver@jsarticle.cls\endcsname{}
134
+ %</minijs>
135
+ % \end{macrocode}
136
+ %
122
137
  % \begin{macro}{\jsc@clsname}
123
138
  %
124
139
  % $BJ8=q%/%i%9$NL>A0$G$9!#%(%i!<%a%C%;!<%8I=<($J$I$G;H$o$l$^$9!#(B
125
140
  %
126
141
  % \begin{macrocode}
142
+ %<*class>
127
143
  %<article>\def\jsc@clsname{jsarticle}
128
144
  %<book>\def\jsc@clsname{jsbook}
129
145
  %<report>\def\jsc@clsname{jsreport}
@@ -142,8 +158,12 @@
142
158
  % $B$r$"$F$k>l9g$,$"$j$^$9!#$3$N=hM}$K;HMQ$9$k%U%i%0$rDj5A$7$^$9!#(B
143
159
  %
144
160
  % \begin{macrocode}
161
+ %</class>
162
+ %<*class|minijs>
145
163
  \newif\ifjsc@needsp@tch
146
164
  \jsc@needsp@tchfalse
165
+ %</class|minijs>
166
+ %<*class>
147
167
  % \end{macrocode}
148
168
  % \end{macro}
149
169
  %
@@ -741,6 +761,11 @@
741
761
  % [2017-01-11] $B%H%s%\%*%W%7%g%s$,;XDj$5$l$F$$$k$H$-!V$@$1!W(B|\stockwidth|$B!$(B
742
762
  % |\stockheight|$B$rDj5A$9$k$h$&$K$7$^$7$?!#(B
743
763
  %
764
+ % [2020-10-04] \LaTeXe~2020-10-01$B$G%+!<%M%k$N(B |\shipout| $B%3!<%I$,3HD%$5$l(B
765
+ % |\AtBeginDvi| $B$N<B9T%?%$%_%s%0$,JQ2=$7$?$N$G!$$3$N;~E@$G(B
766
+ % $BH/9T$9$k(B |\special| $B$NCf?H$rE83+$7$F$*$/$h$&$K$7$^$7$?!#(B
767
+ % $B$3$&$7$J$$$H!$MQ;f%5%$%:@_Dj$r4V0c$C$F$7$^$$$^$9(B(Issue \#72)$B!#(B
768
+ %
744
769
  % \begin{macrocode}
745
770
  \iftombow
746
771
  \newdimen\stockwidth \newdimen\stockheight
@@ -751,10 +776,11 @@
751
776
  \fi
752
777
  \ifpapersize
753
778
  \iftombow
754
- \AtBeginDvi{\special{papersize=\the\stockwidth,\the\stockheight}}
779
+ \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight}
755
780
  \else
756
- \AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
781
+ \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight}
757
782
  \fi
783
+ \AtBeginDvi{\special{\jsc@papersize@special}}
758
784
  \fi
759
785
  % \end{macrocode}
760
786
  %
@@ -1054,6 +1080,24 @@
1054
1080
  % $9.62216\,\mathrm{pt} * 0.961 / 10\,\mathrm{pt} = 0.924690$ $B$G$9!#(B
1055
1081
  %
1056
1082
  % \begin{macrocode}
1083
+ %</class>
1084
+ %<*minijs>
1085
+ %% min/goth -> jis/jisg (for pLaTeX only)
1086
+ \ifx\ucs\@undefined
1087
+ \@for\@tempa:=5,6,7,8,9,10,10.95,12,14.4,17.28,20.74,24.88\do{%
1088
+ \expandafter\let\csname JY1/mc/m/n/\@tempa\endcsname\relax
1089
+ \expandafter\let\csname JY1/gt/m/n/\@tempa\endcsname\relax
1090
+ \expandafter\let\csname JT1/mc/m/n/\@tempa\endcsname\relax
1091
+ \expandafter\let\csname JT1/gt/m/n/\@tempa\endcsname\relax
1092
+ }
1093
+ \def\Cjascale{0.924690}
1094
+ \DeclareFontShape{JY1}{mc}{m}{n}{<-> s * [0.961] jis}{}
1095
+ \DeclareFontShape{JY1}{gt}{m}{n}{<-> s * [0.961] jisg}{}
1096
+ \DeclareFontShape{JT1}{mc}{m}{n}{<-> s * [0.961] tmin10}{}
1097
+ \DeclareFontShape{JT1}{gt}{m}{n}{<-> s * [0.961] tgoth10}{}
1098
+ \fi
1099
+ %</minijs>
1100
+ %<*class>
1057
1101
  %<*!jspf>
1058
1102
  \def\Cjascale{0.924690}
1059
1103
  \ifmingoth
@@ -1165,7 +1209,22 @@
1165
1209
  % $B=>Mh$N%3!<%I$b(B\LaTeXe~2019-10-01$B0JA0$N$?$a$K;D$7$F$"$j$^$9$,!$(B
1166
1210
  % \texttt{mweights}$B%Q%C%1!<%8BP:v$b;\$7$^$7$?(B(forum:2763)$B!#(B
1167
1211
  %
1212
+ % [2020-10-04] \LaTeXe~2020-10-01$B$G$O(B |\AddToHook| $B$rMxMQ$7$^$9!#(B
1213
+ %
1214
+ % ^^A Note that |\AddToHook| is defined as follows:
1215
+ % ^^A \begin{itemize}
1216
+ % ^^A \item Format date 2020-02-02 or older: undefined
1217
+ % ^^A \item Format date 2020-10-01 or newer: available
1218
+ % ^^A \item ... under \texttt{latexrelease} rollback: defined but no-op
1219
+ % ^^A \end{itemize}
1220
+ %
1168
1221
  % \begin{macrocode}
1222
+ %</class>
1223
+ %<*class|minijs>
1224
+ %% ad-hoc "relation font"
1225
+ \@ifl@t@r\fmtversion{2020/10/01}
1226
+ {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue}
1227
+ \ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN
1169
1228
  \ifx\@rmfamilyhook\@undefined % old
1170
1229
  \DeclareRobustCommand\rmfamily
1171
1230
  {\not@math@alphabet\rmfamily\mathrm
@@ -1195,6 +1254,16 @@
1195
1254
  \g@addto@macro\@ttfamilyhook
1196
1255
  {\prepare@family@series@update@kanji{gt}\gtdefault}
1197
1256
  \fi
1257
+ \else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN
1258
+ \AddToHook{rmfamily}%
1259
+ {\prepare@family@series@update@kanji{mc}\mcdefault}
1260
+ \AddToHook{sffamily}%
1261
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
1262
+ \AddToHook{ttfamily}%
1263
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
1264
+ \fi % --- for 2020-10-01 END
1265
+ %</class|minijs>
1266
+ %<*class>
1198
1267
  % \end{macrocode}
1199
1268
  %
1200
1269
  % \begin{macro}{\textmc}
@@ -1562,25 +1631,31 @@
1562
1631
  % [2008-02-18] |english| $B%*%W%7%g%s$G(B |\parindent| $B$r(B 1em $B$K$7$^$7$?!#(B
1563
1632
  %
1564
1633
  % \begin{macrocode}
1634
+ %</class>
1635
+ %<*class|minijs>
1636
+ %% \@setfontsize with \parindent and \(x)kanjiskip settings
1565
1637
  \def\@setfontsize#1#2#3{%
1566
- % \@nomath#1%
1638
+ %<minijs> \@nomath#1%
1567
1639
  \ifx\protect\@typeset@protect
1568
1640
  \let\@currsize#1%
1569
1641
  \fi
1570
1642
  \fontsize{#2}{#3}\selectfont
1571
1643
  \ifdim\parindent>\z@
1572
- \if@english
1573
- \parindent=1em
1574
- \else
1644
+ %<class> \if@english
1645
+ %<class> \parindent=1em
1646
+ %<class> \else
1575
1647
  \parindent=1zw
1576
- \fi
1648
+ %<class> \fi
1577
1649
  \fi
1578
1650
  \kanjiskip=0zw plus .1zw minus .01zw
1579
- \ifdim\xkanjiskip>\z@
1580
- \if@slide \xkanjiskip=0.1em \else
1651
+ %<class> \ifdim\xkanjiskip>\z@
1652
+ %<class> \if@slide \xkanjiskip=0.1em \else
1581
1653
  \xkanjiskip=0.25em plus 0.15em minus 0.06em
1582
- \fi
1583
- \fi}
1654
+ %<class> \fi
1655
+ %<class> \fi
1656
+ }
1657
+ %</class|minijs>
1658
+ %<*class>
1584
1659
  % \end{macrocode}
1585
1660
  % \end{macro}
1586
1661
  %
@@ -1689,7 +1764,12 @@
1689
1764
  % $B$3$3$G<B:]$KI8=`%U%)%s%H%5%$%:$G=i4|2=$7$^$9!#(B
1690
1765
  %
1691
1766
  % \begin{macrocode}
1767
+ %</class>
1768
+ %<*class|minijs>
1769
+ %% initialize
1692
1770
  \normalsize
1771
+ %</class|minijs>
1772
+ %<*class>
1693
1773
  % \end{macrocode}
1694
1774
  %
1695
1775
  % \end{macro}
@@ -6010,6 +6090,7 @@
6010
6090
  \ignorespaces
6011
6091
  \fi}
6012
6092
  %</article|book|report>
6093
+ %</class>
6013
6094
  % \end{macrocode}
6014
6095
  % \end{macro}
6015
6096
  %
@@ -1,8 +1,18 @@
1
+ \input docstrip
2
+ \preamble
3
+
4
+ Maintained on GitHub: https://github.com/texjporg/jsclasses
5
+
6
+ \endpreamble
7
+
1
8
  \def\batchfile{jsclasses.ins}
2
9
  \input docstrip.tex
3
10
  \keepsilent
4
- \generateFile{jsarticle.cls}{f}{\from{jsclasses.dtx}{article}}
5
- \generateFile{jsbook.cls}{f}{\from{jsclasses.dtx}{book}}
6
- \generateFile{jsreport.cls}{f}{\from{jsclasses.dtx}{report}}
7
- \generateFile{jspf.cls}{f}{\from{jsclasses.dtx}{jspf}}
8
- \generateFile{kiyou.cls}{f}{\from{jsclasses.dtx}{kiyou}}
11
+ \generateFile{jsarticle.cls}{f}{\from{jsclasses.dtx}{class,article}}
12
+ \generateFile{jsbook.cls}{f}{\from{jsclasses.dtx}{class,book}}
13
+ \generateFile{jsreport.cls}{f}{\from{jsclasses.dtx}{class,report}}
14
+ \generateFile{jspf.cls}{f}{\from{jsclasses.dtx}{class,jspf}}
15
+ \generateFile{kiyou.cls}{f}{\from{jsclasses.dtx}{class,kiyou}}
16
+ \generateFile{minijs.sty}{f}{\from{jsclasses.dtx}{minijs}}
17
+
18
+ \endbatchfile
@@ -1,4 +1,13 @@
1
+ \input docstrip
2
+ \preamble
3
+
4
+ Maintained on GitHub: https://github.com/texjporg/jsclasses
5
+
6
+ \endpreamble
7
+
1
8
  \def\batchfile{jslogo.ins}
2
9
  \input docstrip.tex
3
10
  \keepsilent
4
11
  \generateFile{jslogo.sty}{f}{\from{jslogo.dtx}{package}}
12
+
13
+ \endbatchfile
@@ -6,20 +6,8 @@
6
6
  %%
7
7
  %% jslogo.dtx (with options: `package')
8
8
  %%
9
- %% IMPORTANT NOTICE:
9
+ %% Maintained on GitHub: https://github.com/texjporg/jsclasses
10
10
  %%
11
- %% For the copyright see the source file.
12
- %%
13
- %% Any modified versions of this file must be renamed
14
- %% with new filenames distinct from jslogo.sty.
15
- %%
16
- %% For distribution of the original source see the terms
17
- %% for copying and modification in the file jslogo.dtx.
18
- %%
19
- %% This generated file may be distributed as long as the
20
- %% original source files, as listed above, are part of the
21
- %% same distribution. (The sources need not necessarily be
22
- %% in the same archive or directory.)
23
11
  \NeedsTeXFormat{LaTeX2e}
24
12
  \ProvidesPackage{jslogo}
25
13
  [2019/07/25 okumura, texjporg]
@@ -4,25 +4,13 @@
4
4
  %%
5
5
  %% The original source files were:
6
6
  %%
7
- %% jsclasses.dtx (with options: `jspf')
7
+ %% jsclasses.dtx (with options: `class,jspf')
8
8
  %%
9
- %% IMPORTANT NOTICE:
9
+ %% Maintained on GitHub: https://github.com/texjporg/jsclasses
10
10
  %%
11
- %% For the copyright see the source file.
12
- %%
13
- %% Any modified versions of this file must be renamed
14
- %% with new filenames distinct from jspf.cls.
15
- %%
16
- %% For distribution of the original source see the terms
17
- %% for copying and modification in the file jsclasses.dtx.
18
- %%
19
- %% This generated file may be distributed as long as the
20
- %% original source files, as listed above, are part of the
21
- %% same distribution. (The sources need not necessarily be
22
- %% in the same archive or directory.)
23
11
  \NeedsTeXFormat{pLaTeX2e}
24
12
  \ProvidesClass{jspf}
25
- [2020/02/02 jsclasses (okumura, texjporg)]
13
+ [2020/10/09 jsclasses (okumura, texjporg)]
26
14
  \def\jsc@clsname{jspf}
27
15
  \newif\ifjsc@needsp@tch
28
16
  \jsc@needsp@tchfalse
@@ -252,10 +240,11 @@
252
240
  \fi
253
241
  \ifpapersize
254
242
  \iftombow
255
- \AtBeginDvi{\special{papersize=\the\stockwidth,\the\stockheight}}
243
+ \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight}
256
244
  \else
257
- \AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
245
+ \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight}
258
246
  \fi
247
+ \AtBeginDvi{\special{\jsc@papersize@special}}
259
248
  \fi
260
249
  \def\n@baseline{14.554375}
261
250
  \newdimen\jsc@mpt
@@ -456,6 +445,10 @@
456
445
  \DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
457
446
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{}
458
447
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{}
448
+ %% ad-hoc "relation font"
449
+ \@ifl@t@r\fmtversion{2020/10/01}
450
+ {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue}
451
+ \ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN
459
452
  \ifx\@rmfamilyhook\@undefined % old
460
453
  \DeclareRobustCommand\rmfamily
461
454
  {\not@math@alphabet\rmfamily\mathrm
@@ -485,6 +478,14 @@
485
478
  \g@addto@macro\@ttfamilyhook
486
479
  {\prepare@family@series@update@kanji{gt}\gtdefault}
487
480
  \fi
481
+ \else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN
482
+ \AddToHook{rmfamily}%
483
+ {\prepare@family@series@update@kanji{mc}\mcdefault}
484
+ \AddToHook{sffamily}%
485
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
486
+ \AddToHook{ttfamily}%
487
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
488
+ \fi % --- for 2020-10-01 END
488
489
  \ifx\DeclareFixJFMCJKTextFontCommand\@undefined
489
490
  \DeclareRobustCommand\textmc[1]{%
490
491
  \relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}}
@@ -693,6 +694,7 @@
693
694
  \xspcode`^^fe=3
694
695
  \xspcode`^^ff=3
695
696
  \def\@{\spacefactor3000{}}
697
+ %% \@setfontsize with \parindent and \(x)kanjiskip settings
696
698
  \def\@setfontsize#1#2#3{%
697
699
  \ifx\protect\@typeset@protect
698
700
  \let\@currsize#1%
@@ -710,7 +712,8 @@
710
712
  \if@slide \xkanjiskip=0.1em \else
711
713
  \xkanjiskip=0.25em plus 0.15em minus 0.06em
712
714
  \fi
713
- \fi}
715
+ \fi
716
+ }
714
717
  \def\jsc@setfontsize#1#2#3{%
715
718
  \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}}
716
719
  \emergencystretch 3zw
@@ -741,6 +744,7 @@
741
744
  \belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
742
745
  \belowdisplayshortskip \belowdisplayskip
743
746
  \let\@listi\@listI}
747
+ %% initialize
744
748
  \normalsize
745
749
  \setbox0\hbox{\char\jis"3441}%
746
750
  \setlength\Cht{\ht0}