review 3.0.0.preview4 → 3.0.0.rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/NEWS.ja.md +61 -4
- data/NEWS.md +61 -4
- data/README.md +2 -1
- data/doc/config.yml.sample +48 -20
- data/doc/config.yml.sample-simple +7 -6
- data/doc/format_idg.ja.md +6 -2
- data/doc/pdfmaker.ja.md +95 -4
- data/doc/pdfmaker.md +79 -0
- data/doc/quickstart.ja.md +26 -3
- data/doc/quickstart.md +25 -3
- data/doc/writing_vertical.ja.md +19 -2
- data/lib/review/epubmaker.rb +27 -27
- data/lib/review/i18n.yml +1 -0
- data/lib/review/init.rb +34 -22
- data/lib/review/latexbuilder.rb +95 -18
- data/lib/review/pdfmaker.rb +1 -0
- data/lib/review/update.rb +60 -25
- data/lib/review/version.rb +1 -1
- data/review.gemspec +1 -1
- data/samples/sample-book/src/config.yml +3 -3
- data/samples/syntax-book/config.yml +3 -3
- data/templates/latex/config.erb +3 -0
- data/templates/latex/review-jlreq/README.md +97 -7
- data/templates/latex/review-jlreq/review-base.sty +8 -0
- data/templates/latex/review-jlreq/review-jlreq.cls +28 -6
- data/templates/latex/review-jsbook/README.md +18 -20
- data/templates/latex/review-jsbook/review-base.sty +15 -0
- data/templates/latex/review-jsbook/review-jsbook.cls +172 -230
- data/test/test_epubmaker_cmd.rb +1 -1
- data/test/test_helper.rb +3 -3
- data/test/test_image_finder.rb +9 -9
- data/test/test_latexbuilder.rb +20 -1
- data/test/test_makerhelper.rb +12 -12
- data/test/test_pdfmaker_cmd.rb +1 -1
- data/test/test_update.rb +18 -4
- data/test/test_zip_exporter.rb +7 -7
- data/vendor/jsclasses/.gitignore +163 -0
- data/vendor/jsclasses/LICENSE +25 -0
- data/vendor/jsclasses/Makefile +88 -0
- data/vendor/jsclasses/README.md +43 -0
- data/vendor/jsclasses/create_archive.sh +59 -0
- data/vendor/jsclasses/jis/Makefile +62 -0
- data/vendor/jsclasses/jis/jsarticle.cls +1935 -0
- data/vendor/jsclasses/jis/jsbook.cls +2026 -0
- data/vendor/jsclasses/jis/jsclasses.dtx +5961 -0
- data/vendor/jsclasses/jis/jsclasses.ins +8 -0
- data/vendor/jsclasses/jis/jslogo.dtx +413 -0
- data/vendor/jsclasses/jis/jslogo.ins +4 -0
- data/vendor/jsclasses/jis/jslogo.sty +223 -0
- data/vendor/jsclasses/jis/jspf.cls +1766 -0
- data/vendor/jsclasses/jis/jsreport.cls +2020 -0
- data/vendor/jsclasses/jis/jsverb.dtx +322 -0
- data/vendor/jsclasses/jis/jsverb.ins +4 -0
- data/vendor/jsclasses/jis/jsverb.sty +128 -0
- data/vendor/jsclasses/jis/kiyou.cls +1882 -0
- data/vendor/jsclasses/jis/minijs.sty +52 -0
- data/vendor/jsclasses/jis/okumacro.dtx +1179 -0
- data/vendor/jsclasses/jis/okumacro.ins +4 -0
- data/vendor/jsclasses/jis/okumacro.sty +455 -0
- data/vendor/jsclasses/jis/okuverb.dtx +243 -0
- data/vendor/jsclasses/jis/okuverb.ins +4 -0
- data/vendor/jsclasses/jis/okuverb.sty +102 -0
- data/vendor/jsclasses/jis/winjis.sty +87 -0
- data/vendor/jsclasses/jsarticle.cls +1938 -0
- data/vendor/jsclasses/jsbook.cls +2029 -0
- data/vendor/jsclasses/jsclasses.dtx +5966 -0
- data/vendor/jsclasses/jsclasses.ins +8 -0
- data/vendor/jsclasses/jsclasses.pdf +0 -0
- data/vendor/jsclasses/jslogo.dtx +424 -0
- data/vendor/jsclasses/jslogo.ins +4 -0
- data/vendor/jsclasses/jslogo.pdf +0 -0
- data/vendor/jsclasses/jslogo.sty +223 -0
- data/vendor/jsclasses/jspf.cls +1769 -0
- data/vendor/jsclasses/jsreport.cls +2023 -0
- data/vendor/jsclasses/jsverb.dtx +333 -0
- data/vendor/jsclasses/jsverb.ins +4 -0
- data/vendor/jsclasses/jsverb.pdf +0 -0
- data/vendor/jsclasses/jsverb.sty +128 -0
- data/vendor/jsclasses/kiyou.cls +1885 -0
- data/vendor/jsclasses/minijs.sty +52 -0
- data/vendor/jsclasses/okumacro.dtx +1184 -0
- data/vendor/jsclasses/okumacro.ins +4 -0
- data/vendor/jsclasses/okumacro.pdf +0 -0
- data/vendor/jsclasses/okumacro.sty +458 -0
- data/vendor/jsclasses/okuverb.dtx +254 -0
- data/vendor/jsclasses/okuverb.ins +4 -0
- data/vendor/jsclasses/okuverb.pdf +0 -0
- data/vendor/jsclasses/okuverb.sty +102 -0
- data/vendor/jsclasses/winjis.sty +87 -0
- metadata +55 -2
@@ -106,6 +106,10 @@
|
|
106
106
|
|
107
107
|
\renewcommand{\contentsname}{\review@toctitle}
|
108
108
|
|
109
|
+
\newenvironment{reviewpart}{%
|
110
|
+
\renewcommand{\thesection}{\thepart.\@arabic\c@section}%
|
111
|
+
}{}
|
112
|
+
|
109
113
|
% 囲み記事
|
110
114
|
\newenvironment{reviewnote}[1][]{%
|
111
115
|
\begin{tcolorbox}[skin=enhanced jigsaw,breakable,empty,coltitle=black,title={\sffamily\bfseries NOTE #1},borderline horizontal={0.5mm}{0pt}{black!50}, left=1mm, right=1mm, left skip=6mm]}
|
@@ -323,3 +327,7 @@
|
|
323
327
|
\def\reviewcolophonpagecont{\review@colophonfile}
|
324
328
|
}
|
325
329
|
\fi
|
330
|
+
|
331
|
+
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
332
|
+
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
333
|
+
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
@@ -103,17 +103,18 @@ cls]
|
|
103
103
|
\@namedef{@makehiddenfolio@shippo}{%
|
104
104
|
\@nameuse{@makehiddenfolio@nikko-pc}}
|
105
105
|
|
106
|
-
%%
|
106
|
+
%% media=print,ebook,preview
|
107
107
|
\newif\if@cameraready \@camerareadyfalse
|
108
108
|
\newif\if@pdfhyperlink \@pdfhyperlinkfalse
|
109
109
|
\newif\if@pdftombo \@pdftombofalse
|
110
110
|
\newif\if@reclscover \@reclscovertrue
|
111
111
|
\newif\ifrecls@serialpage \recls@serialpagefalse
|
112
112
|
\DeclareOptionX{cameraready}[print]{\gdef\recls@cameraready{#1}}
|
113
|
+
\DeclareOptionX{media}[print]{\gdef\recls@cameraready{#1}}
|
113
114
|
\DeclareOptionX{tombopaper}[a4]{\gdef\recls@tombopaper{#1}}
|
114
115
|
\DeclareOptionX{bleed_margin}[3mm]{\gdef\recls@tombobleed{#1}}
|
115
116
|
\DeclareOptionX{cover}[\@empty]{\gdef\recls@forcecover{#1}}
|
116
|
-
\DeclareOptionX{startpage}[1]{\gdef\recls@startpage{\numexpr #1
|
117
|
+
\DeclareOptionX{startpage}[1]{\gdef\recls@startpage{\numexpr #1\relax}}
|
117
118
|
\DeclareOptionX{serial_pagination}[false]{\csname recls@serialpage#1\endcsname}
|
118
119
|
|
119
120
|
%% 隠しノンブルプリセット
|
@@ -122,7 +123,7 @@ cls]
|
|
122
123
|
% jlreqのオプションについては https://github.com/abenori/jlreq/blob/master/README-ja.md を参照
|
123
124
|
\PassOptionsToClass{book,paper=a5}{jlreq}% クラスで必ず使うオプションの指定。デフォルトをA5にしておく
|
124
125
|
\DeclareOptionX*{\PassOptionsToClass{\CurrentOption}{jlreq}}%
|
125
|
-
\ExecuteOptionsX{cameraready,tombopaper,bleed_margin,cover,startpage,serial_pagination,hiddenfolio}
|
126
|
+
\ExecuteOptionsX{media,cameraready,tombopaper,bleed_margin,cover,startpage,serial_pagination,hiddenfolio}
|
126
127
|
\ProcessOptionsX\relax
|
127
128
|
|
128
129
|
\def\recls@tmp{preview}\ifx\recls@cameraready\recls@tmp
|
@@ -132,7 +133,7 @@ cls]
|
|
132
133
|
\else\def\recls@tmp{ebook}\ifx\recls@cameraready\recls@tmp
|
133
134
|
\@camerareadytrue\@pdfhyperlinktrue\@pdftombofalse\@reclscovertrue
|
134
135
|
\else
|
135
|
-
\recls@error{No such value of
|
136
|
+
\recls@error{No such value of media: \recls@cameraready}%
|
136
137
|
\fi\fi\fi
|
137
138
|
|
138
139
|
\LoadClass{jlreq}
|
@@ -248,10 +249,19 @@ cls]
|
|
248
249
|
\clearpage
|
249
250
|
}
|
250
251
|
|
252
|
+
% 空ページ
|
253
|
+
\newcommand\oneblankpage{\clearpage\thispagestyle{empty}%
|
254
|
+
\hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi}
|
255
|
+
|
256
|
+
% 横書き向けの、奇数ページまでの改丁(\cleardoublepage)・偶数ページまでの改丁(\clearoddpage)
|
257
|
+
\let\cleardoublepage@right\cleardoublepage
|
258
|
+
\def\cleardoublepage@left{\clearpage\if@twoside\ifodd\c@page
|
259
|
+
\hbox{}\thispagestyle{empty}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi}
|
260
|
+
\let\clearoddpage\cleardoublepage@left
|
261
|
+
|
251
262
|
% シンプルな通しノンブル
|
252
263
|
\ifrecls@serialpage
|
253
|
-
\
|
254
|
-
\gdef\thepage{\@arabic\c@page}}
|
264
|
+
\jlreqsetup{frontmatter_pagination=continuous}
|
255
265
|
\fi
|
256
266
|
|
257
267
|
% 開始ページを変更
|
@@ -261,5 +271,17 @@ cls]
|
|
261
271
|
\setcounter{page}{\the\recls@startpage}
|
262
272
|
}
|
263
273
|
|
274
|
+
% titlepageのsetcounterを使わない
|
275
|
+
\renewenvironment{titlepage}{%
|
276
|
+
\if@twocolumn
|
277
|
+
\@restonecoltrue\onecolumn
|
278
|
+
\else
|
279
|
+
\@restonecolfalse\newpage
|
280
|
+
\fi
|
281
|
+
\thispagestyle{empty}%
|
282
|
+
}{%
|
283
|
+
\if@restonecol\twocolumn\else\newpage\fi
|
284
|
+
}
|
285
|
+
|
264
286
|
\listfiles
|
265
287
|
\endinput
|
@@ -7,9 +7,9 @@ review-jsbook.cls Users Guide
|
|
7
7
|
|
8
8
|
## 特徴
|
9
9
|
|
10
|
-
* クラスオプション `
|
10
|
+
* クラスオプション `media` により、「印刷用」「電子用」の用途を明示的な意思表示として与えることで、用途に応じた PDF ファイル生成を行えます。
|
11
11
|
* (基本的に)クラスオプションを `<key>=<value>` で与えられます。
|
12
|
-
*
|
12
|
+
* クラスオプション内で、用紙サイズや基本版面を設計できます。
|
13
13
|
|
14
14
|
ここで、クラスオプションとは、親 LaTeX 文章ファイルにおいて、以下のような位置にカンマ(,)区切りで記述するオプションです。
|
15
15
|
|
@@ -27,7 +27,7 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
27
27
|
|
28
28
|
## 利用可能なクラスオプションたち
|
29
29
|
|
30
|
-
### 用途別 PDF データ作成 `
|
30
|
+
### 用途別 PDF データ作成 `media=<用途名>`
|
31
31
|
|
32
32
|
印刷用 `print`、電子用 `ebook` のいずれかの用途名を指定します。
|
33
33
|
|
@@ -38,7 +38,7 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
38
38
|
|
39
39
|
### 表紙の挿入有無 `cover=<trueまたはfalse>`
|
40
40
|
|
41
|
-
`
|
41
|
+
`media` の値によって表紙(config.yml の coverimage に指定した画像)の配置の有無は自動で切り替わりますが、`cover=true` とすれば必ず表紙を入れるようになります。
|
42
42
|
|
43
43
|
なお、config.yml の coverimage で指定する画像ファイルは、原寸を想定しています。
|
44
44
|
|
@@ -47,8 +47,8 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
47
47
|
利用可能な特定の用紙サイズを指定できます。
|
48
48
|
|
49
49
|
* `a3`
|
50
|
-
* `a4`
|
51
|
-
* `a5
|
50
|
+
* `a4` [デフォルト]
|
51
|
+
* `a5`
|
52
52
|
* `a6`
|
53
53
|
* `b4`:JIS B4
|
54
54
|
* `b5`:JIS B5
|
@@ -73,24 +73,23 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
73
73
|
|
74
74
|
たとえば、B5変形 `paperwidth=182mm`, `paperheight=235mm`。
|
75
75
|
|
76
|
-
### 基本版面設計 `
|
76
|
+
### 基本版面設計 `fontsize=<文字サイズ>`, `baselineskip=<行送り>`, `line_length=<字詰>`, `number_of_lines=<行数>`, `head_space=<天>`, `gutter=<ノド>`, `linegap=<幅>`, `headheight=<幅>`, `headsep=<幅>`, `footskip=<幅>`
|
77
77
|
|
78
|
-
|
78
|
+
基本版面情報を与えます。
|
79
79
|
天、ノドをそれぞれ与えない場合、それぞれ天地、左右中央になります。
|
80
80
|
|
81
|
-
* `
|
82
|
-
* `
|
83
|
-
* `
|
84
|
-
* `
|
85
|
-
* `
|
81
|
+
* `fontsize=10pt`[デフォルト]:標準の文字(normalfontsize)の文字サイズを与えます。pt のほか、Q や mm といった単位も指定可能です。ただし、文字サイズは jsbook の挙動に合わせるために 8pt, 9pt, 10pt, 11pt, 12pt, 14pt, 17pt, 20pt, 21pt, 25pt, 30pt, 36pt, 43pt のいずれか近いサイズに丸められます。
|
82
|
+
* `baselineskip=16pt`[デフォルト]:行送りを与えます。
|
83
|
+
* `line_length=<字詰め幅>`:1行字詰めを与えます。字詰め幅には単位を付ける必要があります。文字数であれば「zw」を使うとよいでしょう(例:35zw=35文字)。デフォルトでは jsbook の挙動に従い、紙サイズに基いて決定します。
|
84
|
+
* `number_of_lines=<行数>`:行数を与えます。デフォルトでは jsbook の挙動に従い、紙サイズに基いて決定します。
|
85
|
+
* `head_space=<幅>`:天を与えます。[デフォルト]は天地中央です。
|
86
86
|
* `gutter=<幅>`:ノドを与えます。[デフォルト]は左右中央です。
|
87
|
+
* `linegap=<幅>`:行送りを baselineskip で指定する代わりに、通常の文字の高さにこのオプションで指定する幅を加えたものを行送りとします。
|
87
88
|
|
88
89
|
例をいくつか挙げます。
|
89
90
|
|
90
|
-
* `paper=a5,
|
91
|
-
* `paper=
|
92
|
-
* `paper=b5, Q=13, W=43, L=35, H=24,`
|
93
|
-
* `paper=b5, Q=14, W=40, L=34, H=25.5,`
|
91
|
+
* `paper=a5, fontsize=10pt, line_length=35zw, number_of_lines=32, baselineskip=16pt,`
|
92
|
+
* `paper=b5, fontsize=13Q, baselineskip=20.5H, head_space=20mm, gutter=20mm,`
|
94
93
|
|
95
94
|
さらに、ヘッダー、フッターに関する位置調整は、TeX のパラメータ `\headheight`, `\headsep`, `\footskip` に対応しており、それぞれ `headheight`, `headsep`, `footskip` を与えられます。
|
96
95
|
|
@@ -124,6 +123,5 @@ texdocumentclass: ["review-jsbook", "クラスオプションたち(省略可
|
|
124
123
|
## 標準で review-jsbook.cls を実行したときの jsbook.cls との違い
|
125
124
|
|
126
125
|
* jsbook.cls のクラスオプション `uplatex`:これまで texdocumentclass に指定が必要だった `uplatex` オプションは不要となっています。
|
127
|
-
* jsbook.cls のクラスオプション `nomag
|
128
|
-
* hyperref パッケージ:あらかじめ hyperref パッケージを組み込んでおり、`
|
129
|
-
* 各種相対フォントサイズコマンド `\small`, `\footnotesize`, `\scriptsize`, `\tiny`, `\large`, `\Large`, `\LARGE`, `\huge`, `\Huge`, `\HUGE` は、級数ベースに書き換えています。おおむね妥当な値になっているはずです。
|
126
|
+
* jsbook.cls のクラスオプション `nomag`:用紙サイズや版面設計は、review-jsbook.cls 側で行います。
|
127
|
+
* hyperref パッケージ:あらかじめ hyperref パッケージを組み込んでおり、`media` オプションにより用途別で挙動を制御します。
|
@@ -2,6 +2,13 @@
|
|
2
2
|
\@ifundefined{Hy@Info}{% for jsbook.cls
|
3
3
|
\RequirePackage[dvipdfmx,bookmarks=true,bookmarksnumbered=true]{hyperref}
|
4
4
|
\RequirePackage[dvipdfmx]{pxjahyper}
|
5
|
+
\newif\if@reclscover \@reclscovertrue
|
6
|
+
\newcommand{\includefullpagegraphics}[2][]{%
|
7
|
+
\thispagestyle{empty}%
|
8
|
+
\begin{center}%
|
9
|
+
\includegraphics[#1]{#2}%
|
10
|
+
\end{center}}
|
11
|
+
\def\review@coverimageoption{width=\textwidth,height=\textheight,keepaspectratio}
|
5
12
|
}{}
|
6
13
|
\ifthenelse{\equal{\review@texcompiler}{uplatex}}{%
|
7
14
|
\RequirePackage[deluxe,uplatex]{otf}%
|
@@ -190,6 +197,10 @@
|
|
190
197
|
\newcommand{\reviewcolumnref}[2]{\review@intn@columnname #1}
|
191
198
|
\newcommand{\reviewsecref}[2]{#1}
|
192
199
|
|
200
|
+
\newenvironment{reviewpart}{%
|
201
|
+
\renewcommand{\thesection}{\thepart.\@arabic\c@section}%
|
202
|
+
}{}
|
203
|
+
|
193
204
|
\newcommand{\reviewminicolumntitle}[1]{%
|
194
205
|
\review@ifempty{#1}{}{%
|
195
206
|
{\large \review@intn@memohead{}: #1}\\}}
|
@@ -416,3 +427,7 @@
|
|
416
427
|
\def\reviewcolophonpagecont{\review@colophonfile}
|
417
428
|
}
|
418
429
|
\fi
|
430
|
+
|
431
|
+
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
432
|
+
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
433
|
+
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
@@ -19,9 +19,6 @@
|
|
19
19
|
% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
20
20
|
% THE SOFTWARE.
|
21
21
|
|
22
|
-
\ifx\epTeXinputencoding\undefined\else
|
23
|
-
\epTeXinputencoding utf8
|
24
|
-
\fi
|
25
22
|
\NeedsTeXFormat{pLaTeX2e}
|
26
23
|
\ProvidesClass{review-jsbook}
|
27
24
|
[2018/09/30 v3.0 Re:VIEW pLaTeX class modified for jsbook.cls]
|
@@ -82,9 +79,6 @@
|
|
82
79
|
\edef\recls@set@js@paper{#1}%
|
83
80
|
\PassOptionsToClass{\recls@set@js@paper}{jsbook}}
|
84
81
|
|
85
|
-
\def\recls@disable@jsopt#1{%
|
86
|
-
\recls@DeclareOption{#1}{\recls@error{option #1: not available}}}
|
87
|
-
|
88
82
|
\recls@define@paper{a3}{paper}
|
89
83
|
\recls@define@paper{a4}{paper}
|
90
84
|
\recls@define@paper{a5}{paper}
|
@@ -98,11 +92,55 @@
|
|
98
92
|
\recls@define@paper{legal}{paper}
|
99
93
|
\recls@define@paper{executive}{paper}
|
100
94
|
|
101
|
-
%%
|
95
|
+
%% define/set specific fontsize
|
96
|
+
\def\recls@define@fontsize#1{%
|
97
|
+
\@namedef{recls@fontsize@#1}{#1}}
|
98
|
+
|
99
|
+
\def\recls@set@fontsize#1{%
|
100
|
+
\@ifundefined{recls@fontsize@#1}{%
|
101
|
+
\recls@set@customfontsize{#1}}{\@recls@set@fontsize{#1}}}
|
102
|
+
\def\@recls@set@fontsize#1{%
|
103
|
+
\expandafter\expandafter\expandafter
|
104
|
+
\@@recls@set@fontsize\expandafter\expandafter\expandafter
|
105
|
+
{\csname recls@fontsize@#1\endcsname}}
|
106
|
+
\def\@@recls@set@fontsize#1{%
|
107
|
+
\edef\recls@jsfontsize{#1}%
|
108
|
+
\ifdim\recls@jsfontsize=\recls@fontsize\else
|
109
|
+
\recls@warning{jsbook.cls has no such fontsize '\recls@fontsize'.^^J
|
110
|
+
pass through '\recls@jsfontsize' option to jsbook.cls}%
|
111
|
+
\fi
|
112
|
+
\PassOptionsToClass{\recls@jsfontsize}{jsbook}}
|
113
|
+
|
114
|
+
%% NOTE: カスタムフォントサイズの対応は、事実上、止めることにしました。
|
115
|
+
\def\recls@set@customfontsize#1{%
|
116
|
+
\setlength{\@tempdima}{#1}%
|
117
|
+
\ifdim\@tempdima<8.5pt\recls@set@fontsize{8pt}%
|
118
|
+
\else\ifdim\@tempdima<9.5pt\recls@set@fontsize{9pt}%
|
119
|
+
\else\ifdim\@tempdima<10.5pt\recls@set@fontsize{10pt}%
|
120
|
+
\else\ifdim\@tempdima<11.5pt\recls@set@fontsize{11pt}%
|
121
|
+
\else\ifdim\@tempdima<12.5pt\recls@set@fontsize{12pt}%
|
122
|
+
\else\ifdim\@tempdima<13pt\recls@set@fontsize{14pt}%
|
123
|
+
\else\ifdim\@tempdima<18.5pt\recls@set@fontsize{17pt}%
|
124
|
+
\else\ifdim\@tempdima<20.5pt\recls@set@fontsize{20pt}%
|
125
|
+
\else\ifdim\@tempdima<23pt\recls@set@fontsize{21pt}%
|
126
|
+
\else\ifdim\@tempdima<27.5pt\recls@set@fontsize{25pt}%
|
127
|
+
\else\ifdim\@tempdima<33pt\recls@set@fontsize{30pt}%
|
128
|
+
\else\ifdim\@tempdima<39.5pt\recls@set@fontsize{36pt}%
|
129
|
+
\else\recls@set@fontsize{43pt}%
|
130
|
+
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
|
131
|
+
}
|
132
|
+
|
102
133
|
\@for\recls@tmp:={%
|
103
|
-
a4j,a5j,b4j,b5j,%
|
104
134
|
8pt,9pt,10pt,11pt,12pt,14pt,17pt,20pt,21pt,25pt,30pt,36pt,43pt,12Q,14Q,%
|
105
|
-
10ptj,10.5ptj,11ptj,12ptj
|
135
|
+
10ptj,10.5ptj,11ptj,12ptj}\do{%
|
136
|
+
\expandafter\recls@define@fontsize\expandafter{\recls@tmp}}
|
137
|
+
|
138
|
+
%% disable some options of jsbook.cls
|
139
|
+
\def\recls@disable@jsopt#1{%
|
140
|
+
\recls@DeclareOption{#1}{\recls@error{option #1: not available}}}
|
141
|
+
|
142
|
+
\@for\recls@tmp:={%
|
143
|
+
a4j,a5j,b4j,b5j,winjis,mingoth}\do{%
|
106
144
|
\expandafter\recls@disable@jsopt\expandafter{\recls@tmp}}
|
107
145
|
|
108
146
|
%% \recls@set@tombowpaper{<papersize>}
|
@@ -156,33 +194,35 @@
|
|
156
194
|
\@nameuse{@makehiddenfolio@nikko-pc}}
|
157
195
|
|
158
196
|
|
159
|
-
%%
|
197
|
+
%% media=print,ebook,preview
|
160
198
|
\newif\if@cameraready \@camerareadyfalse
|
161
199
|
\newif\if@pdfhyperlink \@pdfhyperlinkfalse
|
162
200
|
\DeclareOptionX{cameraready}[print]{\gdef\recls@cameraready{#1}}
|
201
|
+
\DeclareOptionX{media}[print]{\gdef\recls@cameraready{#1}}
|
163
202
|
|
164
203
|
%% 用紙
|
165
|
-
\DeclareOptionX{paper}[
|
204
|
+
\DeclareOptionX{paper}[a4]{\gdef\recls@paper{#1}}
|
166
205
|
\DeclareOptionX{tombopaper}{%
|
167
206
|
\gdef\recls@tombowopts{}%%default: auto-detect
|
168
|
-
\ifx#1\@empty\else\gdef\recls@tombowopts{
|
207
|
+
\ifx#1\@empty\else\gdef\recls@tombowopts{tombow-#1}\fi}
|
169
208
|
\DeclareOptionX{bleed_margin}[3mm]{\gdef\recls@tombobleed{#1}}
|
170
209
|
%% 隠しノンブルプリセット
|
171
210
|
\DeclareOptionX{hiddenfolio}{\gdef\recls@hiddenfolio{#1}}%%default: (none)
|
172
211
|
%% カスタム用紙サイズ
|
173
212
|
\DeclareOptionX{paperwidth}{\gdef\recls@paperwidth{#1}}
|
174
213
|
\DeclareOptionX{paperheight}{\gdef\recls@paperheight{#1}}
|
175
|
-
%%
|
176
|
-
\DeclareOptionX{
|
177
|
-
\DeclareOptionX{
|
178
|
-
\DeclareOptionX{
|
179
|
-
\DeclareOptionX{
|
180
|
-
\DeclareOptionX{
|
181
|
-
\DeclareOptionX{
|
214
|
+
%% 基本版面、天、ノド
|
215
|
+
\DeclareOptionX{fontsize}[10pt]{\gdef\recls@fontsize{#1}}
|
216
|
+
\DeclareOptionX{line_length}{\gdef\recls@line@length{#1}}%%ベタ組みになるように調整
|
217
|
+
\DeclareOptionX{number_of_lines}{\gdef\recls@number@of@lines{#1}}
|
218
|
+
\DeclareOptionX{baselineskip}{\def\recls@baselineskip{#1}}
|
219
|
+
\DeclareOptionX{linegap}{\def\recls@linegap{#1}}
|
220
|
+
\DeclareOptionX{head_space}{\gdef\recls@head@space{#1}}
|
221
|
+
\DeclareOptionX{gutter}{\gdef\recls@gutter{#1}}
|
182
222
|
%% headheight,headsep,footskip
|
183
|
-
\DeclareOptionX{headheight}
|
184
|
-
\DeclareOptionX{headsep}
|
185
|
-
\DeclareOptionX{footskip}
|
223
|
+
\DeclareOptionX{headheight}{\gdef\recls@headheight{#1}}
|
224
|
+
\DeclareOptionX{headsep}{\gdef\recls@headsep{#1}}
|
225
|
+
\DeclareOptionX{footskip}{\gdef\recls@footskip{#1}}
|
186
226
|
|
187
227
|
%% 表紙・開始番号・通しノンブル
|
188
228
|
\newif\if@reclscover \@reclscovertrue
|
@@ -193,20 +233,22 @@
|
|
193
233
|
|
194
234
|
\PassOptionsToClass{dvipdfmx,nomag}{jsbook}
|
195
235
|
\DeclareOptionX*{\PassOptionsToClass{\CurrentOption}{jsbook}}%
|
196
|
-
\ExecuteOptionsX{cameraready,hiddenfolio,%
|
236
|
+
\ExecuteOptionsX{cameraready,media,hiddenfolio,%
|
197
237
|
paper,tombopaper,bleed_margin,paperwidth,paperheight,%
|
198
|
-
|
238
|
+
fontsize,line_length,number_of_lines,baselineskip,linegap,head_space,%
|
239
|
+
gutter,headheight,headsep,footskip,%
|
199
240
|
cover,startpage,serial_pagination}
|
200
241
|
\ProcessOptionsX\relax
|
201
242
|
|
202
|
-
%% set specific papersize
|
243
|
+
%% set specific papersize, fontsize
|
203
244
|
\recls@set@paper{\recls@paper}
|
204
245
|
\recls@set@tombowpaper{\recls@tombowopts}
|
246
|
+
\recls@set@fontsize{\recls@fontsize}
|
205
247
|
|
206
248
|
%% camera-ready PDF file preparation for each print, ebook
|
207
249
|
\def\recls@tmp{preview}\ifx\recls@cameraready\recls@tmp
|
208
|
-
%%FIXME: cameraready=preview の挙動は保留。例:フォント関係を仕込む
|
209
250
|
\@camerareadyfalse\@pdfhyperlinkfalse\@reclscovertrue
|
251
|
+
\PassOptionsToClass{papersize}{jsbook}%
|
210
252
|
\else\def\recls@tmp{print}\ifx\recls@cameraready\recls@tmp
|
211
253
|
\@camerareadytrue\@pdfhyperlinkfalse\@reclscoverfalse
|
212
254
|
\IfFileExists{gentombow.sty}{%
|
@@ -214,11 +256,6 @@
|
|
214
256
|
\RequirePackage[pdfbox,\recls@tombowopts]{gentombow}%
|
215
257
|
\settombowbleed{\recls@tombobleed}%
|
216
258
|
\recls@set@hiddenfolio{\recls@hiddenfolio}}%
|
217
|
-
%%FIXME: gentombow upstreamでトンボ版スタイルコマンドが実装されたら、それに置き換えても良いかな。
|
218
|
-
% \AtEndOfClass{%
|
219
|
-
% \PassOptionsToPackage{\recls@tombowopts}{gentombow}%
|
220
|
-
% \RequirePackage[hiddenfolio=\recls@hiddenfolio,tombobleed=\recls@tombobleed]{gentombow-hiddenfolio}%
|
221
|
-
% }%
|
222
259
|
}{%
|
223
260
|
\IfFileExists{gentombow09j.sty}{% from vendor/gentombow.
|
224
261
|
\AtEndOfClass{%
|
@@ -235,7 +272,7 @@
|
|
235
272
|
\@camerareadytrue\@pdfhyperlinktrue\@reclscovertrue
|
236
273
|
\PassOptionsToClass{papersize}{jsbook}%
|
237
274
|
\else
|
238
|
-
\recls@error{No such value of
|
275
|
+
\recls@error{No such value of media: \recls@cameraready}%
|
239
276
|
\fi\fi\fi
|
240
277
|
|
241
278
|
%% 内部Unicode動作の時だけupTeXとみなす
|
@@ -246,222 +283,117 @@
|
|
246
283
|
\PassOptionsToPackage{uplatex}{otf}
|
247
284
|
\fi\fi
|
248
285
|
|
249
|
-
\PassOptionsToClass{10pt}{jsbook}%%<= forcely load 10pt
|
250
286
|
\LoadClass{jsbook}
|
251
|
-
|
252
|
-
|
253
|
-
\
|
254
|
-
\@ifundefined{jsc@setfontsize}{%%compatibility for TL13, TL14, TL15 frozen
|
255
|
-
\newdimen\jsc@mpt
|
256
|
-
\jsc@mpt=1\p@
|
257
|
-
\def\jsc@setfontsize#1#2#3{%
|
258
|
-
\@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}}
|
259
|
-
}\relax
|
260
|
-
}
|
287
|
+
|
288
|
+
% \typeout{!!! magscale: \jsc@magscale}
|
289
|
+
% \typeout{!!! mag: \the\mag}%%=> 1000 -> OK
|
261
290
|
|
262
291
|
%% override papersize with custom papersize
|
263
292
|
\ifx\recls@paperwidth\@empty\else\ifx\recls@paperheight\@empty\else
|
264
293
|
\setlength{\paperwidth}{\recls@paperwidth}
|
265
294
|
\setlength{\paperheight}{\recls@paperheight}
|
266
|
-
\def\recls@tmp{
|
295
|
+
\def\recls@tmp{print}\ifx\recls@cameraready\recls@tmp\else
|
267
296
|
\AtBeginDvi{\special{papersize=\the\paperwidth,\the\paperheight}}
|
268
297
|
\fi
|
269
298
|
\fi\fi
|
270
299
|
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
\
|
275
|
-
\
|
276
|
-
\def\
|
277
|
-
\
|
278
|
-
\
|
279
|
-
\
|
280
|
-
|
281
|
-
\
|
282
|
-
\
|
283
|
-
|
284
|
-
|
285
|
-
\@
|
286
|
-
|
287
|
-
\@
|
288
|
-
|
289
|
-
\@
|
290
|
-
|
291
|
-
\
|
292
|
-
|
293
|
-
\
|
294
|
-
|
295
|
-
\
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
\DeclareFontShape{\recls@JYn}{mc}{m}{n}{%
|
303
|
-
<-> s * [\recls@sc@le] \recls@jisrh
|
304
|
-
}{}
|
305
|
-
\DeclareFontShape{\recls@JYn}{gt}{m}{n}{%
|
306
|
-
<-> s * [\recls@sc@le] \recls@jisgh
|
307
|
-
}{}
|
308
|
-
\DeclareFontShape{\recls@JYn}{mc}{bx}{n}{<->ssub*gt/m/n}{}
|
309
|
-
\DeclareFontShape{\recls@JYn}{gt}{bx}{n}{<->ssub*gt/m/n}{}
|
310
|
-
%% JTn
|
311
|
-
\DeclareFontShape{\recls@JTn}{mc}{m}{n}{%
|
312
|
-
<-> s * [\recls@sc@le] \recls@jisrv
|
313
|
-
}{}
|
314
|
-
\DeclareFontShape{\recls@JTn}{gt}{m}{n}{%
|
315
|
-
<-> s * [\recls@sc@le] \recls@jisgv
|
316
|
-
}{}
|
317
|
-
\DeclareFontShape{\recls@JTn}{mc}{bx}{n}{<->ssub*gt/m/n}{}
|
318
|
-
\DeclareFontShape{\recls@JTn}{gt}{bx}{n}{<->ssub*gt/m/n}{}
|
319
|
-
%% it
|
320
|
-
\DeclareFontShape{\recls@JYn}{mc}{m}{it}{<->ssub*mc/m/n}{}
|
321
|
-
\DeclareFontShape{\recls@JYn}{mc}{bx}{it}{<->ssub*mc/bx/n}{}
|
322
|
-
\DeclareFontShape{\recls@JYn}{gt}{m}{it}{<->ssub*gt/m/n}{}
|
323
|
-
\DeclareFontShape{\recls@JYn}{gt}{bx}{it}{<->ssub*gt/bx/n}{}
|
324
|
-
\DeclareFontShape{\recls@JTn}{mc}{m}{it}{<->ssub*mc/m/n}{}
|
325
|
-
\DeclareFontShape{\recls@JTn}{mc}{bx}{it}{<->ssub*mc/bx/n}{}
|
326
|
-
\DeclareFontShape{\recls@JTn}{gt}{m}{it}{<->ssub*gt/m/n}{}
|
327
|
-
\DeclareFontShape{\recls@JTn}{gt}{bx}{it}{<->ssub*gt/bx/n}{}
|
328
|
-
%% sl
|
329
|
-
\DeclareFontShape{\recls@JYn}{mc}{m}{sl}{<->ssub*mc/m/n}{}
|
330
|
-
\DeclareFontShape{\recls@JYn}{mc}{bx}{sl}{<->ssub*mc/bx/n}{}
|
331
|
-
\DeclareFontShape{\recls@JYn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
|
332
|
-
\DeclareFontShape{\recls@JYn}{gt}{bx}{sl}{<->ssub*gt/bx/n}{}
|
333
|
-
\DeclareFontShape{\recls@JTn}{mc}{m}{sl}{<->ssub*mc/m/n}{}
|
334
|
-
\DeclareFontShape{\recls@JTn}{mc}{bx}{sl}{<->ssub*mc/bx/n}{}
|
335
|
-
\DeclareFontShape{\recls@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{}
|
336
|
-
\DeclareFontShape{\recls@JTn}{gt}{bx}{sl}{<->ssub*gt/bx/n}{}
|
337
|
-
%% sc
|
338
|
-
\DeclareFontShape{\recls@JYn}{mc}{m}{sc}{<->ssub*mc/m/n}{}
|
339
|
-
\DeclareFontShape{\recls@JYn}{mc}{bx}{sc}{<->ssub*mc/bx/n}{}
|
340
|
-
\DeclareFontShape{\recls@JYn}{gt}{m}{sc}{<->ssub*gt/m/n}{}
|
341
|
-
\DeclareFontShape{\recls@JYn}{gt}{bx}{sc}{<->ssub*gt/bx/n}{}
|
342
|
-
\DeclareFontShape{\recls@JTn}{mc}{m}{sc}{<->ssub*mc/m/n}{}
|
343
|
-
\DeclareFontShape{\recls@JTn}{mc}{bx}{sc}{<->ssub*mc/bx/n}{}
|
344
|
-
\DeclareFontShape{\recls@JTn}{gt}{m}{sc}{<->ssub*gt/m/n}{}
|
345
|
-
\DeclareFontShape{\recls@JTn}{gt}{bx}{sc}{<->ssub*gt/bx/n}{}
|
346
|
-
|
347
|
-
\renewcommand{\normalsize}{%
|
348
|
-
\jsc@setfontsize\normalsize{\recls@Q\JQ}{\recls@H H}
|
349
|
-
\abovedisplayskip 11\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
350
|
-
\abovedisplayshortskip \z@ \@plus3\jsc@mpt
|
351
|
-
\belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
352
|
-
\belowdisplayshortskip \belowdisplayskip
|
353
|
-
\let\@listi\@listI}
|
354
|
-
\hyphenpenalty\@M\relax
|
355
|
-
\exhyphenpenalty\@M\relax
|
356
|
-
\normalsize
|
357
|
-
|
358
|
-
\setbox0\hbox{\char\jis"3441}%"
|
359
|
-
\setlength\Cht{\ht0}
|
360
|
-
\setlength\Cdp{\dp0}
|
361
|
-
\setlength\Cwd{\wd0}
|
362
|
-
\setlength\Cvs{\baselineskip}
|
363
|
-
\setlength\Chs{\wd0}
|
364
|
-
\setbox0=\box\voidb@x
|
365
|
-
|
366
|
-
\renewcommand{\small}{%
|
367
|
-
\ifnarrowbaselines
|
368
|
-
\jsc@setfontsize\small
|
369
|
-
{\dimexpr\recls@Q\JQ - 1\JQ}{1.5\dimexpr\recls@Q H - 3H}%
|
370
|
-
\else
|
371
|
-
\jsc@setfontsize\small
|
372
|
-
{\dimexpr\recls@Q\JQ - 1\JQ}{1.5\dimexpr\recls@Q H - 1H}%
|
373
|
-
\fi
|
374
|
-
\abovedisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
375
|
-
\abovedisplayshortskip \z@ \@plus3\jsc@mpt
|
376
|
-
\belowdisplayskip \abovedisplayskip
|
377
|
-
\belowdisplayshortskip \belowdisplayskip
|
378
|
-
\def\@listi{\leftmargin\leftmargini
|
379
|
-
\topsep \z@
|
380
|
-
\parsep \z@
|
381
|
-
\itemsep \parsep}}
|
382
|
-
|
383
|
-
\renewcommand{\footnotesize}{%
|
384
|
-
\ifnarrowbaselines
|
385
|
-
\jsc@setfontsize\footnotesize
|
386
|
-
{\dimexpr\recls@Q\JQ - 2\JQ}{1.5\dimexpr\recls@Q H - 3H}%
|
387
|
-
\else
|
388
|
-
\jsc@setfontsize\footnotesize
|
389
|
-
{\dimexpr\recls@Q\JQ - 2\JQ}{1.5\dimexpr\recls@Q H - 2H}%
|
390
|
-
\fi
|
391
|
-
\abovedisplayskip 6\jsc@mpt \@plus2\jsc@mpt \@minus3\jsc@mpt
|
392
|
-
\abovedisplayshortskip \z@ \@plus2\jsc@mpt
|
393
|
-
\belowdisplayskip \abovedisplayskip
|
394
|
-
\belowdisplayshortskip \belowdisplayskip
|
395
|
-
\def\@listi{\leftmargin\leftmargini
|
396
|
-
\topsep \z@
|
397
|
-
\parsep \z@
|
398
|
-
\itemsep \parsep}}
|
399
|
-
|
400
|
-
\renewcommand{\scriptsize}{\jsc@setfontsize\scriptsize
|
401
|
-
{\dimexpr\recls@Q\JQ - 3\JQ}{1.25\dimexpr\recls@Q H - 3H}}
|
402
|
-
\renewcommand{\tiny}{\jsc@setfontsize\tiny
|
403
|
-
{.5\dimexpr\recls@Q\JQ}{.5\dimexpr\recls@Q H + 2H}}
|
404
|
-
\if@twocolumn
|
405
|
-
\renewcommand{\large}{\@setfontsize\large
|
406
|
-
{\recls@fnt@scale\dimexpr 18\JQ}{\n@baseline}}
|
407
|
-
\else
|
408
|
-
\renewcommand{\large}{\@setfontsize\large
|
409
|
-
{\recls@fnt@scale\dimexpr 18\JQ}{\recls@fnt@scale\dimexpr 27H}}
|
300
|
+
%% baseline
|
301
|
+
%% TL15のjsbook.clsまで面倒みないことでOK?
|
302
|
+
% \@ifundefined{jsc@setfontsize}{%
|
303
|
+
% \newdimen\jsc@mpt
|
304
|
+
% \newdimen\jsc@mmm
|
305
|
+
% \def\jsc@setfontsize#1#2#3{%
|
306
|
+
% \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}}
|
307
|
+
% \jsc@mpt=\jsc@magscale\p@
|
308
|
+
% \jsc@mmm=\jsc@magscale mm
|
309
|
+
% }\relax
|
310
|
+
\ifx\recls@linegap\@empty\else
|
311
|
+
\setlength{\baselineskip}{\dimexpr\Cwd+\recls@linegap}
|
312
|
+
\renewcommand{\normalsize}{%
|
313
|
+
\jsc@setfontsize\normalsize\@xpt\baselineskip% \@xiipt
|
314
|
+
\abovedisplayskip 11\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
315
|
+
\abovedisplayshortskip \z@ \@plus3\jsc@mpt
|
316
|
+
\belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
317
|
+
\belowdisplayshortskip \belowdisplayskip
|
318
|
+
\let\@listi\@listI}
|
319
|
+
\normalsize
|
320
|
+
\fi
|
321
|
+
\ifx\recls@baselineskip\@empty\else
|
322
|
+
\setlength{\baselineskip}{\recls@baselineskip}
|
323
|
+
\renewcommand{\normalsize}{%
|
324
|
+
\jsc@setfontsize\normalsize\@xpt\baselineskip% \@xiipt
|
325
|
+
\abovedisplayskip 11\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
326
|
+
\abovedisplayshortskip \z@ \@plus3\jsc@mpt
|
327
|
+
\belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt
|
328
|
+
\belowdisplayshortskip \belowdisplayskip
|
329
|
+
\let\@listi\@listI}
|
330
|
+
\normalsize
|
410
331
|
\fi
|
411
|
-
\
|
412
|
-
{\recls@fnt@scale\dimexpr 20\JQ}{\recls@fnt@scale\dimexpr 30H}}
|
413
|
-
\renewcommand{\LARGE}{\@setfontsize\LARGE
|
414
|
-
{\recls@fnt@scale\dimexpr 24\JQ}{\recls@fnt@scale\dimexpr 36H}}
|
415
|
-
\renewcommand{\huge}{\@setfontsize\huge
|
416
|
-
{\recls@fnt@scale\dimexpr 28\JQ}{\recls@fnt@scale\dimexpr 42H}}
|
417
|
-
\renewcommand{\Huge}{\@setfontsize\Huge
|
418
|
-
{\recls@fnt@scale\dimexpr 32\JQ}{\recls@fnt@scale\dimexpr 48H}}
|
419
|
-
\renewcommand{\HUGE}{\jsc@setfontsize\HUGE
|
420
|
-
{\recls@fnt@scale\dimexpr 36\JQ}{\recls@fnt@scale\dimexpr 54H}}
|
332
|
+
\setlength{\Cvs}{\baselineskip}
|
421
333
|
|
422
334
|
%% headheight, headsep, footskip
|
423
|
-
\setlength\topskip{\Cht}
|
424
|
-
\
|
425
|
-
\
|
426
|
-
\
|
427
|
-
\setlength\maxdepth{.5\topskip}
|
335
|
+
% \setlength\topskip{\Cht}%%<= カスタムにしても、jsbook.clsのままにしとく
|
336
|
+
\ifx\recls@headheight\@empty\else\setlength\headheight{\recls@headheight}\fi
|
337
|
+
\ifx\recls@headsep\@empty\else\setlength\headsep{\recls@headsep}\fi
|
338
|
+
\ifx\recls@footskip\@empty\else\setlength\footskip{\recls@footskip}\fi
|
339
|
+
% \setlength\maxdepth{.5\topskip}%%<= カスタムにしても、jsbook.clsのままにしとく
|
428
340
|
|
429
341
|
%% 字詰め数、行数
|
430
|
-
\
|
431
|
-
\
|
432
|
-
\
|
433
|
-
\
|
434
|
-
|
435
|
-
\
|
342
|
+
\ifx\recls@line@length\@empty\else
|
343
|
+
\@tempcnta\dimexpr\recls@line@length/\Cwd\relax
|
344
|
+
\setlength\textwidth{\@tempcnta\Cwd}
|
345
|
+
\setlength\fullwidth{\textwidth}
|
346
|
+
\fi
|
347
|
+
\ifx\recls@number@of@lines\@empty\else
|
348
|
+
\setlength\textheight{\recls@number@of@lines\Cvs}
|
349
|
+
\addtolength\textheight{-\Cvs}\addtolength\textheight{\Cwd}
|
350
|
+
\addtolength\textheight{1H}
|
351
|
+
\fi
|
436
352
|
|
437
353
|
%% ノド、小口
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
\
|
442
|
-
\
|
443
|
-
\
|
444
|
-
\addtolength\
|
354
|
+
%% gutterがあればそれに基づいて設定。
|
355
|
+
%% line_lengthが指定されていればtextwidth基準にして設定。
|
356
|
+
%% どちらも指定がなければjsbookをそのまま使用。
|
357
|
+
\ifx\recls@gutter\@empty
|
358
|
+
\ifx\recls@line@length\@empty\else
|
359
|
+
\setlength\oddsidemargin{\paperwidth}
|
360
|
+
\addtolength\oddsidemargin{-\fullwidth}%%line_lengthを与えたとき\textwidth
|
361
|
+
\setlength\oddsidemargin{.5\oddsidemargin}
|
362
|
+
\addtolength\oddsidemargin{-1in}
|
363
|
+
\setlength\evensidemargin{\oddsidemargin}
|
364
|
+
\edef\recls@gutter{\evensidemargin}
|
365
|
+
\fi
|
445
366
|
\else
|
446
|
-
\setlength\oddsidemargin\
|
447
|
-
\addtolength\oddsidemargin{
|
448
|
-
\setlength\
|
449
|
-
\addtolength\
|
450
|
-
\
|
451
|
-
\
|
367
|
+
\setlength\oddsidemargin{\recls@gutter}%ノド
|
368
|
+
\addtolength\oddsidemargin{-1in}
|
369
|
+
\setlength\evensidemargin{\paperwidth}
|
370
|
+
\addtolength\evensidemargin{-2in}
|
371
|
+
\addtolength\evensidemargin{-\oddsidemargin}
|
372
|
+
\addtolength\evensidemargin{-\textwidth}
|
452
373
|
\fi
|
453
374
|
|
454
375
|
%% 天、地
|
455
|
-
\
|
456
|
-
\
|
376
|
+
\ifx\recls@head@space\@empty
|
377
|
+
\ifx\recls@paperwidth\@empty\else\ifx\recls@paperheight\@empty\else
|
378
|
+
\setlength\topmargin\paperheight
|
379
|
+
\addtolength\topmargin{-\textheight}
|
380
|
+
\setlength\topmargin{.5\topmargin}
|
381
|
+
\addtolength\topmargin{-1in}
|
382
|
+
\addtolength\topmargin{-\headheight}\addtolength\topmargin{-\headsep}
|
383
|
+
\fi\fi
|
384
|
+
\ifx\recls@number@of@lines\@empty\else
|
385
|
+
\setlength\topmargin\paperheight
|
386
|
+
\addtolength\topmargin{-\textheight}
|
387
|
+
\setlength\topmargin{.5\topmargin}
|
388
|
+
\addtolength\topmargin{-1in}
|
389
|
+
\addtolength\topmargin{-\headheight}\addtolength\topmargin{-\headsep}
|
390
|
+
\fi
|
391
|
+
\edef\recls@head@space{\dimexpr\topmargin+1in+\headheight+\headsep}
|
457
392
|
\else
|
458
|
-
\setlength\topmargin\
|
459
|
-
\addtolength\topmargin{
|
460
|
-
\
|
461
|
-
\setlength\topmargin{.5\topmargin}
|
393
|
+
\setlength\topmargin{\recls@head@space}%天
|
394
|
+
\addtolength\topmargin{-1in}
|
395
|
+
\addtolength\topmargin{-\headheight}\addtolength\topmargin{-\headsep}
|
462
396
|
\fi
|
463
|
-
\addtolength\topmargin{-1in}
|
464
|
-
\addtolength\topmargin{-\headheight}\addtolength\topmargin{-\headsep}
|
465
397
|
|
466
398
|
%% load hyperref package
|
467
399
|
\RequirePackage[dvipdfmx, \if@pdfhyperlink\else draft,\fi
|
@@ -475,7 +407,7 @@
|
|
475
407
|
%% more useful macros
|
476
408
|
%% ----------
|
477
409
|
%% include fullpage graphics
|
478
|
-
\let\grnchry@head\recls@head
|
410
|
+
\let\grnchry@head\recls@head@space
|
479
411
|
\let\grnchry@gutter\recls@gutter
|
480
412
|
\newcommand*\includefullpagegraphics{%
|
481
413
|
\clearpage
|
@@ -503,7 +435,17 @@
|
|
503
435
|
\clearpage
|
504
436
|
}
|
505
437
|
|
506
|
-
|
438
|
+
%% 空ページ
|
439
|
+
\newcommand\oneblankpage{\clearpage\thispagestyle{empty}%
|
440
|
+
\hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi}
|
441
|
+
|
442
|
+
%% 横書き向けの、奇数ページまでの改丁(\cleardoublepage)・偶数ページまでの改丁(\clearoddpage)
|
443
|
+
\let\cleardoublepage@right\cleardoublepage
|
444
|
+
\def\cleardoublepage@left{\clearpage\if@twoside\ifodd\c@page
|
445
|
+
\hbox{}\thispagestyle{empty}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi}
|
446
|
+
\let\clearoddpage\cleardoublepage@left
|
447
|
+
|
448
|
+
%% coverオプションによる表紙判定の上書き
|
507
449
|
\def\recls@tmp{true}\ifx\recls@forcecover\recls@tmp
|
508
450
|
\@reclscovertrue
|
509
451
|
\else\def\recls@tmp{false}\ifx\recls@forcecover\recls@tmp
|
@@ -511,16 +453,16 @@
|
|
511
453
|
\else% それ以外の値は単に無視
|
512
454
|
\fi\fi
|
513
455
|
|
514
|
-
|
456
|
+
%% シンプルな通しノンブル
|
515
457
|
\ifrecls@serialpage
|
516
458
|
\renewcommand*{\pagenumbering}[1]{%
|
517
459
|
\gdef\thepage{\@arabic\c@page}}
|
518
460
|
\fi
|
519
461
|
|
520
|
-
|
462
|
+
%% 開始ページを変更
|
521
463
|
\g@addto@macro\frontmatter{\setcounter{page}{\the\recls@startpage}}
|
522
464
|
|
523
|
-
|
465
|
+
%% titlepageのsetcounterを使わない
|
524
466
|
\renewenvironment{titlepage}{%
|
525
467
|
\clearpage
|
526
468
|
\if@twoside\ifodd\c@page\else
|