review 3.0.0 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby-win.yml +39 -0
- data/.github/workflows/ruby.yml +27 -0
- data/.rubocop.yml +50 -12
- data/.travis.yml +17 -8
- data/Dockerfile +21 -5
- data/NEWS.ja.md +358 -0
- data/NEWS.md +358 -1
- data/README.md +11 -8
- data/appveyor.yml +1 -3
- data/bin/review-catalog-converter +4 -4
- data/bin/review-check +8 -8
- data/bin/review-checkdep +1 -1
- data/bin/review-compile +12 -12
- data/bin/review-epubmaker +3 -35
- data/bin/review-idgxmlmaker +16 -0
- data/bin/review-index +2 -89
- data/bin/review-preproc +14 -19
- data/bin/review-validate +3 -3
- data/bin/review-vol +4 -78
- data/doc/LICENSE +1 -1
- data/doc/config.yml.sample +46 -12
- data/doc/config.yml.sample-simple +4 -2
- data/doc/format.ja.md +37 -13
- data/doc/format.md +35 -20
- data/doc/pdfmaker.ja.md +43 -1
- data/doc/pdfmaker.md +42 -1
- data/doc/quickstart.ja.md +46 -26
- data/doc/quickstart.md +38 -17
- data/lib/epubmaker/epubcommon.rb +10 -5
- data/lib/epubmaker/epubv2.rb +1 -1
- data/lib/epubmaker/epubv3.rb +1 -0
- data/lib/epubmaker/producer.rb +4 -2
- data/lib/review/book.rb +1 -1
- data/lib/review/book/base.rb +38 -79
- data/lib/review/book/chapter.rb +18 -3
- data/lib/review/book/compilable.rb +6 -5
- data/lib/review/book/index.rb +69 -101
- data/lib/review/book/index/item.rb +40 -0
- data/lib/review/book/page_metric.rb +7 -7
- data/lib/review/book/part.rb +28 -5
- data/lib/review/book/volume.rb +3 -4
- data/lib/review/builder.rb +105 -44
- data/lib/review/catalog.rb +13 -16
- data/lib/review/compiler.rb +84 -72
- data/lib/review/configure.rb +19 -8
- data/lib/review/epub2html.rb +37 -4
- data/lib/review/epubmaker.rb +62 -7
- data/lib/review/extentions/string.rb +0 -4
- data/lib/review/htmlbuilder.rb +102 -115
- data/lib/review/htmlutils.rb +2 -3
- data/lib/review/i18n.rb +2 -2
- data/lib/review/i18n.yml +9 -0
- data/lib/review/idgxmlbuilder.rb +153 -74
- data/lib/review/idgxmlmaker.rb +191 -0
- data/lib/review/init-web/finish.html +10 -0
- data/lib/review/init-web/index.html +190 -0
- data/lib/review/init-web/review-layout-design.js +691 -0
- data/lib/review/init.rb +125 -34
- data/lib/review/latexbuilder.rb +199 -88
- data/lib/review/lineinput.rb +1 -1
- data/lib/review/location.rb +32 -0
- data/lib/review/logger.rb +4 -8
- data/lib/review/makerhelper.rb +24 -5
- data/lib/review/markdownbuilder.rb +31 -37
- data/lib/review/md2inaobuilder.rb +3 -5
- data/lib/review/pdfmaker.rb +44 -22
- data/lib/review/plaintextbuilder.rb +106 -85
- data/lib/review/preprocessor.rb +32 -41
- data/lib/review/rstbuilder.rb +33 -33
- data/lib/review/textmaker.rb +19 -3
- data/lib/review/textutils.rb +76 -2
- data/lib/review/tocprinter.rb +231 -102
- data/lib/review/topbuilder.rb +114 -61
- data/lib/review/update.rb +19 -19
- data/lib/review/version.rb +1 -1
- data/lib/review/volumeprinter.rb +99 -0
- data/lib/review/webmaker.rb +11 -4
- data/lib/review/webtocprinter.rb +38 -35
- data/lib/review/yamlloader.rb +26 -16
- data/review.gemspec +6 -4
- data/samples/sample-book/README.md +7 -2
- data/samples/sample-book/src/.gitignore +154 -0
- data/samples/sample-book/src/config-ebook.yml +4 -0
- data/samples/sample-book/src/config-jlreq-ebook.yml +4 -0
- data/samples/sample-book/src/config-jlreq.yml +6 -0
- data/samples/sample-book/src/config.yml +2 -2
- data/samples/sample-book/src/lib/tasks/review.rake +29 -14
- data/samples/sample-book/src/lib/tasks/z01_copy_sty.rake +14 -8
- data/samples/syntax-book/ch01.re +4 -2
- data/samples/syntax-book/ch02.re +8 -16
- data/samples/syntax-book/ch03.re +3 -6
- data/samples/syntax-book/config-jlreq-lualatex.yml +4 -0
- data/samples/syntax-book/config-jlreq.yml +5 -0
- data/samples/syntax-book/config-print.yml +3 -0
- data/samples/syntax-book/config.yml +1 -1
- data/samples/syntax-book/lib/tasks/review.rake +30 -15
- data/samples/syntax-book/lib/tasks/z01_copy_sty.rake +14 -8
- data/templates/latex/config.erb +16 -0
- data/templates/latex/layout.tex.erb +4 -0
- data/templates/latex/review-jlreq/review-base.sty +150 -61
- data/templates/latex/review-jlreq/review-jlreq.cls +74 -8
- data/templates/latex/review-jlreq/review-style.sty +4 -1
- data/templates/latex/review-jsbook/README.md +39 -0
- data/templates/latex/review-jsbook/review-base.sty +101 -23
- data/templates/latex/review-jsbook/review-jsbook.cls +28 -5
- data/templates/latex/review-jsbook/review-style.sty +5 -2
- data/templates/opf/epubv3.opf.erb +1 -0
- data/templates/web/html/layout-html5.html.erb +2 -2
- data/test/assets/test_template.tex +24 -3
- data/test/assets/test_template_backmatter.tex +24 -3
- data/test/test_book.rb +75 -21
- data/test/test_book_chapter.rb +4 -2
- data/test/test_book_part.rb +3 -3
- data/test/test_builder.rb +16 -0
- data/test/test_catalog.rb +24 -42
- data/test/test_catalog_converter_cmd.rb +1 -1
- data/test/test_epubmaker_cmd.rb +14 -7
- data/test/test_helper.rb +15 -7
- data/test/test_htmlbuilder.rb +909 -159
- data/test/test_i18n.rb +25 -25
- data/test/test_idgxmlbuilder.rb +395 -38
- data/test/test_idgxmlmaker_cmd.rb +46 -0
- data/test/test_image_finder.rb +52 -70
- data/test/test_index.rb +50 -10
- data/test/test_latexbuilder.rb +1194 -106
- data/test/test_latexbuilder_v2.rb +628 -97
- data/test/test_logger.rb +14 -1
- data/test/test_makerhelper.rb +3 -3
- data/test/test_markdownbuilder.rb +134 -16
- data/test/test_md2inaobuilder.rb +32 -9
- data/test/test_pdfmaker.rb +18 -1
- data/test/test_pdfmaker_cmd.rb +100 -6
- data/test/test_plaintextbuilder.rb +371 -25
- data/test/test_preprocessor.rb +2 -16
- data/test/test_rstbuilder.rb +249 -26
- data/test/test_textmaker_cmd.rb +54 -0
- data/test/test_textutils.rb +109 -2
- data/test/test_topbuilder.rb +546 -31
- data/test/test_update.rb +17 -8
- data/test/test_webtocprinter.rb +66 -34
- data/test/test_yamlloader.rb +13 -0
- data/vendor/jsclasses/LICENSE +1 -1
- data/vendor/jsclasses/jis/jsarticle.cls +53 -14
- data/vendor/jsclasses/jis/jsbook.cls +53 -14
- data/vendor/jsclasses/jis/jsclasses.dtx +84 -25
- data/vendor/jsclasses/jis/jslogo.dtx +4 -4
- data/vendor/jsclasses/jis/jslogo.sty +3 -3
- data/vendor/jsclasses/jis/jspf.cls +52 -13
- data/vendor/jsclasses/jis/jsreport.cls +53 -14
- data/vendor/jsclasses/jis/kiyou.cls +53 -14
- data/vendor/jsclasses/jis/okumacro.dtx +4 -5
- data/vendor/jsclasses/jis/okumacro.sty +3 -4
- data/vendor/jsclasses/jsarticle.cls +53 -14
- data/vendor/jsclasses/jsbook.cls +53 -14
- data/vendor/jsclasses/jsclasses.dtx +84 -25
- data/vendor/jsclasses/jsclasses.pdf +0 -0
- data/vendor/jsclasses/jslogo.dtx +4 -4
- data/vendor/jsclasses/jslogo.pdf +0 -0
- data/vendor/jsclasses/jslogo.sty +3 -3
- data/vendor/jsclasses/jspf.cls +52 -13
- data/vendor/jsclasses/jsreport.cls +53 -14
- data/vendor/jsclasses/kiyou.cls +53 -14
- data/vendor/jsclasses/okumacro.dtx +4 -5
- data/vendor/jsclasses/okumacro.pdf +0 -0
- data/vendor/jsclasses/okumacro.sty +3 -4
- metadata +55 -10
- data/lib/review/tocparser.rb +0 -271
- data/samples/syntax-book/review-ext.rb +0 -14
- data/test/test_tocparser.rb +0 -25
data/test/test_update.rb
CHANGED
@@ -14,7 +14,7 @@ class UpdateTest < Test::Unit::TestCase
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def teardown
|
17
|
-
FileUtils.rm_rf
|
17
|
+
FileUtils.rm_rf(@tmpdir)
|
18
18
|
end
|
19
19
|
|
20
20
|
def test_broken_yml
|
@@ -96,19 +96,28 @@ EOT
|
|
96
96
|
@u.instance_eval{ @logger = ReVIEW::Logger.new(io) }
|
97
97
|
@u.parse_ymls(@tmpdir)
|
98
98
|
@u.update_version
|
99
|
-
assert_match(/Update 'review_version' to '
|
100
|
-
assert_equal 'review_version:
|
99
|
+
assert_match(/Update 'review_version' to '4.0'/, io.string)
|
100
|
+
assert_equal 'review_version: 4.0', File.read(File.join(@tmpdir, 'config.yml')).match(/review_version:.*$/).to_s
|
101
|
+
|
102
|
+
File.write(File.join(@tmpdir, 'config.yml'), "review_version: 3.0\n")
|
103
|
+
|
104
|
+
io = StringIO.new
|
105
|
+
@u.instance_eval{ @logger = ReVIEW::Logger.new(io) }
|
106
|
+
@u.parse_ymls(@tmpdir)
|
107
|
+
@u.update_version
|
108
|
+
assert_match(/Update 'review_version' to '4.0'/, io.string)
|
109
|
+
assert_equal 'review_version: 4.0', File.read(File.join(@tmpdir, 'config.yml')).match(/review_version:.*$/).to_s
|
101
110
|
end
|
102
111
|
|
103
112
|
def test_update_version_current
|
104
|
-
File.write(File.join(@tmpdir, 'config.yml'), "review_version:
|
113
|
+
File.write(File.join(@tmpdir, 'config.yml'), "review_version: 4.0\n")
|
105
114
|
|
106
115
|
io = StringIO.new
|
107
116
|
@u.instance_eval{ @logger = ReVIEW::Logger.new(io) }
|
108
117
|
@u.parse_ymls(@tmpdir)
|
109
118
|
@u.update_version
|
110
119
|
assert_equal '', io.string
|
111
|
-
assert_equal 'review_version:
|
120
|
+
assert_equal 'review_version: 4.0', File.read(File.join(@tmpdir, 'config.yml')).match(/review_version:.*$/).to_s
|
112
121
|
end
|
113
122
|
|
114
123
|
def test_update_version_newer
|
@@ -118,7 +127,7 @@ EOT
|
|
118
127
|
@u.instance_eval{ @logger = ReVIEW::Logger.new(io) }
|
119
128
|
@u.parse_ymls(@tmpdir)
|
120
129
|
@u.update_version
|
121
|
-
assert_match(/Update 'review_version' to '
|
130
|
+
assert_match(/Update 'review_version' to '4.0'/, io.string)
|
122
131
|
assert_equal 'review_version: 99.0', File.read(File.join(@tmpdir, 'config.yml')).match(/review_version:.*$/).to_s
|
123
132
|
end
|
124
133
|
|
@@ -143,7 +152,7 @@ EOT
|
|
143
152
|
|
144
153
|
def test_update_rakefile_different
|
145
154
|
File.write(File.join(@tmpdir, 'Rakefile'), '')
|
146
|
-
FileUtils.mkdir_p
|
155
|
+
FileUtils.mkdir_p(File.join(@tmpdir, 'lib/tasks'))
|
147
156
|
File.write(File.join(@tmpdir, 'lib/tasks/review.rake'), '')
|
148
157
|
io = StringIO.new
|
149
158
|
@u.instance_eval{ @logger = ReVIEW::Logger.new(io) }
|
@@ -389,7 +398,7 @@ EOT
|
|
389
398
|
assert_match(/has options/, io.string)
|
390
399
|
cont = <<EOT
|
391
400
|
texcommand: "/Program Files/up-latex"
|
392
|
-
texoptions: "-interaction=nonstopmode -file-line-error --shell-escape -v"
|
401
|
+
texoptions: "-interaction=nonstopmode -file-line-error -halt-on-error --shell-escape -v"
|
393
402
|
EOT
|
394
403
|
assert_equal cont, File.read(File.join(@tmpdir, 'config.yml'))
|
395
404
|
end
|
data/test/test_webtocprinter.rb
CHANGED
@@ -35,8 +35,8 @@ EOB
|
|
35
35
|
expect = <<-EOB
|
36
36
|
<ul class="book-toc">
|
37
37
|
<li><a href="index.html">TOP</a></li>
|
38
|
-
<li><a href="ch1.html"
|
39
|
-
<li><a href="ch2.html"
|
38
|
+
<li><a href="ch1.html">第1章 ch. 1</a></li>
|
39
|
+
<li><a href="ch2.html">第2章 ch. 2</a></li>
|
40
40
|
</ul>
|
41
41
|
EOB
|
42
42
|
assert_equal expect, str
|
@@ -58,16 +58,12 @@ EOB
|
|
58
58
|
expect = <<-EOB
|
59
59
|
<ul class="book-toc">
|
60
60
|
<li><a href="index.html">TOP</a></li>
|
61
|
-
<li
|
62
|
-
<ul>
|
63
|
-
|
64
|
-
|
65
|
-
</li>
|
66
|
-
|
67
|
-
<ul>
|
68
|
-
<li><a href="ch2.html">2 ch. 2</a></li>
|
69
|
-
</ul>
|
70
|
-
</li>
|
61
|
+
<li>第I部 part1
|
62
|
+
<ul><li><a href="ch1.html">第1章 ch. 1</a></li>
|
63
|
+
</ul></li>
|
64
|
+
<li>第II部 part2
|
65
|
+
<ul><li><a href="ch2.html">第2章 ch. 2</a></li>
|
66
|
+
</ul></li>
|
71
67
|
</ul>
|
72
68
|
EOB
|
73
69
|
assert_equal expect, str
|
@@ -91,16 +87,12 @@ EOB
|
|
91
87
|
expect = <<-EOB
|
92
88
|
<ul class="book-toc">
|
93
89
|
<li><a href="index.html">TOP</a></li>
|
94
|
-
<li><a href="p1.html"
|
95
|
-
<ul>
|
96
|
-
|
97
|
-
</
|
98
|
-
</li>
|
99
|
-
|
100
|
-
<ul>
|
101
|
-
<li><a href="ch2.html">2 ch. 2</a></li>
|
102
|
-
</ul>
|
103
|
-
</li>
|
90
|
+
<li><a href="p1.html">第I部 This is PART1</a>
|
91
|
+
<ul><li><a href="ch1.html">第1章 ch. 1</a></li>
|
92
|
+
</ul></li>
|
93
|
+
<li><a href="p2.html">第II部 This is PART2</a>
|
94
|
+
<ul><li><a href="ch2.html">第2章 ch. 2</a></li>
|
95
|
+
</ul></li>
|
104
96
|
</ul>
|
105
97
|
EOB
|
106
98
|
assert_equal expect, str
|
@@ -141,21 +133,61 @@ EOB
|
|
141
133
|
<li><a href="index.html">TOP</a></li>
|
142
134
|
<li><a href="pre1.html">PRE1</a></li>
|
143
135
|
<li><a href="pre2.html">PRE2</a></li>
|
144
|
-
<li><a href="part1.html"
|
145
|
-
<ul>
|
146
|
-
|
147
|
-
</
|
148
|
-
</li>
|
149
|
-
|
150
|
-
<
|
151
|
-
<li><a href="
|
152
|
-
</ul>
|
153
|
-
</li>
|
154
|
-
<li><a href="app1.html">APP1</a></li>
|
155
|
-
<li><a href="app2.html">APP2</a></li>
|
136
|
+
<li><a href="part1.html">第I部 PART1</a>
|
137
|
+
<ul><li><a href="ch1.html">第1章 ch. 1</a></li>
|
138
|
+
</ul></li>
|
139
|
+
<li><a href="part2.html">第II部 PART2</a>
|
140
|
+
<ul><li><a href="ch2.html">第2章 ch. 2</a></li>
|
141
|
+
</ul></li>
|
142
|
+
<li><a href="app1.html">付録A APP1</a></li>
|
143
|
+
<li><a href="app2.html">付録B APP2</a></li>
|
156
144
|
<li><a href="post1.html">POST1</a></li>
|
157
145
|
<li><a href="post2.html">POST2</a></li>
|
158
146
|
</ul>
|
147
|
+
EOB
|
148
|
+
assert_equal expect, str
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
def test_webtocprinter_nochapter
|
153
|
+
catalog_yml = <<-EOB
|
154
|
+
CHAPS:
|
155
|
+
EOB
|
156
|
+
mktmpbookdir 'catalog.yml' => catalog_yml do |_dir, book, _files|
|
157
|
+
str = WEBTOCPrinter.book_to_string(book)
|
158
|
+
expect = <<-EOB
|
159
|
+
<ul class="book-toc">
|
160
|
+
<li><a href="index.html">TOP</a></li>
|
161
|
+
</ul>
|
162
|
+
EOB
|
163
|
+
assert_equal expect, str
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
def test_webtocprinter_noheadline
|
168
|
+
catalog_yml = <<-EOB
|
169
|
+
CHAPS:
|
170
|
+
- ch1.re
|
171
|
+
- ch2.re
|
172
|
+
- ch3.re
|
173
|
+
- ch4.re
|
174
|
+
EOB
|
175
|
+
mktmpbookdir 'catalog.yml' => catalog_yml,
|
176
|
+
'ch1.re' => "A\n",
|
177
|
+
'ch2.re' => "B\n\n= C\n== D\n",
|
178
|
+
'ch3.re' => "//emlist{\nLIST\n//}\n",
|
179
|
+
'ch4.re' => "==[column] E\n\n= F" do |_dir, book, _files|
|
180
|
+
str = WEBTOCPrinter.book_to_string(book)
|
181
|
+
expect = <<-EOB
|
182
|
+
<ul class="book-toc">
|
183
|
+
<li><a href="index.html">TOP</a></li>
|
184
|
+
<li><a href="ch1.html">-</a></li>
|
185
|
+
<li><a href="ch2.html">-</a></li>
|
186
|
+
<li><a href="ch2.html">第2章 C</a></li>
|
187
|
+
<li><a href="ch3.html">-</a></li>
|
188
|
+
<li><a href="ch4.html">-</a></li>
|
189
|
+
<li><a href="ch4.html">第4章 F</a></li>
|
190
|
+
</ul>
|
159
191
|
EOB
|
160
192
|
assert_equal expect, str
|
161
193
|
end
|
data/test/test_yamlloader.rb
CHANGED
@@ -184,4 +184,17 @@ EOB
|
|
184
184
|
yaml)
|
185
185
|
end
|
186
186
|
end
|
187
|
+
|
188
|
+
def test_empty_file
|
189
|
+
Dir.mktmpdir do |dir|
|
190
|
+
yaml_file = File.join(dir, 'test.yml')
|
191
|
+
File.open(yaml_file, 'w') do |f|
|
192
|
+
f.write <<EOB
|
193
|
+
#
|
194
|
+
EOB
|
195
|
+
end
|
196
|
+
e = assert_raise(RuntimeError) { @loader.load_file(yaml_file) }
|
197
|
+
assert_match('test.yml is malformed.', e.message)
|
198
|
+
end
|
199
|
+
end
|
187
200
|
end
|
data/vendor/jsclasses/LICENSE
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Copyright 1995-1999 ASCII MEDIA WORKS
|
2
2
|
Copyright 1999-2016 Haruhiko Okumura
|
3
|
-
Copyright 2016-
|
3
|
+
Copyright 2016-2020 Japanese TeX Development Community
|
4
4
|
All rights reserved.
|
5
5
|
|
6
6
|
Redistribution and use in source and binary forms, with or without
|
@@ -22,7 +22,7 @@
|
|
22
22
|
%% in the same archive or directory.)
|
23
23
|
\NeedsTeXFormat{pLaTeX2e}
|
24
24
|
\ProvidesClass{jsarticle}
|
25
|
-
[
|
25
|
+
[2020/02/02 jsclasses (okumura, texjporg)]
|
26
26
|
\def\jsc@clsname{jsarticle}
|
27
27
|
\newif\ifjsc@needsp@tch
|
28
28
|
\jsc@needsp@tchfalse
|
@@ -460,6 +460,7 @@
|
|
460
460
|
\DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
|
461
461
|
\DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{}
|
462
462
|
\DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{}
|
463
|
+
\ifx\@rmfamilyhook\@undefined % old
|
463
464
|
\DeclareRobustCommand\rmfamily
|
464
465
|
{\not@math@alphabet\rmfamily\mathrm
|
465
466
|
\romanfamily\rmdefault\kanjifamily\mcdefault\selectfont}
|
@@ -469,6 +470,25 @@
|
|
469
470
|
\DeclareRobustCommand\ttfamily
|
470
471
|
{\not@math@alphabet\ttfamily\mathtt
|
471
472
|
\romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
|
473
|
+
\AtBeginDocument{%
|
474
|
+
\ifx\mweights@init\@undefined\else % mweights.sty is loaded
|
475
|
+
% my definitions above should have been overwritten, recover it!
|
476
|
+
% \selectfont is executed twice but I don't care about speed...
|
477
|
+
\expandafter\g@addto@macro\csname rmfamily \endcsname
|
478
|
+
{\kanjifamily\mcdefault\selectfont}%
|
479
|
+
\expandafter\g@addto@macro\csname sffamily \endcsname
|
480
|
+
{\kanjifamily\gtdefault\selectfont}%
|
481
|
+
\expandafter\g@addto@macro\csname ttfamily \endcsname
|
482
|
+
{\kanjifamily\gtdefault\selectfont}%
|
483
|
+
\fi}
|
484
|
+
\else % 2020-02-02
|
485
|
+
\g@addto@macro\@rmfamilyhook
|
486
|
+
{\prepare@family@series@update@kanji{mc}\mcdefault}
|
487
|
+
\g@addto@macro\@sffamilyhook
|
488
|
+
{\prepare@family@series@update@kanji{gt}\gtdefault}
|
489
|
+
\g@addto@macro\@ttfamilyhook
|
490
|
+
{\prepare@family@series@update@kanji{gt}\gtdefault}
|
491
|
+
\fi
|
472
492
|
\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
|
473
493
|
\DeclareRobustCommand\textmc[1]{%
|
474
494
|
\relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}}
|
@@ -1370,11 +1390,11 @@
|
|
1370
1390
|
\renewcommand{\theenumiii}{\@roman\c@enumiii}
|
1371
1391
|
\renewcommand{\theenumiv}{\@Alph\c@enumiv}
|
1372
1392
|
\newcommand{\labelenumi}{\theenumi.}
|
1373
|
-
\newcommand{\labelenumii}{\inhibitglue$B!J(B\theenumii$B!K(B\inhibitglue}
|
1393
|
+
\newcommand{\labelenumii}{\inhibitglue $B!J(B\theenumii $B!K(B\inhibitglue}
|
1374
1394
|
\newcommand{\labelenumiii}{\theenumiii.}
|
1375
1395
|
\newcommand{\labelenumiv}{\theenumiv.}
|
1376
1396
|
\renewcommand{\p@enumii}{\theenumi}
|
1377
|
-
\renewcommand{\p@enumiii}{\theenumi\inhibitglue$B!J(B\theenumii$B!K(B}
|
1397
|
+
\renewcommand{\p@enumiii}{\theenumi\inhibitglue $B!J(B\theenumii $B!K(B}
|
1378
1398
|
\renewcommand{\p@enumiv}{\p@enumiii\theenumiii}
|
1379
1399
|
\newcommand\labelitemi{\textbullet}
|
1380
1400
|
\newcommand\labelitemii{\normalfont\bfseries \textendash}
|
@@ -1519,7 +1539,7 @@
|
|
1519
1539
|
\vskip\abovecaptionskip
|
1520
1540
|
\sbox\@tempboxa{#1\hskip1zw\relax #2}%
|
1521
1541
|
\ifdim \wd\@tempboxa <\hsize \centering \fi
|
1522
|
-
#1\hskip1zw\relax
|
1542
|
+
#1{\hskip1zw\relax}#2\par
|
1523
1543
|
\vskip\belowcaptionskip}}
|
1524
1544
|
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
|
1525
1545
|
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
|
@@ -1885,23 +1905,42 @@
|
|
1885
1905
|
\def\$B@>Nq(B{\$B@>Nq(Btrue}
|
1886
1906
|
\def\$BOBNq(B{\$B@>Nq(Bfalse}
|
1887
1907
|
\newcount\heisei \heisei\year \advance\heisei-1988\relax
|
1908
|
+
\def\pltx@today@year@#1{%
|
1909
|
+
\ifnum\numexpr\year-#1=1 $B85(B\else
|
1910
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi
|
1911
|
+
\kansuji\numexpr\year-#1\relax
|
1912
|
+
\else
|
1913
|
+
\number\numexpr\year-#1\relax\nobreak
|
1914
|
+
\fi
|
1915
|
+
\fi $BG/(B
|
1916
|
+
}
|
1917
|
+
\def\pltx@today@year{%
|
1918
|
+
\ifnum\numexpr\year*10000+\month*100+\day<19890108
|
1919
|
+
$B><OB(B\pltx@today@year@{1925}%
|
1920
|
+
\else\ifnum\numexpr\year*10000+\month*100+\day<20190501
|
1921
|
+
$BJ?@.(B\pltx@today@year@{1988}%
|
1922
|
+
\else
|
1923
|
+
$BNaOB(B\pltx@today@year@{2018}%
|
1924
|
+
\fi\fi}
|
1888
1925
|
\def\today{%
|
1889
1926
|
\if@english
|
1890
1927
|
\ifcase\month\or
|
1891
1928
|
January\or February\or March\or April\or May\or June\or
|
1892
1929
|
July\or August\or September\or October\or November\or December\fi
|
1893
1930
|
\space\number\day, \number\year
|
1931
|
+
\else\if$B@>Nq(B
|
1932
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi \kansuji\year
|
1933
|
+
\else\number\year\nobreak\fi $BG/(B
|
1894
1934
|
\else
|
1895
|
-
\
|
1896
|
-
|
1897
|
-
|
1898
|
-
|
1899
|
-
\
|
1900
|
-
|
1901
|
-
|
1902
|
-
|
1903
|
-
|
1904
|
-
\fi}
|
1935
|
+
\pltx@today@year
|
1936
|
+
\fi
|
1937
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi
|
1938
|
+
\kansuji\month $B7n(B
|
1939
|
+
\kansuji\day $BF|(B
|
1940
|
+
\else
|
1941
|
+
\number\month\nobreak $B7n(B
|
1942
|
+
\number\day\nobreak $BF|(B
|
1943
|
+
\fi\fi}
|
1905
1944
|
\hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script}
|
1906
1945
|
\if@slide \pagestyle{empty} \else \pagestyle{plain} \fi
|
1907
1946
|
\pagenumbering{arabic}
|
@@ -22,7 +22,7 @@
|
|
22
22
|
%% in the same archive or directory.)
|
23
23
|
\NeedsTeXFormat{pLaTeX2e}
|
24
24
|
\ProvidesClass{jsbook}
|
25
|
-
[
|
25
|
+
[2020/02/02 jsclasses (okumura, texjporg)]
|
26
26
|
\def\jsc@clsname{jsbook}
|
27
27
|
\newif\ifjsc@needsp@tch
|
28
28
|
\jsc@needsp@tchfalse
|
@@ -465,6 +465,7 @@
|
|
465
465
|
\DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
|
466
466
|
\DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{}
|
467
467
|
\DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{}
|
468
|
+
\ifx\@rmfamilyhook\@undefined % old
|
468
469
|
\DeclareRobustCommand\rmfamily
|
469
470
|
{\not@math@alphabet\rmfamily\mathrm
|
470
471
|
\romanfamily\rmdefault\kanjifamily\mcdefault\selectfont}
|
@@ -474,6 +475,25 @@
|
|
474
475
|
\DeclareRobustCommand\ttfamily
|
475
476
|
{\not@math@alphabet\ttfamily\mathtt
|
476
477
|
\romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
|
478
|
+
\AtBeginDocument{%
|
479
|
+
\ifx\mweights@init\@undefined\else % mweights.sty is loaded
|
480
|
+
% my definitions above should have been overwritten, recover it!
|
481
|
+
% \selectfont is executed twice but I don't care about speed...
|
482
|
+
\expandafter\g@addto@macro\csname rmfamily \endcsname
|
483
|
+
{\kanjifamily\mcdefault\selectfont}%
|
484
|
+
\expandafter\g@addto@macro\csname sffamily \endcsname
|
485
|
+
{\kanjifamily\gtdefault\selectfont}%
|
486
|
+
\expandafter\g@addto@macro\csname ttfamily \endcsname
|
487
|
+
{\kanjifamily\gtdefault\selectfont}%
|
488
|
+
\fi}
|
489
|
+
\else % 2020-02-02
|
490
|
+
\g@addto@macro\@rmfamilyhook
|
491
|
+
{\prepare@family@series@update@kanji{mc}\mcdefault}
|
492
|
+
\g@addto@macro\@sffamilyhook
|
493
|
+
{\prepare@family@series@update@kanji{gt}\gtdefault}
|
494
|
+
\g@addto@macro\@ttfamilyhook
|
495
|
+
{\prepare@family@series@update@kanji{gt}\gtdefault}
|
496
|
+
\fi
|
477
497
|
\ifx\DeclareFixJFMCJKTextFontCommand\@undefined
|
478
498
|
\DeclareRobustCommand\textmc[1]{%
|
479
499
|
\relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}}
|
@@ -1477,11 +1497,11 @@
|
|
1477
1497
|
\renewcommand{\theenumiii}{\@roman\c@enumiii}
|
1478
1498
|
\renewcommand{\theenumiv}{\@Alph\c@enumiv}
|
1479
1499
|
\newcommand{\labelenumi}{\theenumi.}
|
1480
|
-
\newcommand{\labelenumii}{\inhibitglue$B!J(B\theenumii$B!K(B\inhibitglue}
|
1500
|
+
\newcommand{\labelenumii}{\inhibitglue $B!J(B\theenumii $B!K(B\inhibitglue}
|
1481
1501
|
\newcommand{\labelenumiii}{\theenumiii.}
|
1482
1502
|
\newcommand{\labelenumiv}{\theenumiv.}
|
1483
1503
|
\renewcommand{\p@enumii}{\theenumi}
|
1484
|
-
\renewcommand{\p@enumiii}{\theenumi\inhibitglue$B!J(B\theenumii$B!K(B}
|
1504
|
+
\renewcommand{\p@enumiii}{\theenumi\inhibitglue $B!J(B\theenumii $B!K(B}
|
1485
1505
|
\renewcommand{\p@enumiv}{\p@enumiii\theenumiii}
|
1486
1506
|
\newcommand\labelitemi{\textbullet}
|
1487
1507
|
\newcommand\labelitemii{\normalfont\bfseries \textendash}
|
@@ -1588,7 +1608,7 @@
|
|
1588
1608
|
\vskip\abovecaptionskip
|
1589
1609
|
\sbox\@tempboxa{#1\hskip1zw\relax #2}%
|
1590
1610
|
\ifdim \wd\@tempboxa <\hsize \centering \fi
|
1591
|
-
#1\hskip1zw\relax
|
1611
|
+
#1{\hskip1zw\relax}#2\par
|
1592
1612
|
\vskip\belowcaptionskip}}
|
1593
1613
|
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
|
1594
1614
|
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
|
@@ -1976,23 +1996,42 @@
|
|
1976
1996
|
\def\$B@>Nq(B{\$B@>Nq(Btrue}
|
1977
1997
|
\def\$BOBNq(B{\$B@>Nq(Bfalse}
|
1978
1998
|
\newcount\heisei \heisei\year \advance\heisei-1988\relax
|
1999
|
+
\def\pltx@today@year@#1{%
|
2000
|
+
\ifnum\numexpr\year-#1=1 $B85(B\else
|
2001
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi
|
2002
|
+
\kansuji\numexpr\year-#1\relax
|
2003
|
+
\else
|
2004
|
+
\number\numexpr\year-#1\relax\nobreak
|
2005
|
+
\fi
|
2006
|
+
\fi $BG/(B
|
2007
|
+
}
|
2008
|
+
\def\pltx@today@year{%
|
2009
|
+
\ifnum\numexpr\year*10000+\month*100+\day<19890108
|
2010
|
+
$B><OB(B\pltx@today@year@{1925}%
|
2011
|
+
\else\ifnum\numexpr\year*10000+\month*100+\day<20190501
|
2012
|
+
$BJ?@.(B\pltx@today@year@{1988}%
|
2013
|
+
\else
|
2014
|
+
$BNaOB(B\pltx@today@year@{2018}%
|
2015
|
+
\fi\fi}
|
1979
2016
|
\def\today{%
|
1980
2017
|
\if@english
|
1981
2018
|
\ifcase\month\or
|
1982
2019
|
January\or February\or March\or April\or May\or June\or
|
1983
2020
|
July\or August\or September\or October\or November\or December\fi
|
1984
2021
|
\space\number\day, \number\year
|
2022
|
+
\else\if$B@>Nq(B
|
2023
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi \kansuji\year
|
2024
|
+
\else\number\year\nobreak\fi $BG/(B
|
1985
2025
|
\else
|
1986
|
-
\
|
1987
|
-
|
1988
|
-
|
1989
|
-
|
1990
|
-
\
|
1991
|
-
|
1992
|
-
|
1993
|
-
|
1994
|
-
|
1995
|
-
\fi}
|
2026
|
+
\pltx@today@year
|
2027
|
+
\fi
|
2028
|
+
\ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi
|
2029
|
+
\kansuji\month $B7n(B
|
2030
|
+
\kansuji\day $BF|(B
|
2031
|
+
\else
|
2032
|
+
\number\month\nobreak $B7n(B
|
2033
|
+
\number\day\nobreak $BF|(B
|
2034
|
+
\fi\fi}
|
1996
2035
|
\hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script}
|
1997
2036
|
\if@report \pagestyle{plain} \else \pagestyle{headings} \fi
|
1998
2037
|
\pagenumbering{arabic}
|