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
@@ -0,0 +1,8 @@
1
+ %#!pdflatex
2
+ \documentclass[a4paper]{article}
3
+ \usepackage[x-1a]{pdfx}
4
+ \usepackage{gentombow}
5
+ \begin{document}
6
+ \noindent A\hfill B\clearpage
7
+ \noindent C\hfill D
8
+ \end{document}
@@ -3,14 +3,15 @@ DOCTARGET = jsclasses jslogo okumacro jsverb okuverb
3
3
  PDFTARGET = $(addsuffix .pdf,$(DOCTARGET))
4
4
  DVITARGET = $(addsuffix .dvi,$(DOCTARGET))
5
5
  KANJI = -kanji=utf8
6
- FONTMAP = -f ipaex.map -f ptex-ipaex.map
6
+ FONTMAP = -f haranoaji.map -f ptex-haranoaji.map
7
7
  TEXMF = $(shell kpsewhich -var-value=TEXMFHOME)
8
8
 
9
9
  default: $(STRIPTARGET) $(DVITARGET)
10
10
  strip: $(STRIPTARGET)
11
11
  all: $(STRIPTARGET) $(PDFTARGET)
12
12
 
13
- JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls
13
+ JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls \
14
+ minijs.sty
14
15
 
15
16
  # for generating files, we use pdflatex incidentally.
16
17
  # otherwise, ptexenc might convert U+2212 -> U+FF0D in okumacro.sty
@@ -14,8 +14,8 @@ echo " * Create $PROJECT.tds.zip"
14
14
  git archive --format=tar --prefix=$PROJECT/ HEAD | (cd $TMP && tar xf -)
15
15
  rm $TMP/$PROJECT/.gitignore
16
16
  rm $TMP/$PROJECT/create_archive.sh
17
- rm -f $TMP/$PROJECT/jis/*
18
- rmdir $TMP/$PROJECT/jis
17
+ rm -rf $TMP/$PROJECT/tests
18
+ rm -rf $TMP/$PROJECT/jis
19
19
  perl -pi.bak -e "s/\\\$RELEASEDATE/$RELEASEDATE/g" $TMP/$PROJECT/README.md
20
20
  rm -f $TMP/$PROJECT/README.md.bak
21
21
 
@@ -46,10 +46,10 @@ git archive --format=tar --prefix=$PROJECT/ HEAD | (cd $TMP && tar xf -)
46
46
  # winjis.sty should be removed for CTAN
47
47
  rm $TMP/$PROJECT/.gitignore
48
48
  rm $TMP/$PROJECT/create_archive.sh
49
- rm -f $TMP/$PROJECT/jis/*
50
- rmdir $TMP/$PROJECT/jis
49
+ rm -rf $TMP/$PROJECT/tests
50
+ rm -rf $TMP/$PROJECT/jis
51
51
  rm $TMP/$PROJECT/*.cls
52
- ls $TMP/$PROJECT/*.sty | grep -v minijs.sty | xargs rm
52
+ rm $TMP/$PROJECT/*.sty
53
53
  perl -pi.bak -e "s/\\\$RELEASEDATE/$RELEASEDATE/g" $TMP/$PROJECT/README.md
54
54
  rm -f $TMP/$PROJECT/README.md.bak
55
55
 
@@ -3,14 +3,15 @@ DOCTARGET = jsclasses jslogo okumacro jsverb okuverb
3
3
  PDFTARGET = $(addsuffix .pdf,$(DOCTARGET))
4
4
  DVITARGET = $(addsuffix .dvi,$(DOCTARGET))
5
5
  KANJI = -kanji=jis
6
- FONTMAP = -f ipaex.map -f ptex-ipaex.map
6
+ FONTMAP = -f haranoaji.map -f ptex-haranoaji.map
7
7
  TEXMF = $(shell kpsewhich -var-value=TEXMFHOME)
8
8
 
9
9
  default: $(STRIPTARGET) $(DVITARGET)
10
10
  strip: $(STRIPTARGET)
11
11
  all: $(STRIPTARGET) $(PDFTARGET)
12
12
 
13
- JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls
13
+ JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls \
14
+ minijs.sty
14
15
 
15
16
  jsarticle.cls: jsclasses.dtx
16
17
  platex $(KANJI) jsclasses.ins
@@ -4,25 +4,13 @@
4
4
  %%
5
5
  %% The original source files were:
6
6
  %%
7
- %% jsclasses.dtx (with options: `article')
7
+ %% jsclasses.dtx (with options: `class,article')
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 jsarticle.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{jsarticle}
25
- [2020/02/02 jsclasses (okumura, texjporg)]
13
+ [2020/10/09 jsclasses (okumura, texjporg)]
26
14
  \def\jsc@clsname{jsarticle}
27
15
  \newif\ifjsc@needsp@tch
28
16
  \jsc@needsp@tchfalse
@@ -256,10 +244,11 @@
256
244
  \fi
257
245
  \ifpapersize
258
246
  \iftombow
259
- \AtBeginDvi{\special{papersize=\the\stockwidth,\the\stockheight}}
247
+ \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight}
260
248
  \else
261
- \AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
249
+ \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight}
262
250
  \fi
251
+ \AtBeginDvi{\special{\jsc@papersize@special}}
263
252
  \fi
264
253
  \if@slide\def\n@baseline{13}\else\def\n@baseline{16}\fi
265
254
  \newdimen\jsc@mpt
@@ -460,6 +449,10 @@
460
449
  \DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
461
450
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{}
462
451
  \DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{}
452
+ %% ad-hoc "relation font"
453
+ \@ifl@t@r\fmtversion{2020/10/01}
454
+ {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue}
455
+ \ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN
463
456
  \ifx\@rmfamilyhook\@undefined % old
464
457
  \DeclareRobustCommand\rmfamily
465
458
  {\not@math@alphabet\rmfamily\mathrm
@@ -489,6 +482,14 @@
489
482
  \g@addto@macro\@ttfamilyhook
490
483
  {\prepare@family@series@update@kanji{gt}\gtdefault}
491
484
  \fi
485
+ \else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN
486
+ \AddToHook{rmfamily}%
487
+ {\prepare@family@series@update@kanji{mc}\mcdefault}
488
+ \AddToHook{sffamily}%
489
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
490
+ \AddToHook{ttfamily}%
491
+ {\prepare@family@series@update@kanji{gt}\gtdefault}
492
+ \fi % --- for 2020-10-01 END
492
493
  \ifx\DeclareFixJFMCJKTextFontCommand\@undefined
493
494
  \DeclareRobustCommand\textmc[1]{%
494
495
  \relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}}
@@ -697,6 +698,7 @@
697
698
  \xspcode`^^fe=3
698
699
  \xspcode`^^ff=3
699
700
  \def\@{\spacefactor3000{}}
701
+ %% \@setfontsize with \parindent and \(x)kanjiskip settings
700
702
  \def\@setfontsize#1#2#3{%
701
703
  \ifx\protect\@typeset@protect
702
704
  \let\@currsize#1%
@@ -714,7 +716,8 @@
714
716
  \if@slide \xkanjiskip=0.1em \else
715
717
  \xkanjiskip=0.25em plus 0.15em minus 0.06em
716
718
  \fi
717
- \fi}
719
+ \fi
720
+ }
718
721
  \def\jsc@setfontsize#1#2#3{%
719
722
  \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}}
720
723
  \emergencystretch 3zw
@@ -745,6 +748,7 @@
745
748
  \belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
746
749
  \belowdisplayshortskip \belowdisplayskip
747
750
  \let\@listi\@listI}
751
+ %% initialize
748
752
  \normalsize
749
753
  \setbox0\hbox{\char\jis"3441}%
750
754
  \setlength\Cht{\ht0}
@@ -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
  %