review 3.1.0 → 5.0.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 +45 -0
- data/.github/workflows/ruby.yml +27 -0
- data/.rubocop.yml +161 -34
- data/.travis.yml +16 -15
- data/Dockerfile +21 -5
- data/NEWS.ja.md +394 -0
- data/NEWS.md +395 -1
- data/README.md +10 -7
- data/appveyor.yml +1 -3
- data/bin/review-catalog-converter +5 -5
- data/bin/review-check +10 -12
- data/bin/review-checkdep +2 -2
- data/bin/review-compile +17 -23
- data/bin/review-epubmaker +3 -35
- data/bin/review-idgxmlmaker +16 -0
- data/bin/review-index +2 -89
- data/bin/review-preproc +13 -13
- data/bin/review-validate +4 -4
- data/bin/review-vol +4 -78
- data/doc/config.yml.sample +47 -12
- data/doc/config.yml.sample-simple +3 -2
- data/doc/format.ja.md +120 -17
- data/doc/format.md +119 -27
- data/doc/makeindex.ja.md +2 -2
- data/doc/pdfmaker.ja.md +43 -1
- data/doc/pdfmaker.md +42 -1
- data/doc/quickstart.ja.md +45 -25
- data/doc/quickstart.md +37 -16
- data/lib/epubmaker/content.rb +3 -2
- data/lib/epubmaker/epubcommon.rb +34 -27
- data/lib/epubmaker/epubv2.rb +5 -6
- data/lib/epubmaker/epubv3.rb +21 -18
- data/lib/epubmaker/producer.rb +2 -1
- data/lib/review/book.rb +2 -2
- data/lib/review/book/base.rb +91 -96
- data/lib/review/book/bib.rb +21 -0
- data/lib/review/book/book_unit.rb +155 -0
- data/lib/review/book/chapter.rb +48 -29
- data/lib/review/book/index.rb +46 -240
- data/lib/review/book/index/item.rb +46 -0
- data/lib/review/book/page_metric.rb +7 -7
- data/lib/review/book/part.rb +45 -10
- data/lib/review/book/volume.rb +4 -5
- data/lib/review/builder.rb +172 -56
- data/lib/review/catalog.rb +14 -17
- data/lib/review/compiler.rb +219 -121
- data/lib/review/configure.rb +39 -7
- data/lib/review/converter.rb +1 -1
- data/lib/review/epub2html.rb +43 -5
- data/lib/review/epubmaker.rb +69 -27
- data/lib/review/extentions/string.rb +0 -4
- data/lib/review/htmlbuilder.rb +112 -101
- data/lib/review/htmlutils.rb +9 -13
- data/lib/review/i18n.rb +3 -3
- data/lib/review/idgxmlbuilder.rb +202 -78
- data/lib/review/idgxmlmaker.rb +186 -0
- data/lib/review/index_builder.rb +653 -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 +129 -46
- data/lib/review/latexbuilder.rb +255 -92
- 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 +35 -5
- data/lib/review/markdownbuilder.rb +50 -38
- data/lib/review/md2inaobuilder.rb +3 -5
- data/lib/review/pdfmaker.rb +60 -57
- data/lib/review/plaintextbuilder.rb +154 -87
- data/lib/review/preprocessor.rb +20 -42
- data/lib/review/rstbuilder.rb +57 -38
- data/lib/review/sec_counter.rb +13 -0
- data/lib/review/textmaker.rb +23 -15
- data/lib/review/textutils.rb +76 -2
- data/lib/review/tocprinter.rb +230 -102
- data/lib/review/topbuilder.rb +139 -60
- data/lib/review/update.rb +24 -24
- data/lib/review/version.rb +1 -1
- data/lib/review/volumeprinter.rb +98 -0
- data/lib/review/webmaker.rb +20 -24
- 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/Gemfile +1 -1
- 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 +39 -25
- data/templates/latex/layout.tex.erb +1 -0
- data/templates/latex/review-jlreq/README.md +3 -1
- data/templates/latex/review-jlreq/review-base.sty +161 -50
- data/templates/latex/review-jlreq/review-jlreq.cls +21 -22
- data/templates/latex/review-jlreq/review-style.sty +4 -1
- data/templates/latex/review-jsbook/README.md +46 -5
- data/templates/latex/review-jsbook/review-base.sty +123 -35
- data/templates/latex/review-jsbook/review-jsbook.cls +10 -4
- 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 +3 -3
- data/test/assets/test_template.tex +19 -7
- data/test/assets/test_template_backmatter.tex +19 -7
- data/test/book_test_helper.rb +11 -5
- data/test/test_book.rb +124 -79
- data/test/test_book_chapter.rb +97 -54
- data/test/test_book_part.rb +3 -3
- data/test/test_builder.rb +38 -13
- data/test/test_catalog.rb +24 -42
- data/test/test_catalog_converter_cmd.rb +1 -1
- data/test/test_converter.rb +1 -0
- data/test/test_epub3maker.rb +2 -2
- data/test/test_epubmaker.rb +8 -0
- data/test/test_epubmaker_cmd.rb +14 -7
- data/test/test_helper.rb +18 -7
- data/test/test_htmlbuilder.rb +1491 -205
- data/test/test_htmlutils.rb +0 -12
- data/test/test_i18n.rb +37 -37
- data/test/test_idgxmlbuilder.rb +744 -42
- data/test/test_idgxmlmaker_cmd.rb +46 -0
- data/test/test_image_finder.rb +52 -70
- data/test/test_index.rb +94 -44
- data/test/test_indexbuilder.rb +52 -0
- data/test/test_latexbuilder.rb +1784 -161
- data/test/test_latexbuilder_v2.rb +671 -102
- data/test/test_logger.rb +17 -4
- data/test/test_makerhelper.rb +2 -14
- data/test/test_markdownbuilder.rb +137 -16
- data/test/test_md2inaobuilder.rb +32 -9
- data/test/test_pdfmaker.rb +30 -12
- data/test/test_pdfmaker_cmd.rb +100 -6
- data/test/test_plaintextbuilder.rb +791 -30
- data/test/test_preprocessor.rb +2 -16
- data/test/test_review_ext.rb +2 -1
- data/test/test_rstbuilder.rb +274 -27
- data/test/test_sec_counter.rb +156 -0
- data/test/test_textmaker_cmd.rb +54 -0
- data/test/test_textutils.rb +109 -2
- data/test/test_topbuilder.rb +724 -34
- data/test/test_update.rb +20 -11
- data/test/test_webtocprinter.rb +75 -43
- data/test/test_yamlloader.rb +13 -0
- data/vendor/gentombow/LICENSE +1 -1
- data/vendor/gentombow/Makefile +0 -1
- data/vendor/gentombow/bounddvi-en.pdf +0 -0
- data/vendor/gentombow/bounddvi-en.tex +1 -0
- data/vendor/gentombow/bounddvi.pdf +0 -0
- data/vendor/gentombow/bounddvi.sty +30 -7
- data/vendor/gentombow/bounddvi.tex +1 -0
- data/vendor/gentombow/create_archive.sh +1 -0
- data/vendor/gentombow/gentombow-ja.pdf +0 -0
- data/vendor/gentombow/gentombow-ja.tex +9 -0
- data/vendor/gentombow/gentombow.pdf +0 -0
- data/vendor/gentombow/gentombow.sty +32 -10
- data/vendor/gentombow/gentombow.tex +8 -0
- data/vendor/gentombow/tests/gentombow-01-pdfx.tex +8 -0
- data/vendor/gentombow/tests/gentombow-02-pdfx.tex +8 -0
- data/vendor/jsclasses/LICENSE +1 -1
- data/vendor/jsclasses/Makefile +3 -2
- data/vendor/jsclasses/create_archive.sh +5 -5
- data/vendor/jsclasses/jis/Makefile +3 -2
- data/vendor/jsclasses/jis/jsarticle.cls +74 -31
- data/vendor/jsclasses/jis/jsbook.cls +74 -31
- data/vendor/jsclasses/jis/jsclasses.dtx +176 -36
- data/vendor/jsclasses/jis/jsclasses.ins +15 -5
- data/vendor/jsclasses/jis/jslogo.dtx +4 -4
- data/vendor/jsclasses/jis/jslogo.ins +9 -0
- data/vendor/jsclasses/jis/jslogo.sty +4 -16
- data/vendor/jsclasses/jis/jspf.cls +73 -30
- data/vendor/jsclasses/jis/jsreport.cls +74 -31
- data/vendor/jsclasses/jis/jsverb.ins +9 -0
- data/vendor/jsclasses/jis/jsverb.sty +1 -13
- data/vendor/jsclasses/jis/kiyou.cls +74 -31
- data/vendor/jsclasses/jis/minijs.sty +65 -22
- data/vendor/jsclasses/jis/okumacro.dtx +4 -5
- data/vendor/jsclasses/jis/okumacro.ins +9 -0
- data/vendor/jsclasses/jis/okumacro.sty +4 -17
- data/vendor/jsclasses/jis/okuverb.ins +9 -0
- data/vendor/jsclasses/jis/okuverb.sty +1 -13
- data/vendor/jsclasses/jis/winjis.sty +23 -19
- data/vendor/jsclasses/jsarticle.cls +74 -31
- data/vendor/jsclasses/jsbook.cls +74 -31
- data/vendor/jsclasses/jsclasses.dtx +176 -36
- data/vendor/jsclasses/jsclasses.ins +15 -5
- data/vendor/jsclasses/jsclasses.pdf +0 -0
- data/vendor/jsclasses/jslogo.dtx +4 -4
- data/vendor/jsclasses/jslogo.ins +9 -0
- data/vendor/jsclasses/jslogo.pdf +0 -0
- data/vendor/jsclasses/jslogo.sty +4 -16
- data/vendor/jsclasses/jspf.cls +73 -30
- data/vendor/jsclasses/jsreport.cls +74 -31
- data/vendor/jsclasses/jsverb.ins +9 -0
- data/vendor/jsclasses/jsverb.pdf +0 -0
- data/vendor/jsclasses/jsverb.sty +1 -13
- data/vendor/jsclasses/kiyou.cls +74 -31
- data/vendor/jsclasses/minijs.sty +68 -22
- data/vendor/jsclasses/okumacro.dtx +4 -5
- data/vendor/jsclasses/okumacro.ins +9 -0
- data/vendor/jsclasses/okumacro.pdf +0 -0
- data/vendor/jsclasses/okumacro.sty +4 -17
- data/vendor/jsclasses/okuverb.ins +9 -0
- data/vendor/jsclasses/okuverb.pdf +0 -0
- data/vendor/jsclasses/okuverb.sty +1 -13
- data/vendor/jsclasses/tests/relfont.tex +10 -0
- data/vendor/jsclasses/winjis.sty +23 -19
- metadata +65 -12
- data/.rubocop_todo.yml +0 -7
- data/lib/review/book/compilable.rb +0 -173
- data/lib/review/tocparser.rb +0 -271
- data/samples/syntax-book/review-ext.rb +0 -14
- data/test/test_tocparser.rb +0 -25
@@ -38,7 +38,9 @@ texdocumentclass: ["review-jlreq", "クラスオプションたち(省略可
|
|
38
38
|
|
39
39
|
`media` の値によって表紙(config.yml の coverimage に指定した画像)の配置の有無は自動で切り替わりますが、`cover=true` とすれば必ず表紙を入れるようになります。
|
40
40
|
|
41
|
-
|
41
|
+
### 表紙画像のサイズの仕上がり紙面合わせ `cover_fit_page=<trueまたはfalse>`
|
42
|
+
|
43
|
+
上記の coverimage で指定する画像ファイルは、原寸を想定しているため、サイズが異なる場合にははみ出たり、小さすぎたりすることになります。できるだけ原寸で用意することを推奨しますが、`cover_fit_page=true` とすれば表紙画像を紙面の仕上がりサイズに合わせて拡縮します。
|
42
44
|
|
43
45
|
### 特定の用紙サイズ `paper=<用紙サイズ>`
|
44
46
|
|
@@ -1,15 +1,31 @@
|
|
1
|
+
\ProvidesClass{review-base}[2020/08/16]
|
1
2
|
% jlreq用基本設定
|
2
|
-
\
|
3
|
-
\
|
4
|
-
|
5
|
-
|
6
|
-
\
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
}
|
3
|
+
\def\recls@tmp{luatex}\ifx\recls@tmp\recls@driver
|
4
|
+
\hypersetup{
|
5
|
+
pdftitle={\review@booktitlename},
|
6
|
+
pdfauthor={\ifdefined\review@autnames\review@autnames\fi},
|
7
|
+
pdfcreator={Re:VIEW \review@reviewversion, with LaTeX}
|
8
|
+
}
|
9
|
+
\else
|
10
|
+
\def\recls@tmp{ebook}\ifx\recls@cameraready\recls@tmp
|
11
|
+
\hypersetup{
|
12
|
+
pdftitle={\review@booktitlename},
|
13
|
+
pdfauthor={\ifdefined\review@autnames\review@autnames\fi},
|
14
|
+
pdfcreator={Re:VIEW \review@reviewversion, with LaTeX}
|
15
|
+
}
|
16
|
+
\else
|
17
|
+
\newcommand*\PDFDocumentInformation[1]{%
|
18
|
+
\AtBeginShipoutFirst{\special{pdf:docinfo <<#1>>}}}
|
19
|
+
\@onlypreamble\PDFDocumentInformation
|
20
|
+
\PDFDocumentInformation{
|
21
|
+
/Title (\review@booktitlename)
|
22
|
+
\ifdefined\review@autnames /Author (\review@autnames)\fi
|
23
|
+
% /Subject ()
|
24
|
+
% /Keywords (,,)
|
25
|
+
/Creator (Re:VIEW \review@reviewversion, with LaTeX)
|
26
|
+
}
|
27
|
+
\fi
|
28
|
+
\fi
|
13
29
|
|
14
30
|
\RequirePackage{pxrubrica}
|
15
31
|
\@ifpackagelater{pxrubrica}{2017/04/20}{% true
|
@@ -18,22 +34,27 @@
|
|
18
34
|
|
19
35
|
\long\def\review@ifempty#1{\expandafter\ifx\expandafter\relax\detokenize{#1}\relax\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
|
20
36
|
|
37
|
+
%% pass bbox setting to extractbb of graphicx
|
38
|
+
\ifdefined\review@bbox
|
39
|
+
\def\Gin@pagebox{\review@bbox}
|
40
|
+
\fi
|
41
|
+
|
21
42
|
% コードリスト装飾のデフォルト
|
22
43
|
\newenvironment{reviewemlist}{%
|
23
|
-
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=black!10,colframe=black!10,boxrule=0mm,arc=0mm]\begin{alltt}}%
|
44
|
+
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=black!10,colframe=black!10,boxrule=0mm,arc=0mm]\ifdefined\reviewlistxkanjiskip\setxkanjiskip{\reviewlistxkanjiskip}\fi\begin{alltt}}%
|
24
45
|
{\end{alltt}\end{tcolorbox}}
|
25
46
|
|
26
47
|
\newenvironment{reviewlist}{%
|
27
|
-
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=white,colframe=black,boxrule=0.15mm,arc=0mm]\begin{alltt}}%
|
48
|
+
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=white,colframe=black,boxrule=0.15mm,arc=0mm]\ifdefined\reviewlistxkanjiskip\setxkanjiskip{\reviewlistxkanjiskip}\fi\begin{alltt}}%
|
28
49
|
{\end{alltt}\end{tcolorbox}}
|
29
50
|
|
30
51
|
\newenvironment{reviewsource}{%
|
31
|
-
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=white,colframe=black,boxrule=0.15mm,arc=0mm]\begin{alltt}}%
|
52
|
+
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=white,colframe=black,boxrule=0.15mm,arc=0mm]\ifdefined\reviewlistxkanjiskip\setxkanjiskip{\reviewlistxkanjiskip}\fi\begin{alltt}}%
|
32
53
|
{\end{alltt}\end{tcolorbox}}
|
33
54
|
|
34
55
|
\newenvironment{reviewcmd}{%
|
35
|
-
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=black!99,colframe=black!99,boxrule=0mm,arc=0mm]\
|
36
|
-
{\
|
56
|
+
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,colback=black!99,coltext=white,colframe=black!99,boxrule=0mm,arc=0mm]\ifdefined\reviewlistxkanjiskip\setxkanjiskip{\reviewlistxkanjiskip}\fi\begin{alltt}}%
|
57
|
+
{\end{alltt}\end{tcolorbox}}
|
37
58
|
|
38
59
|
% 図
|
39
60
|
\newenvironment{reviewimage}{%
|
@@ -47,6 +68,9 @@
|
|
47
68
|
|
48
69
|
\newcommand{\reviewindepimagecaption[2]}{\@makecaption{}{#2}}
|
49
70
|
|
71
|
+
\DeclareRobustCommand{\reviewincludegraphics}[2][]{%
|
72
|
+
\includegraphics[#1]{#2}}
|
73
|
+
|
50
74
|
% 表
|
51
75
|
\newenvironment{reviewtablesetup}{%
|
52
76
|
}{}
|
@@ -69,16 +93,26 @@
|
|
69
93
|
|
70
94
|
\newcommand{\reviewbackslash}[0]{\textbackslash{}}
|
71
95
|
|
96
|
+
% 古いjlreq.clsへの互換(当面のad-hoc対応)
|
97
|
+
\ifdefined\jlreq@@makecaption@font@setting
|
98
|
+
\else
|
99
|
+
\let\jlreq@@makecaption@font@setting\jlreq@@makecaption@font
|
100
|
+
\fi
|
101
|
+
\ifdefined\jlreq@@makecaption@label@font@setting
|
102
|
+
\else
|
103
|
+
\let\jlreq@@makecaption@label@font@setting\jlreq@@makecaption@label@font
|
104
|
+
\fi
|
105
|
+
|
72
106
|
\renewcommand{\@makecaption}[2]{{% %本当はl,c,rを[]で指定したい
|
73
107
|
\reset@font\small
|
74
108
|
\vskip\abovecaptionskip
|
75
109
|
\jlreq@ifempty{#1}{%
|
76
|
-
\sbox\@tempboxa{{\jlreq@@makecaption@font #2}}}{%
|
77
|
-
\sbox\@tempboxa{{\jlreq@@makecaption@label@font #1}\review@intn@captionprefix{\jlreq@@makecaption@font #2}}}
|
110
|
+
\sbox\@tempboxa{{\jlreq@@makecaption@font@setting #2}}}{%
|
111
|
+
\sbox\@tempboxa{{\jlreq@@makecaption@label@font@setting #1}\review@intn@captionprefix{\jlreq@@makecaption@font@setting #2}}}
|
78
112
|
\ifdim \wd\@tempboxa >\hsize
|
79
113
|
\jlreq@ifempty{#1}{%
|
80
|
-
{\jlreq@@makecaption@font #2}}{%
|
81
|
-
{\jlreq@@makecaption@label@font #1}\review@intn@captionprefix{\jlreq@@makecaption@font #2}}\relax\par
|
114
|
+
{\jlreq@@makecaption@font@setting #2}}{%
|
115
|
+
{\jlreq@@makecaption@label@font@setting #1}\review@intn@captionprefix{\jlreq@@makecaption@font@setting #2}}\relax\par
|
82
116
|
\else
|
83
117
|
\global\@minipagefalse
|
84
118
|
\hbox to\hsize{\box\@tempboxa\hfil}% キャプションLeft
|
@@ -92,18 +126,18 @@
|
|
92
126
|
\newcommand{\reviewemlistcaption}[1]{\review@commoncaption{}{#1}}
|
93
127
|
\newcommand{\reviewsourcecaption}[1]{\review@commoncaption{}{#1}}
|
94
128
|
\newcommand{\reviewcmdcaption}[1]{\review@commoncaption{}{#1}}
|
95
|
-
\newenvironment{reviewlistblock}{\list{}{\topsep.5\baselineskip \leftmargin\z@ \itemindent\z@}\item\relax}{\endlist}% 上下アキ0.5
|
129
|
+
\newenvironment{reviewlistblock}{\list{}{\topsep.5\baselineskip \leftmargin\z@ \itemindent\z@}\item\needspace{4\Cvs}\relax}{\endlist}% 上下アキ0.5
|
96
130
|
|
97
131
|
\newcommand{\reviewequationcaption}[1]{\review@commoncaption{}{#1}}
|
98
|
-
\newenvironment{reviewequationblock}{}{}
|
132
|
+
\newenvironment{reviewequationblock}{\needspace{2\Cvs}}{}
|
99
133
|
|
100
134
|
\newcommand{\reviewimageref}[2]{\review@intn@image #1}
|
101
135
|
\newcommand{\reviewtableref}[2]{\review@intn@table #1}
|
102
136
|
\newcommand{\reviewlistref}[1]{\review@intn@list #1}
|
103
137
|
\newcommand{\reviewequationref}[1]{\review@intn@equation #1}
|
104
|
-
\newcommand{\reviewbibref}[2]{#1}
|
105
|
-
\newcommand{\reviewcolumnref}[2]{
|
106
|
-
\newcommand{\reviewsecref}[2]{#1}
|
138
|
+
\newcommand{\reviewbibref}[2]{\hyperref[#2]{#1}}
|
139
|
+
\newcommand{\reviewcolumnref}[2]{#1}% XXX:ハイパーリンクにはreviewcolumn側の調整が必要
|
140
|
+
\newcommand{\reviewsecref}[2]{\hyperref[#2]{#1}}
|
107
141
|
|
108
142
|
\renewcommand{\contentsname}{\review@toctitle}
|
109
143
|
|
@@ -146,27 +180,84 @@
|
|
146
180
|
{\end{tcolorbox}}
|
147
181
|
|
148
182
|
% 書体
|
149
|
-
\
|
150
|
-
\
|
151
|
-
\
|
152
|
-
\
|
153
|
-
\
|
154
|
-
\
|
155
|
-
\
|
156
|
-
\
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
\
|
183
|
+
\DeclareRobustCommand{\reviewkw}[1]{\textbf{\textgt{#1}}}
|
184
|
+
\DeclareRobustCommand{\reviewami}[1]{#1}% FIXME
|
185
|
+
\DeclareRobustCommand{\reviewballoon}[1]{←{#1}}
|
186
|
+
\DeclareRobustCommand{\reviewem}[1]{\textbf{#1}}
|
187
|
+
\DeclareRobustCommand{\reviewstrong}[1]{\textbf{#1}}
|
188
|
+
\DeclareRobustCommand{\reviewunderline}[1]{\underline{#1}}% ulemかjumolineで上書き。デフォルトはulemにしている
|
189
|
+
\DeclareRobustCommand{\reviewit}[1]{\textit{#1}}
|
190
|
+
\DeclareRobustCommand{\reviewbold}[1]{\textbf{#1}}
|
191
|
+
|
192
|
+
% allow break line in tt
|
193
|
+
% contributed by @zr_tex8r
|
194
|
+
\g@addto@macro\pdfstringdefPreHook{% for PDF bookmarks
|
195
|
+
\def\reviewami#1{#1}
|
196
|
+
\def\reviewbreakall#1{#1}
|
197
|
+
\def\reviewballoon#1{#1}
|
198
|
+
\def\reviewbou#1{#1}
|
199
|
+
\def\reviewkw#1{#1}
|
200
|
+
\def\reviewstrike#1{#1}
|
201
|
+
\def\reviewunderline#1{#1}
|
202
|
+
}
|
203
|
+
\newif\ifreview@ba@break
|
204
|
+
\def\review@ba@end{\review@ba@end@}
|
205
|
+
\DeclareRobustCommand{\reviewbreakall}[1]{%
|
206
|
+
\begingroup
|
207
|
+
\review@ba@breakfalse
|
208
|
+
\review@break@all@a#1\review@ba@end
|
209
|
+
\endgroup
|
210
|
+
}
|
211
|
+
\def\review@break@all@a{%
|
212
|
+
\futurelet\review@ba@tok\review@break@all@b
|
213
|
+
}
|
214
|
+
\def\review@break@all@b{%
|
215
|
+
\ifx\review@ba@tok\review@ba@end
|
216
|
+
\let\next\@gobble
|
217
|
+
\else\ifx\review@ba@tok\@sptoken
|
218
|
+
\let\next\review@break@all@c
|
219
|
+
\else\ifx\review@ba@tok~%
|
220
|
+
\let\next\review@break@all@d
|
221
|
+
\else\ifx\review@ba@tok\bgroup
|
222
|
+
\let\next\review@break@all@e
|
223
|
+
\else
|
224
|
+
\let\next\review@break@all@f
|
225
|
+
\fi\fi\fi\fi
|
226
|
+
\next
|
227
|
+
}
|
228
|
+
\expandafter\def\expandafter\review@break@all@c\space{%
|
229
|
+
\space
|
230
|
+
\review@ba@breakfalse
|
231
|
+
\review@break@all@a
|
232
|
+
}
|
233
|
+
\def\review@break@all@d#1{%
|
234
|
+
\review@break@all@f{\mbox{\space}}%
|
235
|
+
}
|
236
|
+
\def\review@break@all@e#1{%
|
237
|
+
\review@break@all@f{{#1}}%
|
238
|
+
}
|
239
|
+
\def\review@break@all@f#1{%
|
240
|
+
\ifreview@ba@break
|
241
|
+
\hskip0pt plus 0.02em\relax
|
242
|
+
\fi
|
243
|
+
#1%
|
244
|
+
\review@ba@breaktrue
|
245
|
+
\review@break@all@a
|
246
|
+
}
|
247
|
+
\DeclareRobustCommand{\reviewtt}[1]{{\ttfamily\reviewbreakall{#1}}}
|
248
|
+
\DeclareRobustCommand{\reviewcode}[1]{{\ttfamily\reviewbreakall{#1}}}
|
249
|
+
\DeclareRobustCommand{\reviewtti}[1]{{\ttfamily\itshape\reviewbreakall{#1}}}
|
250
|
+
\DeclareRobustCommand{\reviewttb}[1]{{\ttfamily\bfseries\reviewbreakall{#1}}}
|
161
251
|
|
162
|
-
|
163
|
-
\newcommand{\reviewstrike}[1]{#1}
|
252
|
+
\DeclareRobustCommand{\reviewbou}[1]{\kenten{#1}}
|
164
253
|
|
254
|
+
%% @<del> is ignored in LaTeX with default style
|
255
|
+
%% \DeclareRobustCommand{\reviewstrike}[1]{#1}
|
165
256
|
%%%% for ulem.sty:
|
166
|
-
\
|
257
|
+
\DeclareRobustCommand{\reviewstrike}[1]{\sout{#1}}
|
167
258
|
%%
|
168
259
|
%%%% for jumoline.sty:
|
169
|
-
%%\
|
260
|
+
%%\DeclareRobustCommand{\reviewstrike}[1]{\Middleline{#1}}
|
170
261
|
|
171
262
|
\newcommand{\reviewtitlefont}[0]{\usefont{T1}{phv}{b}{n}\gtfamily}
|
172
263
|
\newcommand{\reviewmainfont}[0]{}
|
@@ -203,6 +294,16 @@
|
|
203
294
|
\renewcommand{\appendixname}{\reviewappendixname}
|
204
295
|
\fi
|
205
296
|
|
297
|
+
% maxwidth is the original width if it is less than linewidth
|
298
|
+
%% otherwise use linewidth (to make sure the graphics do not exceed the margin)
|
299
|
+
\def\maxwidth{%
|
300
|
+
\ifdim\Gin@nat@width>\linewidth
|
301
|
+
\linewidth
|
302
|
+
\else
|
303
|
+
\Gin@nat@width
|
304
|
+
\fi
|
305
|
+
}
|
306
|
+
|
206
307
|
% hooks
|
207
308
|
\def\reviewbegindocumenthook{}
|
208
309
|
|
@@ -228,16 +329,26 @@
|
|
228
329
|
}
|
229
330
|
|
230
331
|
% cover
|
332
|
+
\newcommand*\covermatter{%
|
333
|
+
\ifdefined\review@usecovernombre%
|
334
|
+
\pagenumbering{coverpagezero}
|
335
|
+
\setcounter{page}{0}% force to even page, to avoid empty page
|
336
|
+
\fi
|
337
|
+
}
|
338
|
+
|
231
339
|
\if@reclscover
|
232
|
-
\ifdefined\review@coverimage
|
233
|
-
|
234
|
-
|
235
|
-
\
|
236
|
-
|
237
|
-
\
|
238
|
-
\
|
239
|
-
|
240
|
-
\fi
|
340
|
+
\ifdefined\review@coverimage
|
341
|
+
\ifrecls@coverfitpage
|
342
|
+
\def\review@coverimageoption{width=\paperwidth,height=\paperheight}
|
343
|
+
\fi
|
344
|
+
\def\reviewcoverpagecont{%
|
345
|
+
\expandafter\includefullpagegraphics\expandafter[\review@coverimageoption]{\review@coverimage}
|
346
|
+
\cleardoublepage
|
347
|
+
}
|
348
|
+
\fi
|
349
|
+
\ifdefined\review@coverfile
|
350
|
+
\def\reviewcoverpagecont{\review@coverfile}
|
351
|
+
\fi
|
241
352
|
\fi
|
242
353
|
|
243
354
|
% titlepage
|
@@ -1,5 +1,5 @@
|
|
1
1
|
%#!ptex2pdf -l -u -ot '-synctex=1' test-rejlreqbk
|
2
|
-
% Copyright (c) 2018-
|
2
|
+
% Copyright (c) 2018-2020 Kenshi Muto.
|
3
3
|
%
|
4
4
|
% Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
5
|
% of this software and associated documentation files (the "Software"), to deal
|
@@ -20,8 +20,7 @@
|
|
20
20
|
% THE SOFTWARE.
|
21
21
|
|
22
22
|
\NeedsTeXFormat{LaTeX2e}
|
23
|
-
\ProvidesClass{review-jlreq}[
|
24
|
-
cls]
|
23
|
+
\ProvidesClass{review-jlreq}[2020/08/16 Re:VIEW 5.0 upLaTeX/LuaLaTeX class modified for jlreq.cls]
|
25
24
|
|
26
25
|
%% hook at end of reviewmacro
|
27
26
|
\let\@endofreviewmacrohook\@empty
|
@@ -65,9 +64,7 @@ cls]
|
|
65
64
|
\recls@error{Not define such hiddenfolio: #1}}\relax
|
66
65
|
%% set hiddenfolio preset
|
67
66
|
\expandafter\let\expandafter\@makehiddenfolio\csname @makehiddenfolio@#1\endcsname
|
68
|
-
|
69
|
-
\@bannertoken{\hskip-5mm\smash{\hiddenfolio@font\@makehiddenfolio}}%
|
70
|
-
\AddEverypageHook{\maketombowbox}%
|
67
|
+
\@makehiddenfolio
|
71
68
|
\fi}
|
72
69
|
|
73
70
|
\def\hiddenfolio@font{\reset@font
|
@@ -75,29 +72,16 @@ cls]
|
|
75
72
|
|
76
73
|
%% hiddenfolio=default
|
77
74
|
\@namedef{@makehiddenfolio@default}{%
|
78
|
-
\
|
79
|
-
\llap{\thepage\hspace{\dimexpr\recls@tombobleed}}%
|
80
|
-
\else
|
81
|
-
\rlap{\hspace{\dimexpr\paperwidth+\recls@tombobleed}\thepage}%
|
82
|
-
\fi}
|
75
|
+
\jlreqtrimmarkssetup{banner = { top-gutter = { \hiddenfolio@font\selectfont \thepage} } } }
|
83
76
|
|
84
77
|
%% hiddenfolio=marusho-ink
|
85
78
|
\@namedef{@makehiddenfolio@marusho-ink}{%
|
86
|
-
\gdef\recls@tombobleed{5mm}%
|
79
|
+
\gdef\recls@tombobleed{5mm}% XXX: won't work. should set via bleed_margin
|
87
80
|
\@nameuse{@makehiddenfolio@nikko-pc}}
|
88
81
|
|
89
82
|
%% hiddenfolio=nikko-pc
|
90
83
|
\@namedef{@makehiddenfolio@nikko-pc}{%
|
91
|
-
\
|
92
|
-
\edef\recls@tmp{\thepage}%
|
93
|
-
\lower\dimexpr4pt+\recls@tombobleed+.5\paperheight+5\p@\hbox{%
|
94
|
-
\vbox{\expandafter\@tfor\expandafter\recls@x\expandafter:\expandafter=\recls@tmp\do{%
|
95
|
-
\hbox to 1\zw{\hss\recls@x\hss}}}}}%
|
96
|
-
\ifodd\c@page
|
97
|
-
\rlap{\recls@hiddfolio}%
|
98
|
-
\else
|
99
|
-
\llap{\recls@hiddfolio\hspace{-\paperwidth}}%
|
100
|
-
\fi}
|
84
|
+
\jlreqtrimmarkssetup{banner = { center-gutter = { in = {\hiddenfolio@font\selectfont \thepage} } } } }
|
101
85
|
|
102
86
|
%% hiddenfolio=shippo
|
103
87
|
\@namedef{@makehiddenfolio@shippo}{%
|
@@ -108,12 +92,14 @@ cls]
|
|
108
92
|
\newif\if@pdfhyperlink \@pdfhyperlinkfalse
|
109
93
|
\newif\if@pdftombo \@pdftombofalse
|
110
94
|
\newif\if@reclscover \@reclscovertrue
|
95
|
+
\newif\ifrecls@coverfitpage \recls@coverfitpagefalse
|
111
96
|
\newif\ifrecls@serialpage \recls@serialpagefalse
|
112
97
|
\DeclareOptionX{cameraready}[print]{\gdef\recls@cameraready{#1}}
|
113
98
|
\DeclareOptionX{media}[print]{\gdef\recls@cameraready{#1}}
|
114
99
|
\DeclareOptionX{tombopaper}[a4]{\gdef\recls@tombopaper{#1}}
|
115
100
|
\DeclareOptionX{bleed_margin}[3mm]{\gdef\recls@tombobleed{#1}}
|
116
101
|
\DeclareOptionX{cover}[\@empty]{\gdef\recls@forcecover{#1}}
|
102
|
+
\DeclareOptionX{cover_fit_page}[false]{\csname recls@coverfitpage#1\endcsname}
|
117
103
|
\DeclareOptionX{startpage}[1]{\gdef\recls@startpage{\numexpr #1\relax}}
|
118
104
|
\DeclareOptionX{serial_pagination}[false]{\csname recls@serialpage#1\endcsname}
|
119
105
|
|
@@ -334,5 +320,18 @@ cls]
|
|
334
320
|
\AtBeginDocument{\@ifpackageloaded{pdfpages}{\recls@patch@pdfpages}{}}
|
335
321
|
\fi
|
336
322
|
|
323
|
+
%% 表紙のノンブル
|
324
|
+
\def\coverpagezero#1{\expandafter\@coverpagezero\csname c@#1\endcsname}
|
325
|
+
\def\@coverpagezero#1{cover}
|
326
|
+
|
327
|
+
%% xkanjiskip抽象化
|
328
|
+
\newcommand*\setxkanjiskip[1]{%
|
329
|
+
\def\recls@tmp{lualatex}\ifx\recls@tmp\recls@engine
|
330
|
+
\ltjsetparameter{xkanjiskip={#1}}
|
331
|
+
\else
|
332
|
+
\xkanjiskip=#1\relax
|
333
|
+
\fi
|
334
|
+
}
|
335
|
+
|
337
336
|
\listfiles
|
338
337
|
\endinput
|
@@ -1,5 +1,5 @@
|
|
1
1
|
\NeedsTeXFormat{LaTeX2e}
|
2
|
-
\ProvidesPackage{review-style}[
|
2
|
+
\ProvidesPackage{review-style}[2019/09/16]
|
3
3
|
|
4
4
|
%% using Helvetica as sans-serif
|
5
5
|
\renewcommand{\sfdefault}{phv}
|
@@ -33,3 +33,6 @@
|
|
33
33
|
% 図表フロートの配置
|
34
34
|
\floatplacement{figure}{H}
|
35
35
|
\floatplacement{table}{H}
|
36
|
+
|
37
|
+
% リスト内和欧空き幅 (\z@は0で、空きなしを意味する。互換性で空きを入れたいときは以下の行をコメントアウトする)
|
38
|
+
\def\reviewlistxkanjiskip{\z@}
|
@@ -40,19 +40,21 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
40
40
|
|
41
41
|
`media` の値によって表紙(config.yml の coverimage に指定した画像)の配置の有無は自動で切り替わりますが、`cover=true` とすれば必ず表紙を入れるようになります。
|
42
42
|
|
43
|
-
|
43
|
+
### 表紙画像のサイズの仕上がり紙面合わせ `cover_fit_page=<trueまたはfalse>`
|
44
|
+
|
45
|
+
上記の coverimage で指定する画像ファイルは、原寸を想定しているため、サイズが異なる場合にははみ出たり、小さすぎたりすることになります。できるだけ原寸で用意することを推奨しますが、`cover_fit_page=true` とすれば表紙画像を紙面の仕上がりサイズに合わせて拡縮します。
|
44
46
|
|
45
47
|
### 特定の用紙サイズ `paper=<用紙サイズ>`
|
46
48
|
|
47
49
|
利用可能な特定の用紙サイズを指定できます。
|
48
50
|
|
49
|
-
* `a3`
|
51
|
+
* `a3`
|
50
52
|
* `a4` [デフォルト]
|
51
53
|
* `a5`
|
52
|
-
* `a6`
|
53
|
-
* `b4`:JIS B4
|
54
|
+
* `a6`
|
55
|
+
* `b4`:JIS B4
|
54
56
|
* `b5`:JIS B5
|
55
|
-
* `b6`:JIS B6
|
57
|
+
* `b6`:JIS B6
|
56
58
|
* `a4var`:210mm x 283mm
|
57
59
|
* `b5var`:182mm x 230mm
|
58
60
|
* `letter`
|
@@ -125,3 +127,42 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
125
127
|
* jsbook.cls のクラスオプション `uplatex`:これまで texdocumentclass に指定が必要だった `uplatex` オプションは不要となっています。
|
126
128
|
* jsbook.cls のクラスオプション `nomag`:用紙サイズや版面設計は、review-jsbook.cls 側で行います。
|
127
129
|
* hyperref パッケージ:あらかじめ hyperref パッケージを組み込んでおり、`media` オプションにより用途別で挙動を制御します。
|
130
|
+
|
131
|
+
### 既存の jsbook.cls のオプションの扱い
|
132
|
+
|
133
|
+
review-jsbook.cls は jsbook.cls を包んでおり、一部の jsbook.cls のクラスオプションはそのまま指定可能です。
|
134
|
+
|
135
|
+
* `oneside`: 奇数ページ・偶数ページで柱やページ番号などを同じ体裁にします。review-jsbook.cls にも有効ですが、review-style.sty でこれを打ち消し奇数・偶数で別の見た目にするデザイン (fancyhdr) が定義されているので、review-style.sty も調整する必要があります。
|
136
|
+
* `twoside`: 奇数ページ・偶数ページで柱やページ番号などを別の体裁にします (デフォルト)。
|
137
|
+
* `vartwoside`: twoside とおおむね同じですが、傍注が小口ではなく常に右側になります。Re:VIEW のデフォルトでは傍注は使用していないので、効果は通常表れません。
|
138
|
+
* `onecolumn`: 1段組の体裁にします (デフォルト)。
|
139
|
+
* `twocolumn`: 2段組の体裁にします。
|
140
|
+
* `openright`: 章の始まりを右ページ (奇数ページ) にします (デフォルト)。前の章が右ページで終わった場合には、白紙のページが1ページ挿入されます。
|
141
|
+
* `openleft`: 章の始まりを左ページ (偶数ページ) にします。前の章が左ページで終わった場合には、白紙のページが1ページ挿入されます。
|
142
|
+
* `openany`: 章の始まりを左右どちらのページからでも始めます。
|
143
|
+
* `draft`: 確認作業のために、overfull box が起きた箇所の行末に罫線を引き、画像は実際に貼り付けずにボックスとファイル名だけを表記するようにします。
|
144
|
+
* `final`: 上記の draft の処理を行いません (デフォルト)。
|
145
|
+
* `leqno`: 数式の番号を右ではなく左側に置きます。ただし Re:VIEW では LaTeX のやり方での採番付き数式を作っていないので、効果は通常表れません。
|
146
|
+
* `fleqn`: 数式をデフォルトの左右中央ではなく、左側に配置します。
|
147
|
+
* `english`: 英語ドキュメント向けに、字下げをなくしたり、「章」や「目次」などの定型の文字列を英語化します。しかし、Re:VIEW では定型文字列はロケールファイルで処理しており、ほとんどは無視されます。
|
148
|
+
* `jslogo`: 「LaTeX」等のロゴを置き換えます (デフォルト)。
|
149
|
+
* `nojslogo`: ロゴを置き換えません。
|
150
|
+
* `report`: oneside と openany の両方と同じ効果を持ちます。
|
151
|
+
* `landscape`: 用紙を横長で使います。review-jsbook.cls のクラスオプションで基本版面設計をやり直す必要があることに注意してください。
|
152
|
+
|
153
|
+
jsbook.cls の以下のクラスオプションは挙動が異なります。代わりに review-jsbook.cls のクラスオプションを利用してください。
|
154
|
+
|
155
|
+
* `8pt`・`9pt`・`10pt`・`11pt`・`12pt`・`14pt`・`17pt`・`20pt`・`21pt`・`25pt`・`30pt`・`36pt`・`43pt`・`12Q`・`14Q`・`10ptj`・`10.5ptj`・`11ptj`・`12ptj`: 基本文字のサイズを指定します。そのまま review-jsbook.cls の fontsize に渡されますが、上記の fontsize クラスオプションの説明にあるとおり丸められます。
|
156
|
+
* `tombow`・`tombo`・`mentuke`: トンボや塗り足しを作成しますが、これらは PDF 入稿に求められる正しいデジタルトンボ情報を入れないので使用してはなりません。review-jsbook.cls の `media=print` を使ってください。
|
157
|
+
* `a4paper`・`a5paper`・`b5paper`・`b4paper`・`letterpaper`: 紙サイズを指定します。誤りではありませんが、review-jsbook.cls の paper クラスオプションを使うほうが妥当です。
|
158
|
+
|
159
|
+
jsbook.cls の以下のクラスオプションは無視またはエラーになります。
|
160
|
+
|
161
|
+
* `uplatex`: 暗黙に指定されるので無視されます。
|
162
|
+
* `autodetect-engine`: pLaTeX/upLaTeX を自動判別するオプションですが、Re:VIEW では review-jsbook 利用時に upLaTeX を暗黙に前提としているので無視されます。
|
163
|
+
* `papersize`: dvips などに紙サイズ情報を与えるオプションですが、Re:VIEW ではこれを利用しないので、結果的に無視されます。
|
164
|
+
* `titlepage`・`notitlepage`: 表題の独立ページ化の有無ですが、Re:VIEW では表題を利用していないため、結果的に無視されます。
|
165
|
+
* `usemag`・`nomag`・`nomag*`: 用紙サイズと版面設計は review-jsbook.cls のクラスオプションを使うため、無視されます。
|
166
|
+
* `a4j`・`a5j`・`b4j`・`b5j`・`winjis`・`mingoth`: これらは無効としており、エラーになります。review-jsbook.cls のクラスオプションを利用してください。
|
167
|
+
* `jis`: jis フォントメトリックスを使う指定ですが、通常の環境ではコンパイルエラーになります。
|
168
|
+
* `disablejfam`: 数式内の利用フォント数を増やすために、数式内の日本語文字を使わないようにする指定ですが、Re:VIEW を利用する上では単にエラーを誘発するだけでしょう。
|