review-retrovert 0.9.10 → 0.10.0

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.
Files changed (136) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +1 -1
  3. data/.gitignore +0 -1
  4. data/.pinact.yaml +12 -0
  5. data/.ruby-version +1 -1
  6. data/Dockerfile +2 -1
  7. data/Dockerfile.local +13 -0
  8. data/Gemfile.lock +62 -35
  9. data/Makefile +7 -0
  10. data/README.md +2 -1
  11. data/Rakefile +9 -0
  12. data/aqua.yaml +20 -0
  13. data/hooks/post_push +14 -1
  14. data/lib/review/retrovert/cli.rb +10 -2
  15. data/lib/review/retrovert/converter.rb +106 -20
  16. data/lib/review/retrovert/reviewdef.rb +29 -0
  17. data/lib/review/retrovert/sty/review-utbook.cls +7 -0
  18. data/lib/review/retrovert/version.rb +1 -1
  19. data/lib/review/retrovert/yamlconfig.rb +38 -1
  20. data/review-retrovert.gemspec +18 -4
  21. data/zizmor.yml +5 -0
  22. metadata +54 -121
  23. data/.github/FUNDING.yml +0 -4
  24. data/.github/workflows/release.yml +0 -26
  25. data/.github/workflows/retrovert.yml +0 -76
  26. data/testdata/mybook/.gitignore +0 -9
  27. data/testdata/mybook/.textlintrc +0 -11
  28. data/testdata/mybook/README.md +0 -43
  29. data/testdata/mybook/Rakefile +0 -24
  30. data/testdata/mybook/catalog.yml +0 -60
  31. data/testdata/mybook/config-noretrovert.yml +0 -404
  32. data/testdata/mybook/config-retrovert.yml +0 -16
  33. data/testdata/mybook/config-starter.yml +0 -264
  34. data/testdata/mybook/config.yml +0 -404
  35. data/testdata/mybook/contents/00-preface.re +0 -129
  36. data/testdata/mybook/contents/01-install.re +0 -305
  37. data/testdata/mybook/contents/02-tutorial.re +0 -1228
  38. data/testdata/mybook/contents/03-syntax.re +0 -4610
  39. data/testdata/mybook/contents/04-customize.re +0 -1064
  40. data/testdata/mybook/contents/05-faq.re +0 -606
  41. data/testdata/mybook/contents/06-bestpractice.re +0 -1343
  42. data/testdata/mybook/contents/91-compare.re +0 -418
  43. data/testdata/mybook/contents/92-filelist.re +0 -125
  44. data/testdata/mybook/contents/93-background.re +0 -267
  45. data/testdata/mybook/contents/99-postface.re +0 -39
  46. data/testdata/mybook/contents/r0-inner.re +0 -2
  47. data/testdata/mybook/contents/r0-root.re +0 -31
  48. data/testdata/mybook/contents/table.csv +0 -4
  49. data/testdata/mybook/contents/test.txt +0 -1
  50. data/testdata/mybook/css/normalize.css +0 -349
  51. data/testdata/mybook/css/webstyle.css +0 -692
  52. data/testdata/mybook/data/terms.txt +0 -3
  53. data/testdata/mybook/data/words.txt +0 -15
  54. data/testdata/mybook/images/03-syntax/favicon-16x16.png +0 -0
  55. data/testdata/mybook/images/03-syntax/figure_heretop.png +0 -0
  56. data/testdata/mybook/images/03-syntax/index-page.png +0 -0
  57. data/testdata/mybook/images/03-syntax/order-detail.png +0 -0
  58. data/testdata/mybook/images/03-syntax/tw-icon1.jpg +0 -0
  59. data/testdata/mybook/images/03-syntax/tw-icon2.jpg +0 -0
  60. data/testdata/mybook/images/03-syntax/tw-icon3.jpg +0 -0
  61. data/testdata/mybook/images/03-syntax/tw-icon4.jpg +0 -0
  62. data/testdata/mybook/images/04-customize/caption_pagebreak.png +0 -0
  63. data/testdata/mybook/images/04-customize/chaptitlepage_sample.png +0 -0
  64. data/testdata/mybook/images/04-customize/section_decoration_samples.png +0 -0
  65. data/testdata/mybook/images/05-faq/codeblock_rpadding1.png +0 -0
  66. data/testdata/mybook/images/05-faq/codeblock_rpadding2.png +0 -0
  67. data/testdata/mybook/images/05-faq/dummy-image.png +0 -0
  68. data/testdata/mybook/images/06-bestpractice/figure_heretop.png +0 -0
  69. data/testdata/mybook/images/06-bestpractice/font_beramono.png +0 -0
  70. data/testdata/mybook/images/06-bestpractice/heading_design1.png +0 -0
  71. data/testdata/mybook/images/06-bestpractice/heading_design2.png +0 -0
  72. data/testdata/mybook/images/06-bestpractice/margin_book.png +0 -0
  73. data/testdata/mybook/images/06-bestpractice/multiline-title.png +0 -0
  74. data/testdata/mybook/images/06-bestpractice/preface_numbered.png +0 -0
  75. data/testdata/mybook/images/06-bestpractice/program_border.png +0 -0
  76. data/testdata/mybook/images/06-bestpractice/sechead_design_4.png +0 -0
  77. data/testdata/mybook/images/06-bestpractice/section_title_wlines.png +0 -0
  78. data/testdata/mybook/images/06-bestpractice/titlepage-samples.png +0 -0
  79. data/testdata/mybook/images/93-background/bug913.png +0 -0
  80. data/testdata/mybook/images/93-background/slide2.png +0 -0
  81. data/testdata/mybook/images/avatar-b.png +0 -0
  82. data/testdata/mybook/images/avatar-g.png +0 -0
  83. data/testdata/mybook/images/avatar-r.png +0 -0
  84. data/testdata/mybook/images/caution-icon.png +0 -0
  85. data/testdata/mybook/images/cover_a5.pdf +0 -0
  86. data/testdata/mybook/images/cover_b5.pdf +0 -0
  87. data/testdata/mybook/images/info-icon.png +0 -0
  88. data/testdata/mybook/images/tw-icon.jpg +0 -0
  89. data/testdata/mybook/images/warning-icon.png +0 -0
  90. data/testdata/mybook/layouts/layout.epub.erb +0 -29
  91. data/testdata/mybook/layouts/layout.html5.erb +0 -108
  92. data/testdata/mybook/layouts/layout.tex.erb +0 -432
  93. data/testdata/mybook/layouts/layout.tex.erb.orig +0 -386
  94. data/testdata/mybook/lib/hooks/beforetexcompile.rb +0 -55
  95. data/testdata/mybook/lib/ruby/review-book.rb +0 -64
  96. data/testdata/mybook/lib/ruby/review-builder.rb +0 -1342
  97. data/testdata/mybook/lib/ruby/review-cli.rb +0 -58
  98. data/testdata/mybook/lib/ruby/review-compiler.rb +0 -1176
  99. data/testdata/mybook/lib/ruby/review-epubbuilder.rb +0 -33
  100. data/testdata/mybook/lib/ruby/review-epubmaker.rb +0 -609
  101. data/testdata/mybook/lib/ruby/review-htmlbuilder.rb +0 -949
  102. data/testdata/mybook/lib/ruby/review-latexbuilder.rb +0 -1065
  103. data/testdata/mybook/lib/ruby/review-maker.rb +0 -346
  104. data/testdata/mybook/lib/ruby/review-markdownbuilder.rb +0 -945
  105. data/testdata/mybook/lib/ruby/review-markdownmaker.rb +0 -91
  106. data/testdata/mybook/lib/ruby/review-monkeypatch.rb +0 -93
  107. data/testdata/mybook/lib/ruby/review-pdfmaker.rb +0 -546
  108. data/testdata/mybook/lib/ruby/review-textbuilder.rb +0 -36
  109. data/testdata/mybook/lib/ruby/review-tocparser.rb +0 -285
  110. data/testdata/mybook/lib/ruby/review-webmaker.rb +0 -448
  111. data/testdata/mybook/lib/tasks/mytasks.rake +0 -31
  112. data/testdata/mybook/lib/tasks/review.rake +0 -156
  113. data/testdata/mybook/lib/tasks/review.rake.orig +0 -72
  114. data/testdata/mybook/lib/tasks/starter.rake +0 -470
  115. data/testdata/mybook/locale.yml +0 -6
  116. data/testdata/mybook/review-ext.rb +0 -206
  117. data/testdata/mybook/sty/indexstyle.ist +0 -25
  118. data/testdata/mybook/sty/jumoline.sty +0 -310
  119. data/testdata/mybook/sty/mycolophon.sty +0 -81
  120. data/testdata/mybook/sty/mystyle.sty +0 -8
  121. data/testdata/mybook/sty/mytextsize.sty +0 -90
  122. data/testdata/mybook/sty/mytitlepage.sty +0 -126
  123. data/testdata/mybook/sty/review-base.sty +0 -276
  124. data/testdata/mybook/sty/reviewmacro.sty +0 -60
  125. data/testdata/mybook/sty/starter-codeblock.sty +0 -463
  126. data/testdata/mybook/sty/starter-color.sty +0 -134
  127. data/testdata/mybook/sty/starter-font.sty +0 -112
  128. data/testdata/mybook/sty/starter-heading.sty +0 -561
  129. data/testdata/mybook/sty/starter-misc.sty +0 -894
  130. data/testdata/mybook/sty/starter-note.sty +0 -180
  131. data/testdata/mybook/sty/starter-section.sty +0 -262
  132. data/testdata/mybook/sty/starter-talklist.sty +0 -105
  133. data/testdata/mybook/sty/starter-toc.sty +0 -72
  134. data/testdata/mybook/sty/starter-util.sty +0 -35
  135. data/testdata/mybook/sty/starter.sty +0 -36
  136. data/testdata/mybook/style.css +0 -597
@@ -1,386 +0,0 @@
1
- \documentclass[dvipdfmx,<%= @documentclassoption %>]{<%= @documentclass %>}
2
- % %% fixes to LaTeX2e
3
- % \usepackage{fix-cm}[2006/09/13 v1.1m]
4
- % \usepackage{fixltx2e}[2006/09/13 v1.1m]
5
-
6
- <%- if @texcompiler == "uplatex" -%>
7
- \usepackage[deluxe,uplatex]{otf}
8
- <%- else -%>
9
- \usepackage[deluxe]{otf}
10
- <%- end -%>
11
- \usepackage{caption}
12
- \usepackage{suffix}
13
- \usepackage[T1]{fontenc}\usepackage{textcomp}%T1/TS1
14
- \usepackage{lmodern}
15
- \usepackage[dvipdfmx]{graphicx}
16
- \usepackage[dvipdfmx,table]{xcolor}%requires colortbl, array
17
- \usepackage{framed}
18
- \usepackage{wrapfig}
19
- \definecolor{shadecolor}{gray}{0.9}
20
- \definecolor{shadecolorb}{gray}{0.1}
21
- \definecolor{reviewgreen}{rgb}{0,0.4,0}
22
- \definecolor{reviewblue}{rgb}{0.2,0.2,0.4}
23
- \definecolor{reviewred}{rgb}{0.7,0,0}
24
- \definecolor{reviewdarkred}{rgb}{0.3,0,0}
25
- \usepackage[utf8]{inputenc}
26
- \usepackage{ascmac}
27
- \usepackage{float}
28
- \usepackage{alltt}
29
- \usepackage{amsmath}
30
-
31
- %% if you use @<u>{} (underline), use jumoline.sty
32
- \IfFileExists{jumoline.sty}{
33
- \usepackage{jumoline}
34
- }
35
-
36
- \newenvironment{shadedb}{%
37
- \def\FrameCommand{\fboxsep=\FrameSep \colorbox{shadecolorb}}%
38
- \MakeFramed {\FrameRestore}}%
39
- {\endMakeFramed}
40
-
41
- <%- unless ["utbook", "tbook"].include?(@documentclass) -%>
42
- \usepackage[top=10zw,bottom=12zw,left=10zw,right=10zw]{geometry}
43
- %\usepackage[top=5zw,bottom=5zw,left=1zw,right=1zw]{geometry}
44
- <%- end -%>
45
-
46
- \newcommand{\parasep}{\vspace*{3zh}}
47
- \setlength{\footskip}{30pt}
48
-
49
- %% Bookmarkの文字化け対策(日本語向け)
50
- \usepackage[dvipdfmx,bookmarks=true,bookmarksnumbered=true,colorlinks=true,%
51
- pdftitle={<%= escape_latex(@config.name_of("booktitle")) %>},%
52
- pdfauthor={<%= escape_latex(@config.names_of("aut").join(I18n.t("names_splitter"))) %>}]{hyperref}
53
- \usepackage[dvipdfmx]{pxjahyper}
54
-
55
- <%- if ["utbook", "tbook"].include?(@documentclass) -%>
56
- \newcommand{\headfont}{\gtfamily\sffamily\bfseries}
57
- \usepackage{plext}
58
- <%- end -%>
59
-
60
- <%- if config["highlight"] && config["highlight"]["latex"] == "listings" -%>
61
- <%- if config["language"] == "ja" -%>
62
- \usepackage{listings,jlisting}
63
- <%- else -%>
64
- \usepackage{listings}
65
- <%- end -%>
66
- \renewcommand{\lstlistingname}{<%= escape_latex(I18n.t("list")) %>}
67
- \lstset{%
68
- breaklines=true,%
69
- breakautoindent=false,%
70
- breakindent=0pt,%
71
- fontadjust=true,%
72
- backgroundcolor=\color{shadecolor},%
73
- frame=single,%
74
- framerule=0pt,%
75
- basicstyle=\ttfamily\scriptsize,%
76
- commentstyle=\color{reviewgreen},%
77
- identifierstyle=\color{reviewblue},%
78
- stringstyle=\color{reviewred},%
79
- keywordstyle=\bfseries\color{reviewdarkred},%
80
- }
81
-
82
- \lstnewenvironment{reviewemlistlst}[1][]{\lstset{#1}}{}
83
- \lstnewenvironment{reviewemlistnumlst}[1][]{\lstset{numbers=left, #1}}{}
84
- \lstnewenvironment{reviewlistlst}[1][]{\lstset{#1}}{}
85
- \lstnewenvironment{reviewlistnumlst}[1][]{\lstset{numbers=left, #1}}{}
86
- \lstnewenvironment{reviewsourcelst}[1][]{\lstset{#1}}{}
87
- \lstnewenvironment{reviewsourcenumlst}[1][]{\lstset{numbers=left, #1}}{}
88
- \lstnewenvironment{reviewcmdlst}[1][]{\lstset{backgroundcolor=\color{white}, frameround=tttt, frame=trbl, #1}}{}
89
- <%- end -%>
90
-
91
- \newenvironment{reviewimage}{%
92
- \begin{figure}[H]
93
- \begin{center}}{%
94
- \end{center}
95
- \end{figure}}
96
-
97
- \newenvironment{reviewdummyimage}{%
98
- \begin{figure}[H]
99
- \begin{center}\begin{alltt}}{%
100
- \end{alltt}\end{center}
101
- \end{figure}}
102
-
103
- \newenvironment{reviewemlist}{%
104
- \medskip\small\begin{shaded}\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
105
- \end{alltt}\end{shaded}}
106
-
107
- \newenvironment{reviewlist}{%
108
- \begin{shaded}\small\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
109
- \end{alltt}\end{shaded}\par\vspace*{0.5zw}}
110
-
111
- \newenvironment{reviewsource}{%
112
- \begin{shaded}\small\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
113
- \end{alltt}\end{shaded}\par\vspace*{0.5zw}}
114
-
115
- \newenvironment{reviewcmd}{%
116
- \color{white}\medskip\small\begin{shadedb}\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
117
- \end{alltt}\end{shadedb}}
118
-
119
- \newenvironment{reviewbox}{%
120
- \medskip\small\begin{framed}\setlength{\baselineskip}{1.3zw}\begin{alltt}}{%
121
- \end{alltt}\end{framed}}
122
-
123
- \newenvironment{reviewtable}[1]{%
124
- \begin{center}\small\setlength{\baselineskip}{1.2zw}
125
- \begin{tabular}{#1}}{%
126
- \end{tabular}
127
- \end{center}}
128
-
129
- \newenvironment{reviewcolumn}{%
130
- \begin{framed}
131
- }{%
132
- \end{framed}
133
- \vspace{2zw}}
134
-
135
- \newcommand{\reviewcolumnhead}[2]{%
136
- {\noindent\large <%= escape_latex(I18n.t("column_head"))%>: #2}}
137
-
138
- \newcommand{\reviewtablecaption}[1]{%
139
- \caption{#1}}
140
-
141
- \WithSuffix\newcommand\reviewtablecaption*[1]{%
142
- \caption*{#1}}
143
-
144
- \newcommand{\reviewimgtablecaption}[1]{%
145
- \caption{#1}\vspace{-3mm}}
146
-
147
- \newcommand{\reviewbackslash}[0]{%
148
- \textbackslash{}}
149
-
150
- \newcommand{\reviewlistcaption}[1]{%
151
- \medskip{\small\noindent #1}\vspace*{-1.3zw}}
152
-
153
- \newcommand{\reviewemlistcaption}[1]{%
154
- \medskip{\small\noindent #1}\vspace*{-1.3zw}}
155
-
156
- \newcommand{\reviewsourcecaption}[1]{%
157
- \medskip{\small\noindent #1}\vspace*{-1.3zw}}
158
-
159
- \newcommand{\reviewcmdcaption}[1]{%
160
- \medskip{\small\noindent #1}\vspace*{-1.3zw}}
161
-
162
- \newcommand{\reviewindepimagecaption}[1]{%
163
- \begin{center}#1\end{center}}
164
-
165
- \newcommand{\reviewboxcaption}[1]{%
166
- \medskip{\small\noindent #1}\vspace*{-1.3zw}}
167
-
168
- \newcommand{\reviewimageref}[2]{<%= escape_latex(I18n.t("image"))%> #1}
169
- \newcommand{\reviewtableref}[2]{<%= escape_latex(I18n.t("table"))%> #1}
170
- \newcommand{\reviewlistref}[1]{<%= escape_latex(I18n.t("list"))%> #1}
171
- \newcommand{\reviewbibref}[2]{#1}
172
- \newcommand{\reviewcolumnref}[2]{<%= escape_latex(I18n.t("columnname"))%> #1}
173
- \newcommand{\reviewsecref}[2]{#1}
174
-
175
- \newcommand{\reviewminicolumntitle}[1]{%
176
- {\large <%= escape_latex(I18n.t("memo_head"))%>: #1}\\}
177
-
178
- <%- if @config["toctitle"].present? -%>
179
- \renewcommand{\contentsname}{<%= escape_latex(@config["toctitle"]) %>}
180
- <%- elsif I18n.t("toctitle") -%>
181
- \renewcommand{\contentsname}{<%= escape_latex(I18n.t("toctitle")) %>}
182
- <%- end -%>
183
-
184
- \newenvironment{reviewminicolumn}{%
185
- \vspace{1.5zw}\begin{screen}}{%
186
- \end{screen}\vspace{2zw}}
187
-
188
- \newcommand{\reviewkw}[1]{\textbf{\textgt{#1}}}
189
- \newcommand{\reviewami}[1]{\mask{#1}{A}}
190
- \newcommand{\reviewem}[1]{\textbf{#1}}
191
- \newcommand{\reviewstrong}[1]{\textbf{#1}}
192
- \newcommand{\reviewunderline}{\Underline}
193
-
194
- %% @<del> is ignored in LaTeX with default style
195
- \newcommand{\reviewstrike}[1]{#1}
196
-
197
- %%%% for ulem.sty:
198
- %%\renewcommand{\reviewstrike}[1]{\sout{#1}}
199
- %%
200
- %%%% for jumoline.sty:
201
- %%\renewcommand{\reviewstrike}[1]{\Middleline{#1}}
202
-
203
- \newcommand{\reviewth}[1]{\textgt{#1}}
204
- \newcommand{\reviewtitlefont}[0]{\usefont{T1}{phv}{b}{n}\gtfamily}
205
- \newcommand{\reviewmainfont}[0]{}
206
- \newcommand{\reviewcolophon}[0]{\clearpage}
207
- \newcommand{\reviewappendix}[0]{\appendix}
208
-
209
- \newcommand{\reviewprepartname}{<%= escape_latex(@locale_latex["prepartname"]) %>}
210
- \newcommand{\reviewpostpartname}{<%= escape_latex(@locale_latex["postpartname"]) %>}
211
- \newcommand{\reviewprechaptername}{<%= escape_latex(@locale_latex["prechaptername"]) %>}
212
- \newcommand{\reviewpostchaptername}{<%= escape_latex(@locale_latex["postchaptername"]) %>}
213
- \newcommand{\reviewfigurename}{<%= escape_latex(I18n.t("image")) %>}
214
- \newcommand{\reviewtablename}{<%= escape_latex(I18n.t("table")) %>}
215
- \newcommand{\reviewappendixname}{<%= escape_latex(@locale_latex["preappendixname"]) %>}
216
-
217
- \ifdefined\prepartname
218
- \renewcommand{\prepartname}{\reviewprepartname}
219
- \fi
220
- \ifdefined\postpartname
221
- \renewcommand{\postpartname}{\reviewpostpartname}
222
- \fi
223
- \ifdefined\prechaptername
224
- \renewcommand{\prechaptername}{\reviewprechaptername}
225
- \fi
226
- \ifdefined\postchaptername
227
- \renewcommand{\postchaptername}{\reviewpostchaptername}
228
- \fi
229
- \ifdefined\figurename
230
- \renewcommand{\figurename}{\reviewfigurename}
231
- \fi
232
- \ifdefined\tablename
233
- \renewcommand{\tablename}{\reviewtablename}
234
- \fi
235
- \ifdefined\appendixname
236
- \renewcommand{\appendixname}{\reviewappendixname}
237
- \fi
238
-
239
-
240
- \makeatletter
241
- %% maxwidth is the original width if it is less than linewidth
242
- %% otherwise use linewidth (to make sure the graphics do not exceed the margin)
243
- \def\maxwidth{%
244
- \ifdim\Gin@nat@width>\linewidth
245
- \linewidth
246
- \else
247
- \Gin@nat@width
248
- \fi
249
- }
250
- \makeatother
251
-
252
- <%- if @config["texstyle"] -%>
253
- <%- [@config["texstyle"]].flatten.each do |x| -%>
254
- \usepackage{<%= x %>}
255
- <%- end -%>
256
- <%- end -%>
257
- <%- if @config["makeindex"] -%>
258
- \usepackage{makeidx}
259
- \makeindex
260
- <%- end -%>
261
-
262
- \begin{document}
263
-
264
- \reviewmainfont
265
-
266
- <%- if @config["titlepage"] -%>
267
- <%- if @custom_titlepage -%>
268
- <%= @custom_titlepage %>
269
- <%- else -%>
270
- \begin{titlepage}
271
- <%- if @config["coverimage"] -%>
272
- \begin{center}
273
- \includegraphics[<%= @coverimageoption%>]{./<%= @config["imagedir"] %>/<%= @config["coverimage"] %>}
274
- \end{center}
275
- \clearpage
276
- <%- end -%>
277
- \thispagestyle{empty}
278
- \begin{center}%
279
- \mbox{} \vskip5zw
280
- \reviewtitlefont%
281
- {\Huge <%= escape_latex(@config.name_of("booktitle")) %> \par}%
282
- <%- if @config["subtitle"] -%>
283
- \vskip 1em%
284
- {\Large <%= escape_latex(@config.name_of("subtitle")) %> \par}%
285
- <%- end -%>
286
- \vskip 15em%
287
- {\huge
288
- \lineskip .75em
289
- \begin{tabular}[t]{c}%
290
- <%= @authors %>
291
- \end{tabular}\par}%
292
- \vfill
293
- {\large <%= escape_latex(@config["date"].to_s) %> <%= escape_latex(I18n.t("edition")) %>\hspace{2zw}<%= escape_latex(I18n.t("published_by", @config.names_of("pbl").join(I18n.t("names_splitter"))))%>\par}%
294
- \vskip4zw\mbox{}
295
- \end{center}%
296
- \end{titlepage}
297
- <%- end -%>
298
- <%- end -%>
299
-
300
- \renewcommand{\chaptermark}[1]{{}}
301
- \frontmatter
302
-
303
- %%% originaltitle
304
- <%- if @config["originaltitlefile"] -%>
305
- <%= @custom_originaltitlepage %>
306
- <%- end -%>
307
-
308
- %%% credit
309
- <%- if @config["creditfile"] -%>
310
- <%= @custom_creditpage %>
311
- <%- end -%>
312
-
313
- %% preface
314
- <%= @input_files["PREDEF"] %>
315
-
316
- <%- if @config["toc"] -%>
317
- \setcounter{tocdepth}{<%= @config["toclevel"] - 1 %>}
318
- \tableofcontents
319
- <%- end -%>
320
-
321
- \renewcommand{\chaptermark}[1]{\markboth{\prechaptername\thechapter\postchaptername~#1}{}}
322
- \mainmatter
323
- <%= @input_files["CHAPS"] %>
324
- \renewcommand{\chaptermark}[1]{\markboth{\appendixname\thechapter~#1}{}}
325
- \reviewappendix
326
- <%= @input_files["APPENDIX"] %>
327
-
328
- %% backmatter begins
329
- <%- if @input_files["POSTDEF"] or @config["colophon"] -%>
330
- \backmatter
331
- <%- end -%>
332
-
333
- <%- if @input_files["POSTDEF"] -%>
334
- <%= @input_files["POSTDEF"] %>
335
- <%- end -%>
336
- <%- if @config["pdfmaker"]["makeindex"] -%>
337
- \printindex
338
- <%- end -%>
339
-
340
- %%% profile
341
- <%- if @config["profile"] -%>
342
- <%= @custom_profilepage %>
343
- <%- end -%>
344
-
345
- %%% advfile
346
- <%- if @config["advfile"] -%>
347
- <%= @custom_advfilepage %>
348
- <%- end -%>
349
-
350
- %%% colophon
351
- <%- if @config["colophon"] -%>
352
- <%- if @custom_colophonpage -%>
353
- <%= @custom_colophonpage %>
354
- <%- else -%>
355
- %% okuduke
356
- \reviewcolophon
357
- \thispagestyle{empty}
358
-
359
- \vspace*{\fill}
360
-
361
- {\noindent\reviewtitlefont\Large <%= escape_latex(@config.name_of("booktitle")) %>} \\
362
- <%- if @config["subtitle"] -%>
363
- {\noindent\reviewtitlefont\large <%= escape_latex(@config.name_of("subtitle")) %>} \\
364
- <%- end -%>
365
- \rule[8pt]{\textwidth}{1pt} \\
366
- {\noindent
367
- <%= @config["pubhistory"].to_s.gsub(/\n/){"\n\n\\noindent\n"} %>
368
- }
369
-
370
- \begin{tabular}{ll}
371
- <%= @okuduke %>
372
- \end{tabular}
373
-  \\
374
- \rule[0pt]{\textwidth}{1pt} \\
375
- <%- if @config["rights"] -%>
376
- <%= @config.names_of("rights").map{|s| escape_latex(s)}.join('\\' + '\\') %> \\
377
- <%- end -%>
378
- <%- end -%>
379
- <%- end -%>
380
-
381
- %%% backcover
382
- <%- if @config["backcover"] -%>
383
- <%= @custom_backcoverpage %>
384
- <%- end -%>
385
-
386
- \end{document}
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # -*- coding: utf-8 -*-
3
-
4
- ##
5
- ## *.re を *.tex に変換したあとに実行されるスクリプト。
6
- ## 第1引数:作業用展開ディレクトリ
7
- ## 第2引数:呼び出しを実行したディレクトリ
8
- ##
9
-
10
-
11
- ##
12
- ## @arg texdir 作業用展開ディレクトリ
13
- ## @arg srcdir 呼び出しを実行したディレクトリ
14
- ##
15
- def main(texdir, srcdir)
16
- Dir.glob("#{texdir}/*.tex").each do |filename|
17
- s1 = File.open(filename, "rt:utf-8") {|f| f.read }
18
- s2 = fix_reviewcolumn(s1) # コラムをいろいろ修正
19
- if s1 != s2
20
- origfile = filename + ".orig"
21
- File.rename(filename, origfile) unless File.exist?(origfile)
22
- File.open(filename, "w:utf-8") {|f| f.write(s2) }
23
- end
24
- end
25
- end
26
-
27
- ##
28
- ## コラム(「==[column] タイトル」)を変換したあとのLaTeXコードを修正する
29
- ##
30
- def fix_reviewcolumn(content)
31
- return content.gsub(/^\\begin\{reviewcolumn\}$.*?^\\end\{reviewcolumn\}$/m) {|str|
32
- ##
33
- ## これ↓だと脚注が消えてしまうので
34
- ##
35
- ## \begin{reviewcolumn}
36
- ## 本文\footnotemark{}
37
- ## \footnotetext[1]{脚注} % ←コラム内に脚注がある
38
- ## \end{reviewcolumn}
39
- ##
40
- ## こう↓修正する
41
- ##
42
- ## \begin{reviewcolumn}
43
- ## 本文\footnotemark{}
44
- ## \end{reviewcolumn}
45
- ## \footnotetext[1]{脚注} % ←コラム外に脚注を移動する
46
- ##
47
- fntexts = []
48
- str = str.gsub(/^\\footnotetext\[\d+\]\{.*?\}\r?\n/m) {|s| fntexts << s; "" }
49
- str << "\n" << fntexts.join() if fntexts
50
- ##
51
- str
52
- }
53
- end
54
-
55
- main(*ARGV)
@@ -1,64 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
-
4
- require 'review/book'
5
- require 'review/book/base'
6
-
7
-
8
- module ReVIEW
9
-
10
-
11
- module Book
12
-
13
-
14
- class Base
15
-
16
- def parse_chapters
17
- conf = @config['starter']
18
- p = (conf['part_startnumber'] || 1) - 1 # 部番号
19
- c = (conf['chapter_startnumber'] || 1) - 1 # 章番号
20
- return enum_for(:_each_catalog_entry).map {|part_title, chap_files|
21
- chaps = chap_files.map {|chap_file|
22
- c += 1
23
- chap = _new_chapter(c, chap_file)
24
- c -= 1 unless chap.number # 章番号をつけないなら、番号を戻す
25
- c = chap.number if chap.number # 1ファイルに章が複数あったときの対応
26
- chap
27
- }
28
- p_ = part_title ? (p += 1) : nil
29
- _new_part(p_, chaps, part_title)
30
- }
31
- end
32
-
33
- private
34
-
35
- def _each_catalog_entry(&b)
36
- chap_files = []
37
- catalog().parts_with_chaps.each do |item|
38
- if item.is_a?(Hash)
39
- yield nil, chap_files unless chap_files.empty?
40
- chap_files = []
41
- item.each(&b)
42
- else
43
- chap_files << item
44
- end
45
- end
46
- yield nil, chap_files unless chap_files.empty?
47
- end
48
-
49
- def _new_chapter(chap_num, file)
50
- filepath = File.join(@basedir, file)
51
- return Chapter.new(self, chap_num, file, filepath)
52
- end
53
-
54
- def _new_part(part_num, chapters, title)
55
- return Part.new(self, part_num, chapters, title)
56
- end
57
-
58
- end
59
-
60
-
61
- end
62
-
63
-
64
- end