pandoc2review 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/pandoc.yml +18 -0
- data/.gitignore +47 -0
- data/Gemfile +6 -0
- data/LICENSE +339 -0
- data/README.md +105 -0
- data/Rakefile +13 -0
- data/exe/pandoc2review +12 -0
- data/lib/pandoc2review.rb +99 -0
- data/lua/filters.lua +163 -0
- data/lua/review.lua +620 -0
- data/markdown-format.ja.md +721 -0
- data/pandoc2review.gemspec +29 -0
- data/samples/format.md +276 -0
- data/samples/reviewsample/.gitignore +154 -0
- data/samples/reviewsample/Gemfile +4 -0
- data/samples/reviewsample/Rakefile +3 -0
- data/samples/reviewsample/catalog.yml +10 -0
- data/samples/reviewsample/ch01.md +38 -0
- data/samples/reviewsample/ch02.re +3 -0
- data/samples/reviewsample/config-ebook.yml +6 -0
- data/samples/reviewsample/config.yml +20 -0
- data/samples/reviewsample/images/cover-a5.ai +5836 -16
- data/samples/reviewsample/images/cover.jpg +0 -0
- data/samples/reviewsample/images/pandoc2review.png +0 -0
- data/samples/reviewsample/lib/tasks/review.rake +128 -0
- data/samples/reviewsample/lib/tasks/z01_pandoc2review.rake +69 -0
- data/samples/reviewsample/sty/README.md +168 -0
- data/samples/reviewsample/sty/gentombow.sty +769 -0
- data/samples/reviewsample/sty/jsbook.cls +2072 -0
- data/samples/reviewsample/sty/jumoline.sty +310 -0
- data/samples/reviewsample/sty/plistings.sty +326 -0
- data/samples/reviewsample/sty/review-base.sty +530 -0
- data/samples/reviewsample/sty/review-custom.sty +1 -0
- data/samples/reviewsample/sty/review-jsbook.cls +503 -0
- data/samples/reviewsample/sty/review-style.sty +49 -0
- data/samples/reviewsample/sty/reviewmacro.sty +15 -0
- data/samples/reviewsample/style.css +494 -0
- metadata +128 -0
@@ -0,0 +1,530 @@
|
|
1
|
+
\ProvidesClass{review-base}[2020/08/16]
|
2
|
+
\RequirePackage{ifthen}
|
3
|
+
\@ifundefined{Hy@Info}{% for jsbook.cls
|
4
|
+
\RequirePackage[dvipdfmx,bookmarks=true,bookmarksnumbered=true]{hyperref}
|
5
|
+
\RequirePackage[dvipdfmx]{pxjahyper}
|
6
|
+
\newif\if@reclscover \@reclscovertrue
|
7
|
+
\newcommand{\includefullpagegraphics}[2][]{%
|
8
|
+
\thispagestyle{empty}%
|
9
|
+
\begin{center}%
|
10
|
+
\includegraphics[#1]{#2}%
|
11
|
+
\end{center}}
|
12
|
+
\def\review@coverimageoption{width=\textwidth,height=\textheight,keepaspectratio}
|
13
|
+
}{}
|
14
|
+
\ifthenelse{\equal{\review@texcompiler}{uplatex}}{%
|
15
|
+
\RequirePackage[deluxe,uplatex]{otf}%
|
16
|
+
}{%
|
17
|
+
\RequirePackage[deluxe]{otf}%
|
18
|
+
}
|
19
|
+
\RequirePackage{caption}
|
20
|
+
\RequirePackage{needspace}
|
21
|
+
\RequirePackage{suffix}
|
22
|
+
\RequirePackage[T1]{fontenc}\RequirePackage{textcomp}%T1/TS1
|
23
|
+
\RequirePackage{lmodern}
|
24
|
+
\RequirePackage[dvipdfmx]{graphicx}
|
25
|
+
\RequirePackage[dvipdfmx,table]{xcolor}%requires colortbl, array
|
26
|
+
\RequirePackage{framed}
|
27
|
+
\RequirePackage{wrapfig}
|
28
|
+
\definecolor{shadecolor}{gray}{0.9}
|
29
|
+
\definecolor{shadecolorb}{gray}{0.1}
|
30
|
+
\definecolor{reviewgreen}{rgb}{0,0.4,0}
|
31
|
+
\definecolor{reviewblue}{rgb}{0.2,0.2,0.4}
|
32
|
+
\definecolor{reviewred}{rgb}{0.7,0,0}
|
33
|
+
\definecolor{reviewdarkred}{rgb}{0.3,0,0}
|
34
|
+
\RequirePackage[utf8]{inputenc}
|
35
|
+
\RequirePackage{ascmac}
|
36
|
+
\RequirePackage{float}
|
37
|
+
\RequirePackage{alltt}
|
38
|
+
\RequirePackage{amsmath}
|
39
|
+
\RequirePackage{amssymb}
|
40
|
+
\RequirePackage{amsthm}
|
41
|
+
\RequirePackage{bm}
|
42
|
+
\RequirePackage{tabularx}
|
43
|
+
|
44
|
+
%% if you use @<u>{} (underline), use jumoline.sty
|
45
|
+
\IfFileExists{jumoline.sty}{
|
46
|
+
\RequirePackage{jumoline}
|
47
|
+
}
|
48
|
+
|
49
|
+
\long\def\review@ifempty#1{\expandafter\ifx\expandafter\relax\detokenize{#1}\relax\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
|
50
|
+
|
51
|
+
%% pass bbox setting to extractbb of graphicx
|
52
|
+
\ifdefined\review@bbox
|
53
|
+
\def\Gin@pagebox{\review@bbox}
|
54
|
+
\fi
|
55
|
+
|
56
|
+
\newenvironment{shadedb}{%
|
57
|
+
\def\FrameCommand{\fboxsep=\FrameSep \colorbox{shadecolorb}}%
|
58
|
+
\MakeFramed {\FrameRestore}}%
|
59
|
+
{\endMakeFramed}
|
60
|
+
|
61
|
+
\newcommand{\parasep}{\vspace*{3zh}}
|
62
|
+
|
63
|
+
\RequirePackage{pxrubrica}
|
64
|
+
\@ifpackagelater{pxrubrica}{2017/04/20}{%
|
65
|
+
\rubysetup{J}}{%
|
66
|
+
\rubysetup{g}}
|
67
|
+
|
68
|
+
\ifthenelse{\equal{\review@documentclass}{utbook} \OR \equal{\review@documentclass}{tbook}}{%
|
69
|
+
\newcommand{\headfont}{\gtfamily\sffamily\bfseries}
|
70
|
+
\RequirePackage{plext}
|
71
|
+
}{%
|
72
|
+
}
|
73
|
+
|
74
|
+
\ifdefined\review@highlightlatex
|
75
|
+
\ifthenelse{\equal{\review@highlightlatex}{listings}}{%
|
76
|
+
\ifthenelse{\equal{\review@language}{ja}}{%
|
77
|
+
\RequirePackage{listings,plistings}
|
78
|
+
}{%
|
79
|
+
\RequirePackage{listings}
|
80
|
+
}%
|
81
|
+
\renewcommand{\lstlistingname}{\review@intn@list}
|
82
|
+
\lstset{%
|
83
|
+
breaklines=true,%
|
84
|
+
breakautoindent=false,%
|
85
|
+
breakindent=0pt,%
|
86
|
+
fontadjust=true,%
|
87
|
+
backgroundcolor=\color{shadecolor},%
|
88
|
+
frame=single,%
|
89
|
+
framerule=0pt,%
|
90
|
+
basicstyle=\ttfamily\scriptsize,%
|
91
|
+
commentstyle=\color{reviewgreen},%
|
92
|
+
identifierstyle=\color{reviewblue},%
|
93
|
+
stringstyle=\color{reviewred},%
|
94
|
+
keywordstyle=\bfseries\color{reviewdarkred},%
|
95
|
+
}
|
96
|
+
\lstnewenvironment{reviewemlistlst}[1][]{\lstset{#1}}{}
|
97
|
+
\lstnewenvironment{reviewemlistnumlst}[1][]{\lstset{numbers=left, #1}}{}
|
98
|
+
\lstnewenvironment{reviewlistlst}[1][]{\lstset{#1}}{}
|
99
|
+
\lstnewenvironment{reviewlistnumlst}[1][]{\lstset{numbers=left, #1}}{}
|
100
|
+
\lstnewenvironment{reviewsourcelst}[1][]{\lstset{#1}}{}
|
101
|
+
\lstnewenvironment{reviewsourcenumlst}[1][]{\lstset{numbers=left, #1}}{}
|
102
|
+
\lstnewenvironment{reviewcmdlst}[1][]{\lstset{backgroundcolor=\color{white}, frameround=tttt, frame=trbl, #1}}{}
|
103
|
+
}{%
|
104
|
+
}
|
105
|
+
\fi
|
106
|
+
|
107
|
+
\newenvironment{reviewimage}{%
|
108
|
+
\begin{figure}
|
109
|
+
\begin{center}}{%
|
110
|
+
\end{center}
|
111
|
+
\end{figure}}
|
112
|
+
|
113
|
+
\newenvironment{reviewdummyimage}{%
|
114
|
+
\begin{figure}
|
115
|
+
\begin{center}\begin{alltt}}{%
|
116
|
+
\end{alltt}\end{center}
|
117
|
+
\end{figure}}
|
118
|
+
|
119
|
+
\DeclareRobustCommand{\reviewincludegraphics}[2][]{%
|
120
|
+
\includegraphics[#1]{#2}}
|
121
|
+
|
122
|
+
\newcommand{\reviewequationcaption}[1]{%
|
123
|
+
\medskip{\small\noindent #1}}
|
124
|
+
\newenvironment{reviewequationblock}{\needspace{2\Cvs}}{}
|
125
|
+
|
126
|
+
\newenvironment{reviewlistblock}{\needspace{2\Cvs}}{}
|
127
|
+
|
128
|
+
\newenvironment{reviewemlist}{%
|
129
|
+
\medskip\small\begin{shaded}\ifdefined\reviewlistxkanjiskip\xkanjiskip=\reviewlistxkanjiskip\fi\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
|
130
|
+
\end{alltt}\end{shaded}}
|
131
|
+
|
132
|
+
\newenvironment{reviewlist}{%
|
133
|
+
\begin{shaded}\small\ifdefined\reviewlistxkanjiskip\xkanjiskip=\reviewlistxkanjiskip\fi\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
|
134
|
+
\end{alltt}\end{shaded}\par\vspace*{0.5zw}}
|
135
|
+
|
136
|
+
\newenvironment{reviewsource}{%
|
137
|
+
\begin{shaded}\small\ifdefined\reviewlistxkanjiskip\xkanjiskip=\reviewlistxkanjiskip\fi\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
|
138
|
+
\end{alltt}\end{shaded}\par\vspace*{0.5zw}}
|
139
|
+
|
140
|
+
\newenvironment{reviewcmd}{%
|
141
|
+
\color{white}\medskip\small\ifdefined\reviewlistxkanjiskip\xkanjiskip=\reviewlistxkanjiskip\fi\begin{shadedb}\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
|
142
|
+
\end{alltt}\end{shadedb}}
|
143
|
+
|
144
|
+
\newenvironment{reviewbox}{%
|
145
|
+
\medskip\small\begin{framed}\ifdefined\reviewlistxkanjiskip\xkanjiskip=\reviewlistxkanjiskip\fi\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
|
146
|
+
\end{alltt}\end{framed}}
|
147
|
+
|
148
|
+
\newenvironment{reviewtable}[1]{%
|
149
|
+
\begin{center}\small\setlength{\baselineskip}{1.2zw}
|
150
|
+
\begin{tabular}{#1}}{%
|
151
|
+
\end{tabular}
|
152
|
+
\end{center}}
|
153
|
+
|
154
|
+
\newenvironment{reviewcolumn}[1][]{%
|
155
|
+
\begin{framed}
|
156
|
+
\reviewcolumnhead{}{#1}
|
157
|
+
}{%
|
158
|
+
\end{framed}
|
159
|
+
\vspace{2zw}}
|
160
|
+
|
161
|
+
\newcommand{\reviewcolumnhead}[2]{%
|
162
|
+
{\noindent\large \review@intn@columnhead{}: #2}}
|
163
|
+
|
164
|
+
\newcommand{\reviewtablecaption}[1]{%
|
165
|
+
\caption{#1}}
|
166
|
+
|
167
|
+
\WithSuffix\newcommand\reviewtablecaption*[1]{%
|
168
|
+
\caption*{#1}}
|
169
|
+
|
170
|
+
\newcommand\reviewimagecaption[1]{%
|
171
|
+
\caption{#1}}
|
172
|
+
|
173
|
+
\newcommand{\reviewimgtablecaption}[1]{%
|
174
|
+
\caption{#1}\vspace{-3mm}}
|
175
|
+
|
176
|
+
\newcommand{\reviewbackslash}[0]{%
|
177
|
+
\textbackslash{}}
|
178
|
+
|
179
|
+
\newcommand{\reviewlistcaption}[1]{%
|
180
|
+
\medskip{\small\noindent #1}\vspace*{-1.3zw}}
|
181
|
+
|
182
|
+
\newcommand{\reviewemlistcaption}[1]{%
|
183
|
+
\medskip{\small\noindent #1}\vspace*{-1.3zw}}
|
184
|
+
|
185
|
+
\newcommand{\reviewsourcecaption}[1]{%
|
186
|
+
\medskip{\small\noindent #1}\vspace*{-1.3zw}}
|
187
|
+
|
188
|
+
\newcommand{\reviewcmdcaption}[1]{%
|
189
|
+
\medskip{\small\noindent #1}\vspace*{-1.3zw}}
|
190
|
+
|
191
|
+
\newcommand{\reviewindepimagecaption}[1]{%
|
192
|
+
\begin{center}#1\end{center}}
|
193
|
+
|
194
|
+
\newcommand{\reviewboxcaption}[1]{%
|
195
|
+
\medskip{\small\noindent #1}\vspace*{-1.3zw}}
|
196
|
+
|
197
|
+
\newcommand{\reviewimageref}[2]{\review@intn@image #1}
|
198
|
+
\newcommand{\reviewtableref}[2]{\review@intn@table #1}
|
199
|
+
\newcommand{\reviewlistref}[1]{\review@intn@list #1}
|
200
|
+
\newcommand{\reviewequationref}[1]{\review@intn@equation #1}
|
201
|
+
\newcommand{\reviewbibref}[2]{\hyperref[#2]{#1}}
|
202
|
+
\newcommand{\reviewcolumnref}[2]{#1}% XXX:ハイパーリンクにはreviewcolumn側の調整が必要
|
203
|
+
\newcommand{\reviewchapref}[2]{\hyperref[#2]{#1}}
|
204
|
+
\newcommand{\reviewsecref}[2]{\hyperref[#2]{#1}}
|
205
|
+
|
206
|
+
\newenvironment{reviewpart}{%
|
207
|
+
\setcounter{section}{0}%
|
208
|
+
\renewcommand{\thesection}{\thepart.\@arabic\c@section}%
|
209
|
+
}{}
|
210
|
+
|
211
|
+
\newcommand{\reviewminicolumntitle}[1]{%
|
212
|
+
\review@ifempty{#1}{}{%
|
213
|
+
{\large \review@intn@memohead{}: #1}\\}}
|
214
|
+
|
215
|
+
\renewcommand{\contentsname}{\review@toctitle}
|
216
|
+
|
217
|
+
\newenvironment{reviewminicolumn}{%
|
218
|
+
\vspace{1.5zw}\begin{screen}}{%
|
219
|
+
\end{screen}\vspace{2zw}}
|
220
|
+
|
221
|
+
\newenvironment{reviewnote}[1][]{%
|
222
|
+
\begin{reviewminicolumn}
|
223
|
+
\review@ifempty{#1}{}{\reviewminicolumntitle{#1}}
|
224
|
+
}{\end{reviewminicolumn}}
|
225
|
+
\newenvironment{reviewmemo}[1][]{%
|
226
|
+
\begin{reviewminicolumn}
|
227
|
+
\reviewminicolumntitle{#1}
|
228
|
+
}{\end{reviewminicolumn}}
|
229
|
+
\newenvironment{reviewtip}[1][]{%
|
230
|
+
\begin{reviewminicolumn}
|
231
|
+
\reviewminicolumntitle{#1}
|
232
|
+
}{\end{reviewminicolumn}}
|
233
|
+
\newenvironment{reviewinfo}[1][]{%
|
234
|
+
\begin{reviewminicolumn}
|
235
|
+
\reviewminicolumntitle{#1}
|
236
|
+
}{\end{reviewminicolumn}}
|
237
|
+
\newenvironment{reviewwarning}[1][]{%
|
238
|
+
\begin{reviewminicolumn}
|
239
|
+
\reviewminicolumntitle{#1}
|
240
|
+
}{\end{reviewminicolumn}}
|
241
|
+
\newenvironment{reviewimportant}[1][]{%
|
242
|
+
\begin{reviewminicolumn}
|
243
|
+
\reviewminicolumntitle{#1}
|
244
|
+
}{\end{reviewminicolumn}}
|
245
|
+
\newenvironment{reviewcaution}[1][]{%
|
246
|
+
\begin{reviewminicolumn}
|
247
|
+
\reviewminicolumntitle{#1}
|
248
|
+
}{\end{reviewminicolumn}}
|
249
|
+
\newenvironment{reviewnotice}[1][]{%
|
250
|
+
\begin{reviewminicolumn}
|
251
|
+
\reviewminicolumntitle{#1}
|
252
|
+
}{\end{reviewminicolumn}}
|
253
|
+
|
254
|
+
\DeclareRobustCommand{\reviewkw}[1]{\textbf{\textgt{#1}}}
|
255
|
+
\DeclareRobustCommand{\reviewami}[1]{\mask{#1}{A}}
|
256
|
+
\DeclareRobustCommand{\reviewem}[1]{\textbf{#1}}
|
257
|
+
\DeclareRobustCommand{\reviewstrong}[1]{\textbf{#1}}
|
258
|
+
\DeclareRobustCommand{\reviewballoon}[1]{←{#1}}
|
259
|
+
\DeclareRobustCommand{\reviewunderline}[1]{\Underline{#1}}
|
260
|
+
\DeclareRobustCommand{\reviewit}[1]{\textit{#1}}
|
261
|
+
\DeclareRobustCommand{\reviewbold}[1]{\textbf{#1}}
|
262
|
+
|
263
|
+
% allow break line in tt
|
264
|
+
% contributed by @zr_tex8r
|
265
|
+
\g@addto@macro\pdfstringdefPreHook{% for PDF bookmarks
|
266
|
+
\def\reviewami#1{#1}
|
267
|
+
\def\reviewbreakall#1{#1}
|
268
|
+
\def\reviewballoon#1{#1}
|
269
|
+
\def\reviewbou#1{#1}
|
270
|
+
\def\reviewkw#1{#1}
|
271
|
+
\def\reviewstrike#1{#1}
|
272
|
+
\def\reviewunderline#1{#1}
|
273
|
+
}
|
274
|
+
\newif\ifreview@ba@break
|
275
|
+
\def\review@ba@end{\review@ba@end@}
|
276
|
+
\DeclareRobustCommand{\reviewbreakall}[1]{%
|
277
|
+
\begingroup
|
278
|
+
\review@ba@breakfalse
|
279
|
+
\review@break@all@a#1\review@ba@end
|
280
|
+
\endgroup
|
281
|
+
}
|
282
|
+
\def\review@break@all@a{%
|
283
|
+
\futurelet\review@ba@tok\review@break@all@b
|
284
|
+
}
|
285
|
+
\def\review@break@all@b{%
|
286
|
+
\ifx\review@ba@tok\review@ba@end
|
287
|
+
\let\next\@gobble
|
288
|
+
\else\ifx\review@ba@tok\@sptoken
|
289
|
+
\let\next\review@break@all@c
|
290
|
+
\else\ifx\review@ba@tok~%
|
291
|
+
\let\next\review@break@all@d
|
292
|
+
\else\ifx\review@ba@tok\bgroup
|
293
|
+
\let\next\review@break@all@e
|
294
|
+
\else
|
295
|
+
\let\next\review@break@all@f
|
296
|
+
\fi\fi\fi\fi
|
297
|
+
\next
|
298
|
+
}
|
299
|
+
\expandafter\def\expandafter\review@break@all@c\space{%
|
300
|
+
\space
|
301
|
+
\review@ba@breakfalse
|
302
|
+
\review@break@all@a
|
303
|
+
}
|
304
|
+
\def\review@break@all@d#1{%
|
305
|
+
\review@break@all@f{\mbox{\space}}%
|
306
|
+
}
|
307
|
+
\def\review@break@all@e#1{%
|
308
|
+
\review@break@all@f{{#1}}%
|
309
|
+
}
|
310
|
+
\def\review@break@all@f#1{%
|
311
|
+
\ifreview@ba@break
|
312
|
+
\hskip0pt plus 0.02em\relax
|
313
|
+
\fi
|
314
|
+
#1%
|
315
|
+
\review@ba@breaktrue
|
316
|
+
\review@break@all@a
|
317
|
+
}
|
318
|
+
\DeclareRobustCommand{\reviewtt}[1]{{\ttfamily\reviewbreakall{#1}}}
|
319
|
+
\DeclareRobustCommand{\reviewcode}[1]{{\ttfamily\reviewbreakall{#1}}}
|
320
|
+
\DeclareRobustCommand{\reviewtti}[1]{{\ttfamily\itshape\reviewbreakall{#1}}}
|
321
|
+
\DeclareRobustCommand{\reviewttb}[1]{{\ttfamily\bfseries\reviewbreakall{#1}}}
|
322
|
+
|
323
|
+
\DeclareRobustCommand{\reviewbou}[1]{\kenten{#1}}
|
324
|
+
|
325
|
+
%% @<del> is ignored in LaTeX with default style
|
326
|
+
\DeclareRobustCommand{\reviewstrike}[1]{#1}
|
327
|
+
|
328
|
+
%%%% for ulem.sty:
|
329
|
+
%%\renewcommand{\reviewstrike}[1]{\sout{#1}}
|
330
|
+
%%
|
331
|
+
%%%% for jumoline.sty:
|
332
|
+
%%\renewcommand{\reviewstrike}[1]{\Middleline{#1}}
|
333
|
+
|
334
|
+
\newcommand{\reviewth}[1]{\textgt{#1}}
|
335
|
+
\newcommand{\reviewtitlefont}[0]{\usefont{T1}{phv}{b}{n}\gtfamily}
|
336
|
+
\newcommand{\reviewmainfont}[0]{}
|
337
|
+
\newcommand{\reviewcolophon}[0]{\clearpage}
|
338
|
+
\newcommand{\reviewappendix}[0]{\appendix}
|
339
|
+
|
340
|
+
\newcommand{\reviewprepartname}{\review@prepartname}
|
341
|
+
\newcommand{\reviewpostpartname}{\review@postpartname}
|
342
|
+
\newcommand{\reviewprechaptername}{\review@prechaptername}
|
343
|
+
\newcommand{\reviewpostchaptername}{\review@postchaptername}
|
344
|
+
\newcommand{\reviewfigurename}{\review@figurename}
|
345
|
+
\newcommand{\reviewtablename}{\review@tablename}
|
346
|
+
\newcommand{\reviewappendixname}{\review@appendixname}
|
347
|
+
|
348
|
+
\ifdefined\prepartname
|
349
|
+
\renewcommand{\prepartname}{\reviewprepartname}
|
350
|
+
\fi
|
351
|
+
\ifdefined\postpartname
|
352
|
+
\renewcommand{\postpartname}{\reviewpostpartname}
|
353
|
+
\fi
|
354
|
+
\ifdefined\prechaptername
|
355
|
+
\renewcommand{\prechaptername}{\reviewprechaptername}
|
356
|
+
\fi
|
357
|
+
\ifdefined\postchaptername
|
358
|
+
\renewcommand{\postchaptername}{\reviewpostchaptername}
|
359
|
+
\fi
|
360
|
+
\ifdefined\figurename
|
361
|
+
\renewcommand{\figurename}{\reviewfigurename}
|
362
|
+
\fi
|
363
|
+
\ifdefined\tablename
|
364
|
+
\renewcommand{\tablename}{\reviewtablename}
|
365
|
+
\fi
|
366
|
+
\ifdefined\appendixname
|
367
|
+
\renewcommand{\appendixname}{\reviewappendixname}
|
368
|
+
\fi
|
369
|
+
|
370
|
+
% PDF meta information
|
371
|
+
\def\recls@tmp{ebook}\ifx\recls@cameraready\recls@tmp
|
372
|
+
\hypersetup{
|
373
|
+
pdftitle={\review@booktitlename},
|
374
|
+
pdfauthor={\ifdefined\review@autnames\review@autnames\fi},
|
375
|
+
pdfcreator={Re:VIEW \review@reviewversion, with LaTeX}
|
376
|
+
}
|
377
|
+
\else
|
378
|
+
\newcommand*\PDFDocumentInformation[1]{%
|
379
|
+
\AtBeginShipoutFirst{\special{pdf:docinfo <<#1>>}}}
|
380
|
+
\@onlypreamble\PDFDocumentInformation
|
381
|
+
|
382
|
+
% for non hyperref. escaped character will be displayed funny...
|
383
|
+
\PDFDocumentInformation{
|
384
|
+
/Title (\review@booktitlename)
|
385
|
+
\ifdefined\review@autnames /Author (\review@autnames)\fi
|
386
|
+
% /Subject ()
|
387
|
+
% /Keywords (,,)
|
388
|
+
/Creator (Re:VIEW \review@reviewversion, with LaTeX)
|
389
|
+
}
|
390
|
+
\fi
|
391
|
+
|
392
|
+
%% maxwidth is the original width if it is less than linewidth
|
393
|
+
%% otherwise use linewidth (to make sure the graphics do not exceed the margin)
|
394
|
+
\def\maxwidth{%
|
395
|
+
\ifdim\Gin@nat@width>\linewidth
|
396
|
+
\linewidth
|
397
|
+
\else
|
398
|
+
\Gin@nat@width
|
399
|
+
\fi
|
400
|
+
}
|
401
|
+
|
402
|
+
% hooks
|
403
|
+
\def\reviewbegindocumenthook{}
|
404
|
+
|
405
|
+
\def\reviewenddocumenthook{}
|
406
|
+
|
407
|
+
\def\reviewfrontmatterhook{%
|
408
|
+
\renewcommand{\chaptermark}[1]{{}}
|
409
|
+
\frontmatter
|
410
|
+
}
|
411
|
+
|
412
|
+
\def\reviewmainmatterhook{%
|
413
|
+
\renewcommand{\chaptermark}[1]{\markboth{\prechaptername\thechapter\postchaptername~##1}{}}
|
414
|
+
\mainmatter
|
415
|
+
}
|
416
|
+
|
417
|
+
\def\reviewappendixhook{%
|
418
|
+
\renewcommand{\chaptermark}[1]{\markboth{\appendixname\thechapter~##1}{}}
|
419
|
+
\reviewappendix
|
420
|
+
}
|
421
|
+
|
422
|
+
\def\reviewbackmatterhook{%
|
423
|
+
\backmatter
|
424
|
+
}
|
425
|
+
|
426
|
+
% cover
|
427
|
+
\newcommand*\covermatter{%
|
428
|
+
\ifdefined\review@usecovernombre%
|
429
|
+
\pagenumbering{coverpagezero}
|
430
|
+
\setcounter{page}{0}% force to even page, to avoid empty page
|
431
|
+
\fi
|
432
|
+
}
|
433
|
+
|
434
|
+
\if@reclscover
|
435
|
+
\ifdefined\review@coverimage
|
436
|
+
\ifrecls@coverfitpage
|
437
|
+
\def\review@coverimageoption{width=\paperwidth,height=\paperheight}
|
438
|
+
\fi
|
439
|
+
\def\reviewcoverpagecont{%
|
440
|
+
\expandafter\includefullpagegraphics\expandafter[\review@coverimageoption]{\review@coverimage}
|
441
|
+
\cleardoublepage
|
442
|
+
}
|
443
|
+
\fi
|
444
|
+
\ifdefined\review@coverfile
|
445
|
+
\def\reviewcoverpagecont{\review@coverfile}
|
446
|
+
\fi
|
447
|
+
\fi
|
448
|
+
|
449
|
+
% titlepage
|
450
|
+
\ifdefined\review@titlepage
|
451
|
+
\ifthenelse{\isundefined{\review@titlefile}}{%
|
452
|
+
\def\reviewtitlepagecont{%
|
453
|
+
\begin{titlepage}
|
454
|
+
\thispagestyle{empty}
|
455
|
+
\begin{center}%
|
456
|
+
\mbox{} \vskip5zw
|
457
|
+
\reviewtitlefont%
|
458
|
+
{\Huge\review@booktitlename\par}%
|
459
|
+
\ifdefined\review@subtitlename
|
460
|
+
\vskip 1em%
|
461
|
+
{\Large\review@subtitlename\par}%
|
462
|
+
\fi
|
463
|
+
\vskip 15em%
|
464
|
+
{\huge
|
465
|
+
\lineskip .75em
|
466
|
+
\begin{tabular}[t]{p{\textwidth}}%
|
467
|
+
\centering\review@titlepageauthors
|
468
|
+
\end{tabular}\par}%
|
469
|
+
\vfill
|
470
|
+
{\large\review@date \review@intn@edition\hspace{2zw}\review@intn@publishedby\par}%
|
471
|
+
\vskip4zw\mbox{}
|
472
|
+
\end{center}%
|
473
|
+
\end{titlepage}\clearpage
|
474
|
+
}
|
475
|
+
}{%
|
476
|
+
\def\reviewtitlepagecont{\review@titlefile}
|
477
|
+
}
|
478
|
+
\fi
|
479
|
+
|
480
|
+
% toc
|
481
|
+
\ifdefined\review@toc
|
482
|
+
\def\reviewtableofcontents{%
|
483
|
+
\setcounter{tocdepth}{\review@tocdepth}
|
484
|
+
\tableofcontents
|
485
|
+
}
|
486
|
+
\fi
|
487
|
+
|
488
|
+
% index
|
489
|
+
\ifdefined\review@makeindex
|
490
|
+
\RequirePackage{makeidx}
|
491
|
+
\makeindex
|
492
|
+
\fi
|
493
|
+
|
494
|
+
\ifdefined\review@makeindex
|
495
|
+
\def\reviewprintindex{%
|
496
|
+
\printindex
|
497
|
+
}
|
498
|
+
\fi
|
499
|
+
|
500
|
+
% colophon
|
501
|
+
\ifdefined\review@colophon
|
502
|
+
\ifthenelse{\isundefined{\review@colophonfile}}{%
|
503
|
+
\def\reviewcolophonpagecont{%
|
504
|
+
\reviewcolophon
|
505
|
+
\thispagestyle{empty}
|
506
|
+
\vspace*{\fill}
|
507
|
+
{\noindent\reviewtitlefont\Large\review@booktitlename}\\
|
508
|
+
\ifdefined\review@subtitlename
|
509
|
+
{\noindent\reviewtitlefont\large\review@subtitlename} \\
|
510
|
+
\fi
|
511
|
+
\rule[8pt]{\textwidth}{1pt} \\
|
512
|
+
{\noindent\review@pubhistories}
|
513
|
+
|
514
|
+
\begin{tabularx}{\dimexpr\textwidth-0.5em}{lX}
|
515
|
+
\review@colophonnames
|
516
|
+
\end{tabularx}
|
517
|
+
\\
|
518
|
+
\rule[0pt]{\textwidth}{1pt} \\
|
519
|
+
\ifdefined\review@rights
|
520
|
+
\review@rights
|
521
|
+
\fi
|
522
|
+
}%
|
523
|
+
}{%
|
524
|
+
\def\reviewcolophonpagecont{\review@colophonfile}
|
525
|
+
}
|
526
|
+
\fi
|
527
|
+
|
528
|
+
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
529
|
+
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|
530
|
+
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
|