review-retrovert 0.2.2 → 0.9.1
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/.github/workflows/retrovert.yml +39 -0
- data/.gitignore +2 -2
- data/.ruby-version +1 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +68 -2
- data/README.md +6 -3
- data/lib/review/retrovert/cli.rb +2 -0
- data/lib/review/retrovert/converter.rb +255 -16
- data/lib/review/retrovert/version.rb +1 -1
- data/review-retrovert.gemspec +1 -1
- data/testdata/mybook/.gitignore +7 -0
- data/testdata/mybook/README.md +43 -0
- data/testdata/mybook/Rakefile +16 -0
- data/testdata/mybook/catalog.yml +33 -0
- data/testdata/mybook/config-starter.yml +139 -0
- data/testdata/mybook/config.yml +375 -0
- data/testdata/mybook/contents/00-preface.re +83 -0
- data/testdata/mybook/contents/01-install.re +272 -0
- data/testdata/mybook/contents/02-tutorial.re +1008 -0
- data/testdata/mybook/contents/03-syntax.re +2613 -0
- data/testdata/mybook/contents/04-customize.re +728 -0
- data/testdata/mybook/contents/05-faq.re +328 -0
- data/testdata/mybook/contents/06-bestpractice.re +971 -0
- data/testdata/mybook/contents/91-compare.re +18 -0
- data/testdata/mybook/contents/92-filelist.re +119 -0
- data/testdata/mybook/contents/93-background.re +267 -0
- data/testdata/mybook/contents/99-postface.re +38 -0
- data/testdata/mybook/css/normalize.css +349 -0
- data/testdata/mybook/css/webstyle.css +514 -0
- data/testdata/mybook/images/03-syntax/favicon-16x16.png +0 -0
- data/testdata/mybook/images/03-syntax/figure_heretop.png +0 -0
- data/testdata/mybook/images/03-syntax/tw-icon1.jpg +0 -0
- data/testdata/mybook/images/03-syntax/tw-icon2.jpg +0 -0
- data/testdata/mybook/images/03-syntax/tw-icon3.jpg +0 -0
- data/testdata/mybook/images/03-syntax/tw-icon4.jpg +0 -0
- data/testdata/mybook/images/04-customize/caption_pagebreak.png +0 -0
- data/testdata/mybook/images/04-customize/chaptitlepage_sample.png +0 -0
- data/testdata/mybook/images/05-faq/codeblock_rpadding1.png +0 -0
- data/testdata/mybook/images/05-faq/codeblock_rpadding2.png +0 -0
- data/testdata/mybook/images/06-bestpractice/figure_heretop.png +0 -0
- data/testdata/mybook/images/06-bestpractice/font_beramono.png +0 -0
- data/testdata/mybook/images/06-bestpractice/heading_design1.png +0 -0
- data/testdata/mybook/images/06-bestpractice/heading_design2.png +0 -0
- data/testdata/mybook/images/06-bestpractice/margin_book.png +0 -0
- data/testdata/mybook/images/06-bestpractice/multiline-title.png +0 -0
- data/testdata/mybook/images/06-bestpractice/preface_numbered.png +0 -0
- data/testdata/mybook/images/06-bestpractice/program_border.png +0 -0
- data/testdata/mybook/images/06-bestpractice/sechead_design_4.png +0 -0
- data/testdata/mybook/images/06-bestpractice/titlepage-samples.png +0 -0
- data/testdata/mybook/images/93-background/bug913.png +0 -0
- data/testdata/mybook/images/93-background/slide2.png +0 -0
- data/testdata/mybook/images/cover_a5.pdf +0 -0
- data/testdata/mybook/images/cover_b5.pdf +0 -0
- data/testdata/mybook/images/tw-icon.jpg +0 -0
- data/testdata/mybook/layouts/layout.epub.erb +29 -0
- data/testdata/mybook/layouts/layout.html5.erb +106 -0
- data/testdata/mybook/layouts/layout.tex.erb +546 -0
- data/testdata/mybook/lib/hooks/beforetexcompile.rb +55 -0
- data/testdata/mybook/lib/ruby/review-builder.rb +503 -0
- data/testdata/mybook/lib/ruby/review-cli.rb +58 -0
- data/testdata/mybook/lib/ruby/review-compiler.rb +523 -0
- data/testdata/mybook/lib/ruby/review-epubmaker.rb +606 -0
- data/testdata/mybook/lib/ruby/review-htmlbuilder.rb +661 -0
- data/testdata/mybook/lib/ruby/review-latexbuilder.rb +782 -0
- data/testdata/mybook/lib/ruby/review-maker.rb +235 -0
- data/testdata/mybook/lib/ruby/review-monkeypatch.rb +91 -0
- data/testdata/mybook/lib/ruby/review-pdfmaker.rb +468 -0
- data/testdata/mybook/lib/ruby/review-textbuilder.rb +36 -0
- data/testdata/mybook/lib/ruby/review-tocparser.rb +285 -0
- data/testdata/mybook/lib/ruby/review-webmaker.rb +433 -0
- data/testdata/mybook/lib/tasks/mytasks.rake +31 -0
- data/testdata/mybook/lib/tasks/review.rake +142 -0
- data/testdata/mybook/lib/tasks/review.rake.orig +72 -0
- data/testdata/mybook/lib/tasks/starter.rake +326 -0
- data/testdata/mybook/locale.yml +6 -0
- data/testdata/mybook/review-ext.rb +206 -0
- data/testdata/mybook/sty/jumoline.sty +310 -0
- data/testdata/mybook/sty/mycolophon.sty +81 -0
- data/testdata/mybook/sty/mystyle.sty +8 -0
- data/testdata/mybook/sty/mytextsize.sty +61 -0
- data/testdata/mybook/sty/mytitlepage.sty +103 -0
- data/testdata/mybook/sty/reviewmacro.sty +60 -0
- data/testdata/mybook/sty/starter-codeblock.sty +332 -0
- data/testdata/mybook/sty/starter-color.sty +79 -0
- data/testdata/mybook/sty/starter-font.sty +112 -0
- data/testdata/mybook/sty/starter-heading.sty +514 -0
- data/testdata/mybook/sty/starter-note.sty +127 -0
- data/testdata/mybook/sty/starter-section.sty +262 -0
- data/testdata/mybook/sty/starter-toc.sty +72 -0
- data/testdata/mybook/sty/starter.sty +554 -0
- data/testdata/mybook/style.css +597 -0
- metadata +100 -3
@@ -0,0 +1,554 @@
|
|
1
|
+
%%% -*- coding: utf-8 -*-
|
2
|
+
|
3
|
+
%%%
|
4
|
+
%%% Re:VIEW Starter によって自動生成されたスタイルファイル
|
5
|
+
%%%
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
%%% 引数が空かどうか調べるマクロ
|
10
|
+
\newcommand{\ifempty}[1]{%
|
11
|
+
\edef\temp{#1}% % \ifx#1\empty とはできないので、一時マクロを定義
|
12
|
+
\ifx\temp\empty% % \empty は他の言語でいえば空文字列に相当
|
13
|
+
}
|
14
|
+
|
15
|
+
%%% 文字列比較をするマクロ
|
16
|
+
\newcommand\ifstreq[2]{
|
17
|
+
\edef\@tempa{#1}%
|
18
|
+
\edef\@tempb{#2}%
|
19
|
+
\ifx\@tempa\@tempb% % \ifx#1#2 とはできないことに注意(TeXの仕様)
|
20
|
+
}
|
21
|
+
|
22
|
+
%%% 例:「\@eval{section}{blabla}」は「\section{blabla}」と同等
|
23
|
+
\newcommand{\@eval}[1]{%
|
24
|
+
\csname#1\endcsname%
|
25
|
+
}
|
26
|
+
|
27
|
+
%%% \lastskip を保存するための一時変数
|
28
|
+
\newcommand{\keeplastskip}[1]{%
|
29
|
+
\@tempskipa=\lastskip%
|
30
|
+
\vskip -\lastskip\relax%
|
31
|
+
#1%
|
32
|
+
\vskip \@tempskipa\relax%
|
33
|
+
\@tempskipa=0pt%
|
34
|
+
}
|
35
|
+
|
36
|
+
%%% 縦方向のスペースがあるか調べる。なければ改ページする。
|
37
|
+
\newcommand{\needvspace}[1]{%
|
38
|
+
\rule[#1]{0pt}{0pt}% % 幅のない縦線を引く。引くスペースがなければ改ページされる。
|
39
|
+
\vspace{-#1}\par% % もとの位置に戻る
|
40
|
+
}
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
%%% 色を設定
|
45
|
+
\usepackage{starter-color}
|
46
|
+
|
47
|
+
%%% フォントを設定
|
48
|
+
\usepackage{starter-font}
|
49
|
+
|
50
|
+
%%% 章・節・項・目のタイトルデザインを変更
|
51
|
+
%\usepackage{starter-section} % 古いマクロ定義
|
52
|
+
\usepackage{starter-heading} % 新しいマクロ定義
|
53
|
+
|
54
|
+
%%% プログラムコードやターミナル
|
55
|
+
\usepackage{starter-codeblock}
|
56
|
+
|
57
|
+
%%% ノート
|
58
|
+
\usepackage{starter-note}
|
59
|
+
|
60
|
+
%%% 目次
|
61
|
+
\usepackage{starter-toc}
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
%%% 目次やリンクの色を指定する。印刷用なら黒にする。
|
66
|
+
\hypersetup{colorlinks=true,linkcolor=starter@linkcolor,urlcolor=starter@linkcolor}
|
67
|
+
%\hypersetup{colorlinks=false} % リンク機能をオフにする
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
%%% 「@<strong>{ ... }」を太字のゴシック体にする(「@<b>{ ... }」は明朝体のまま)。
|
72
|
+
\renewcommand{\reviewstrong}[1]{\textbf{\gtfamily\sffamily #1}}
|
73
|
+
|
74
|
+
%%% 「@<em>{ ... }」をゴシック体にする。
|
75
|
+
\renewcommand{\reviewem}[1]{{\gtfamily\sffamily #1}}
|
76
|
+
|
77
|
+
%%% 「@<del>{ ... }」(取り消し線)が効くようにする。
|
78
|
+
%%% (See https://qiita.com/takahashim/items/5c1af2941a1ce9fa5919)
|
79
|
+
\usepackage{ulem}
|
80
|
+
\renewcommand{\reviewstrike}[1]{\sout{#1}}
|
81
|
+
%\usepackage{jumoline}
|
82
|
+
%\renewcommand{\reviewstrike}[1]{\Midline{#1}} % \seqsplit{}と相性が悪い?
|
83
|
+
|
84
|
+
%%% 目立たせない(「@<strong>{}」の反対)
|
85
|
+
\newcommand{\starterweak}[1]{%
|
86
|
+
\textcolor{gray}{#1}%
|
87
|
+
}
|
88
|
+
|
89
|
+
%%% ふきだし説明の文字色をグレーに
|
90
|
+
\renewcommand{\reviewballoon}[1]{%
|
91
|
+
\textcolor{gray}{←#1}
|
92
|
+
}
|
93
|
+
|
94
|
+
%% 「@<code>{...}」を薄いグレーで囲む
|
95
|
+
%% (ただし章や節のタイトル、および各種キャプションでは囲まない)
|
96
|
+
\ifx\starter@inlinecode@gray\empty
|
97
|
+
\renewcommand{\reviewcode}[2][]{%
|
98
|
+
%\,% % ほんの少しスペースを入れる
|
99
|
+
\texttt{#2}%
|
100
|
+
%\,% % ほんの少しスペースを入れる
|
101
|
+
}
|
102
|
+
\else
|
103
|
+
\renewcommand{\reviewcode}[2][]{% % #1:空 or 'headline' or 'caption'
|
104
|
+
\,% % ほんの少しスペースを入れる
|
105
|
+
\edef\@tmpA{#1}%
|
106
|
+
\ifx\@tmpA\empty% % #1が空(未指定)なら
|
107
|
+
\colorbox{shadecolor}{\texttt{#2}}% % 背景色を薄いグレーにして等幅フォントで表示
|
108
|
+
\else% % #1がheadlineやcaptionなら
|
109
|
+
\texttt{#2}% % 等幅フォントで表示(背景色なし)
|
110
|
+
\fi%
|
111
|
+
\,% % ほんの少しスペースを入れる
|
112
|
+
}
|
113
|
+
\fi
|
114
|
+
|
115
|
+
%%% ファイル名を表す
|
116
|
+
\newcommand{\starterfile}[1]{%
|
117
|
+
{\gtfamily\sffamily #1}% % ゴシック体で表示
|
118
|
+
}
|
119
|
+
|
120
|
+
%%% ユーザ入力を表す
|
121
|
+
\newcommand{\starteruserinput}[1]{%
|
122
|
+
\ifempty{\starter@codeblock@fontcolor}%
|
123
|
+
\def\@fontcolor{black}%
|
124
|
+
\else%
|
125
|
+
\def\@fontcolor{\starter@codeblock@fontcolor}%
|
126
|
+
\fi%
|
127
|
+
\textcolor{starter@userinputcolor}{% % 下線の色
|
128
|
+
\underline{% % 下線(LaTeX標準)
|
129
|
+
%\uline{% % 下線(ulem.sty)
|
130
|
+
\textcolor{\@fontcolor}{#1}%
|
131
|
+
}%
|
132
|
+
}%
|
133
|
+
}
|
134
|
+
|
135
|
+
%%% ルビをふるのに必要(例:@<ruby>{漢, おとこ})
|
136
|
+
\usepackage{okumacro}
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
%%% 箇条書き(順序なし)の上下の余白を、行間の0.5倍から0.25倍へと減らす
|
141
|
+
\newenvironment{starteritemize}{%
|
142
|
+
\ifnum\@listdepth=0%
|
143
|
+
\def\@listi{%
|
144
|
+
\@listI%
|
145
|
+
\topsep 0.25\baselineskip% % 上下の余白を減らす(original: 0.5\baselineskip)
|
146
|
+
}%
|
147
|
+
\fi%
|
148
|
+
\begin{itemize}%
|
149
|
+
}{%
|
150
|
+
\end{itemize}%
|
151
|
+
}
|
152
|
+
|
153
|
+
%%% 箇条書き(順序つき)の上下の余白を、行間の0.5倍から0.25倍へと減らす
|
154
|
+
\newenvironment{starterenumerate}{%
|
155
|
+
\ifnum\@listdepth=0%
|
156
|
+
\def\@listi{%
|
157
|
+
\@listI%
|
158
|
+
\topsep 0.25\baselineskip% % 上下の余白を減らす(original: 0.5\baselineskip)
|
159
|
+
}%
|
160
|
+
\fi%
|
161
|
+
\begin{enumerate}%
|
162
|
+
}{%
|
163
|
+
\end{enumerate}%
|
164
|
+
}
|
165
|
+
|
166
|
+
%%% 順序なし箇条書きの行頭文字を変更
|
167
|
+
\usepackage{amssymb} % \blacktriangleright や \bigstar のために必要
|
168
|
+
%\renewcommand{\labelitemi}{$\blacktriangleright$} % 深さ1段目:小さい黒丸→小さい三角へ
|
169
|
+
\renewcommand{\labelitemii}{$\circ$} % 深さ2段目:「-」→小さい白丸へ
|
170
|
+
%\renewcommand{\labelitemiii}{{\small$\bigstar$}} % 深さ3段目:「*」→星形へ
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
%%% 奥付 (colophon) が最終ページになるよう調整する。
|
176
|
+
%%% (奥付が右ページだと、次ページである最終ページが空ページになるため)
|
177
|
+
\renewcommand{\reviewcolophon}[0]{%
|
178
|
+
\clearpage % 改ページ
|
179
|
+
\ifstreq{\starter@target}{tablet}% タブレット向けなら何も調整しない
|
180
|
+
\else\if@openright % \documentclass で openright が指定されていれば
|
181
|
+
\pltx@cleartoleftpage % 左ページ(偶数ページ)になるよう調整する
|
182
|
+
\else\if@openleft % \documentclass で openleft が指定されていれば
|
183
|
+
\pltx@cleartorightpage % 右ページ(奇数ページ)になるよう調整する
|
184
|
+
\fi\fi\fi
|
185
|
+
}
|
186
|
+
|
187
|
+
%%% 右起こし(奇数ぺージ始まり)にしない場合でも、大扉とまえがきの間に
|
188
|
+
%%% 空白ページが入ることがあるので、修正する。
|
189
|
+
\if@openright\else\if@openleft\else % 右起こしでも左起こしでもない場合だけ、
|
190
|
+
\renewcommand\frontmatter{% % 大扉やまえがきの開始を表すコマンドを再定義する。
|
191
|
+
%\pltx@cleartooddpage % 削除
|
192
|
+
\clearpage % 追加
|
193
|
+
\@mainmatterfalse
|
194
|
+
\pagenumbering{roman}
|
195
|
+
}
|
196
|
+
\fi\fi
|
197
|
+
|
198
|
+
%%% 右起こし(奇数ぺージ始まり)にしない場合でも、目次と第1章との間に
|
199
|
+
%%% 空白ページが入ることがあるので、修正する。
|
200
|
+
\if@openright\else\if@openleft\else % 右起こしでも左起こしでもない場合だけ、
|
201
|
+
\renewcommand\mainmatter{% % 本文の開始を表すコマンドを再定義する。
|
202
|
+
%\pltx@cleartooddpage % 削除
|
203
|
+
\clearpage % 追加
|
204
|
+
\@mainmattertrue
|
205
|
+
\pagenumbering{arabic}
|
206
|
+
}
|
207
|
+
\fi\fi
|
208
|
+
|
209
|
+
|
210
|
+
|
211
|
+
%%% ページヘッダーの形式を変更(fancyhdr.styを使用)
|
212
|
+
\newcommand{\pageheaderfont}{\small\gtfamily\sffamily} % ゴシック体
|
213
|
+
%\newcommand{\pageheaderfont}{\small\gtfamily\sffamily\bfseries} % ゴシック体、太字
|
214
|
+
%%% 紙書籍のような右起こしの場合(左ページに章タイトル、右ページに節タイトル)
|
215
|
+
\lhead[\pageheaderfont\leftmark]{}
|
216
|
+
\rhead[]{\pageheaderfont\rightmark}
|
217
|
+
%%% タブレット向けのような両起こしの場合(両ページに章タイトルと節タイトル)
|
218
|
+
%\lhead{\pageheaderfont\leftmark}
|
219
|
+
%\rhead{\pageheaderfont\rightmark}
|
220
|
+
|
221
|
+
%%% ページ番号のスタイル
|
222
|
+
%\newcommand{\pagenumberstyle}{\thepage} % 例:「1」
|
223
|
+
%\newcommand{\pagenumberstyle}{\itshape\bfseries\thepage} % 太字、斜体
|
224
|
+
\newcommand{\pagenumberstyle}{\rmfamily --\ \thepage\ --} % 例:「-- 1 --」
|
225
|
+
% \newcommand{\pagenumberstyle}{\itshape --\ \thepage\ --} % 斜体
|
226
|
+
|
227
|
+
%%% ページ番号をページフッタに表示(fancyhdr.styを使用)
|
228
|
+
\fancyfoot{} % ページフッタをクリア
|
229
|
+
\cfoot{\pagenumberstyle} % ページフッタの真ん中に表示
|
230
|
+
%\lfoot[\pagenumberstyle]{} % 偶数ページの左下に表示
|
231
|
+
%\rfoot[]{\pagenumberstyle} % 奇数ページの右下に表示
|
232
|
+
\fancypagestyle{plainhead}{ % 章タイトルページのスタイル
|
233
|
+
\fancyhead{} % ページヘッダなし
|
234
|
+
\fancyfoot{} % ページフッタをクリア
|
235
|
+
\cfoot{\pagenumberstyle} % ページフッタの真ん中に表示
|
236
|
+
%\lfoot[\pagenumberstyle]{} % 偶数ページの左下に表示
|
237
|
+
%\rfoot[]{\pagenumberstyle} % 奇数ページの右下に表示
|
238
|
+
\renewcommand{\headrulewidth}{0pt} % ページヘッダの区切り線をなくす
|
239
|
+
\renewcommand{\footrulewidth}{0pt} % ページフッタの区切り線をなくす
|
240
|
+
}
|
241
|
+
|
242
|
+
%%% ページヘッダを構成する要素を余計なことに Re:VIEW が上書きしちゃってるので、
|
243
|
+
%%% オリジナルの定義を jsbook.cls からコピーして元に戻す。
|
244
|
+
\def\chaptermark#1{%
|
245
|
+
\markboth{%
|
246
|
+
\ifnum \c@secnumdepth >\m@ne%
|
247
|
+
\if@mainmatter%
|
248
|
+
\if@omit@number\else%
|
249
|
+
\@chapapp\thechapter\@chappos\hskip1zw%
|
250
|
+
\fi%
|
251
|
+
\fi%
|
252
|
+
\fi%
|
253
|
+
#1%
|
254
|
+
}{}%
|
255
|
+
}%
|
256
|
+
\def\sectionmark#1{%
|
257
|
+
\markright{%
|
258
|
+
\ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi%
|
259
|
+
#1%
|
260
|
+
}%
|
261
|
+
}%
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
%%% 章 (Chapter) のタイトルを独立したページにするコマンド。
|
266
|
+
%%% 独立したページには、章タイトルと、章の概要と、章ごとの目次を含める。
|
267
|
+
\newcommand{\makechaptitlepage}[1]{%
|
268
|
+
\pagecolor{starter@chaptitlepagecolor} % ページに背景色をつける
|
269
|
+
%\addtolength{\linewidth}{-\parindent} % 目次の右側余白が左側より1文字分狭いことへの対策
|
270
|
+
\def\arg{#1} % '\ifx#1{toc}' がうまく動作してくれないので、その対策
|
271
|
+
\def\toc{toc}
|
272
|
+
\def\tocsec{toc=section}
|
273
|
+
\def\tocsub{toc=subsection}
|
274
|
+
\def\tocon{toc=on}
|
275
|
+
\def\tocoff{toc=off}
|
276
|
+
\ifx\arg\tocon
|
277
|
+
\setcounter{minitocdepth}{1} % 目次に出すのは節(Section)まで
|
278
|
+
\minitoc % 章ごとの目次
|
279
|
+
\else\ifx\arg\tocsec
|
280
|
+
\setcounter{minitocdepth}{1} % 目次に出すのは節(Section)まで
|
281
|
+
\minitoc % 章ごとの目次
|
282
|
+
\else\ifx\arg\tocsub
|
283
|
+
\setcounter{minitocdepth}{2} % 目次に出すのは項(SubSection)まで
|
284
|
+
\minitoc % 章ごとの目次
|
285
|
+
\else\ifx\arg\tocoff
|
286
|
+
\else
|
287
|
+
% TODO: invalid argument
|
288
|
+
\fi\fi\fi\fi
|
289
|
+
\clearpage% % 改ページ
|
290
|
+
\pagecolor{none}% % ページの背景色をなくす
|
291
|
+
}
|
292
|
+
%%% 章ごとの目次
|
293
|
+
%%% ('nohints' は、裏表紙の直後に空白ページができるのを防ぐために必要)
|
294
|
+
\usepackage[japanese,nohints]{minitoc} % 章ごとの目次を作る
|
295
|
+
\AtBeginDocument{% % \begin{document} で実行するコマンドを登録
|
296
|
+
\dominitoc
|
297
|
+
%\listoffigures
|
298
|
+
%\listoftables
|
299
|
+
}
|
300
|
+
\setcounter{minitocdepth}{1}% % 目次に出すのはSectionまで(Subsectionは出さない)
|
301
|
+
%\setlength{\mtcindent}{3zw} % 目次左右の余白幅(左右の幅であることに注意)
|
302
|
+
%\mtcsetoffset{minitoc}{3zw} % 目次左のインデント幅(テキスト幅は変わらず)
|
303
|
+
%\setlength{\mtcskipamount}{\bigskipamount}
|
304
|
+
\mtcsetrules{*}{off} % 章ごとの目次の上下に罫線を入れない
|
305
|
+
\mtcsettitle{minitoc}{【この章の内容】} % 章ごとの目次のタイトル
|
306
|
+
%\mtcsettitle{minitoc}{【{\@chapapp\thechapter\@chappos}の内容】} % または
|
307
|
+
\renewcommand{\mtcSfont}{\rmfamily\small} % 章ごとの目次のフォント
|
308
|
+
%\renewcommand{\mtcSfont}{\small\gtfamily\sffamily\color{white}} % 色をつける場合
|
309
|
+
\mtcsettitlefont{minitoc}{% % 章ごとの目次のタイトルを設定
|
310
|
+
\gtfamily\sffamily % ゴシック体、サンセリフ体
|
311
|
+
\hspace{2zw} % 左側のインデント
|
312
|
+
}
|
313
|
+
|
314
|
+
|
315
|
+
|
316
|
+
%%% 現在位置に画像が入りきらない場合、画像は次のページに回される。
|
317
|
+
%%% その際、現在位置に大きなスペースが空くのを防ぐために、
|
318
|
+
%%% 後続のテキストを現在位置に流し込むようにする。
|
319
|
+
\renewenvironment{reviewimage}[1][]{%
|
320
|
+
\ifempty{#1}%
|
321
|
+
\edef\@tempA{\starter@image@position}% 引数がなければ「image_option:」の値を使う
|
322
|
+
\else%
|
323
|
+
\edef\@tempA{#1}% % 引数があればその値を使う
|
324
|
+
\fi%
|
325
|
+
\expandafter\starter@image\@tempA% % 先に引数を展開してから \begin{starter@image} を実行
|
326
|
+
}{%
|
327
|
+
\endstarter@image% % \end{starter@image} と同じ
|
328
|
+
}
|
329
|
+
%
|
330
|
+
\newenvironment{starter@image}[1]{%
|
331
|
+
\vspace{0.8zw} % 画像上の余白を調整(少し増やす)
|
332
|
+
\begin{figure}[#1]
|
333
|
+
%\begin{center} % center環境は余分な余白がつくので使わない
|
334
|
+
\centering % \centeringを使うと余分な余白がつかない
|
335
|
+
}{%
|
336
|
+
%\end{center}
|
337
|
+
\end{figure}
|
338
|
+
\vspace{-0.8zw} % 画像下の余白を調整(少し減らす)
|
339
|
+
}
|
340
|
+
%
|
341
|
+
\renewenvironment{reviewdummyimage}{%
|
342
|
+
\begin{reviewimage}
|
343
|
+
\begin{alltt}
|
344
|
+
}{%
|
345
|
+
\end{alltt}
|
346
|
+
\end{reviewimage}
|
347
|
+
}
|
348
|
+
|
349
|
+
|
350
|
+
|
351
|
+
%%% コラムが複数のページにまたがるとき、次のページに続いていることが
|
352
|
+
%%% わかるようにするために、ページ境界では上下の線を引かない。
|
353
|
+
\renewenvironment{reviewcolumn}{%
|
354
|
+
%\begin{framed}% % original
|
355
|
+
\begin{oframed}%
|
356
|
+
}{%
|
357
|
+
%\end{framed}% % original
|
358
|
+
\end{oframed}%
|
359
|
+
\vspace{2zw}%
|
360
|
+
}
|
361
|
+
|
362
|
+
%%% コラムのタイトルを変更する
|
363
|
+
\renewcommand{\reviewcolumnhead}[2]{%
|
364
|
+
%{\noindent\large ■コラム: #2}% % original
|
365
|
+
%{\noindent\large\gtfamily\sffamily\bfseries ■コラム:#2}% % 太字のゴシック
|
366
|
+
{\noindent\large\gtfamily\sffamily\bfseries 【コラム】#2}% % 太字のゴシック
|
367
|
+
\vspace{2mm}%
|
368
|
+
}
|
369
|
+
|
370
|
+
|
371
|
+
|
372
|
+
%%% @<hd>{} や @<subsec>{} で、節や項へのリンクを作成
|
373
|
+
%%% (config.yml で「chapterlink: true」の設定が必要)
|
374
|
+
\newcommand{\startersecref}[2]{%
|
375
|
+
「\hyperref[#2]{#1}」(p.\pageref{#2})% % 節や項のタイトルがリンク
|
376
|
+
%{#1}(\hyperref[#2]{p.\pageref{#2}})% % ページ番号がリンク
|
377
|
+
}
|
378
|
+
\newcommand{\startersubsecref}[2]{%
|
379
|
+
「\hyperref[#2]{{\startersubsectionsymbol}#1}」(p.\pageref{#2})% % 節や項のタイトルがリンク
|
380
|
+
%{\startersubsectionsymbol}{#1}(\hyperref[#2]{p.\pageref{#2}})% % ページ番号がリンク
|
381
|
+
}
|
382
|
+
\newcommand{\startersubsubsecref}[2]{%
|
383
|
+
「\hyperref[#2]{#1}」(p.\pageref{#2})% % 節や項のタイトルがリンク
|
384
|
+
%{#1}(\hyperref[#2]{p.\pageref{#2}})% % ページ番号がリンク
|
385
|
+
}
|
386
|
+
|
387
|
+
|
388
|
+
|
389
|
+
%%% 導入文(リード文)
|
390
|
+
\newenvironment{starterlead}{%
|
391
|
+
\begin{quotation}% % または \begin{abstract}
|
392
|
+
}{%
|
393
|
+
\end{quotation}% % または \end{abstract}
|
394
|
+
}
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
%%% 章 (Chaper) の概要
|
399
|
+
%%% (導入文(リード文)と違うことに注意)
|
400
|
+
\newenvironment{starterabstract}{%
|
401
|
+
\addtolength{\rightskip}{2.5zw}% % 右の余白を2.5文字分広げる (default: 0pt)
|
402
|
+
\addtolength{\leftskip}{2.5zw}% % 左の余白を2.5文字分広げる (default: 5pt)
|
403
|
+
\gtfamily\sffamily% % ゴシック体
|
404
|
+
\small% % 少し小さめ
|
405
|
+
}{%
|
406
|
+
\par%
|
407
|
+
\addvspace{2\Cvs}% % 下に1行空ける
|
408
|
+
}
|
409
|
+
|
410
|
+
|
411
|
+
|
412
|
+
%%% 引用(複数段落に対応)
|
413
|
+
\newenvironment{starterquote}{%
|
414
|
+
\begin{starter@leftbar}{3pt}{starter@quotecolor}%
|
415
|
+
}{%
|
416
|
+
\end{starter@leftbar}%
|
417
|
+
}
|
418
|
+
%
|
419
|
+
\newenvironment{starter@leftbar}[2]{% % #1: 太さ、#2: 色
|
420
|
+
%% framed.sty の機能を使って、文章の左側に縦棒を入れる
|
421
|
+
\def\FrameCommand{\textcolor{#2}{\vrule width #1} \hspace{10pt}}%
|
422
|
+
\MakeFramed{%
|
423
|
+
\advance\hsize-\width%
|
424
|
+
\advance\hsize-2\starter@quote@sidemargin% ノート環境では左右に余白を空ける
|
425
|
+
\advance\rightskip -\starter@quote@sidemargin% 右マージンが二重にかかるのを避ける
|
426
|
+
\advance\leftskip -\starter@quote@sidemargin% 左マージンが二重にかかるのを避ける
|
427
|
+
\FrameRestore%
|
428
|
+
}%
|
429
|
+
}{%
|
430
|
+
\endMakeFramed%
|
431
|
+
}
|
432
|
+
%
|
433
|
+
\newlength{\starter@quote@sidemargin} % 引用部の左右の余白幅(ノート環境で使う)
|
434
|
+
|
435
|
+
|
436
|
+
|
437
|
+
%%% 画像のまわりに線をつける
|
438
|
+
\newcommand{\starterimageframe}[1]{{%
|
439
|
+
\setlength{\fboxrule}{0.1pt}%
|
440
|
+
\fcolorbox{lightgray}{white}{#1}%
|
441
|
+
}}
|
442
|
+
|
443
|
+
|
444
|
+
|
445
|
+
%%% テキストの横に画像を配置する
|
446
|
+
%%% (注意:途中での改ページはできない、テキストの回り込みはされない、脚注は使えない)
|
447
|
+
\newenvironment{startersideimage}[6]{%
|
448
|
+
\begin{starter@sideimage}{#1}{#2}{#3}{#4}{#5}{#6}%
|
449
|
+
}{%
|
450
|
+
\end{starter@sideimage}%
|
451
|
+
}
|
452
|
+
\newenvironment{starter@sideimage}[6]{%
|
453
|
+
%% #1: L or R, #2: 画像ファイル名
|
454
|
+
%% #3: 画像表示幅, #4: 画像領域幅,
|
455
|
+
%% #5: 区切り余白幅, #6: テキスト幅(空白なら自動計算)
|
456
|
+
\ifempty{#6}% % テキスト幅が未指定なら
|
457
|
+
\setlength\@tempdima{\textwidth}% 本文幅から
|
458
|
+
\addtolength{\@tempdima}{-#4}% % 画像領域幅を引いて
|
459
|
+
\addtolength{\@tempdima}{-#5}% % 区切り余白幅を引く
|
460
|
+
\else% % テキスト幅が指定されていれば
|
461
|
+
\setlength\@tempdima{#6}% % それを使う
|
462
|
+
\fi%
|
463
|
+
%
|
464
|
+
\def\@tempimgL{}%
|
465
|
+
\def\@tempimgR{}%
|
466
|
+
\ifstreq{#1}{L}% % L なら、画像と区切り余白とテキストを表示
|
467
|
+
\def\@tempimgL{\starter@miniimage{#2}{#3}{#4}\hspace{#5}}%
|
468
|
+
\else\ifstreq{#1}{R}% % R なら、テキストと区切り余白と画像を表示
|
469
|
+
\def\@tempimgR{\hspace{#5}\starter@miniimage{#2}{#3}{#4}}%
|
470
|
+
\fi%
|
471
|
+
%
|
472
|
+
\noindent%
|
473
|
+
\@tempimgL%
|
474
|
+
\begin{minipage}[t]{\@tempdima}% minipage環境開始
|
475
|
+
\setlength{\parindent}{1zw}% % minipage環境内で段落開始行をインデントする
|
476
|
+
}{%
|
477
|
+
\end{minipage}% % minipage環境終了
|
478
|
+
\@tempimgR%
|
479
|
+
\par% % これがないと後続のテキストが続いてエラーになる
|
480
|
+
}
|
481
|
+
\newcommand\starter@miniimage[3]{% #1:画像ファイル名, #2:画像の表示幅, #3:画像の領域幅
|
482
|
+
\begin{minipage}[t]{#3}%
|
483
|
+
\centering % 中央揃え
|
484
|
+
%\vskip 0pt\relax% % 画像の上に少し余白が入る (why?)
|
485
|
+
\vskip -0.6zw\relax% % 画像の上に余白が入らないよう調整
|
486
|
+
%\null\vspace*{-\baselineskip}%
|
487
|
+
\ifempty{\starterminiimageframe}%
|
488
|
+
\includegraphics[width=#2]{#1}% % 画像を表示
|
489
|
+
\else%
|
490
|
+
\starterimageframe{% % 画像のまわりを灰色の線で囲む
|
491
|
+
\includegraphics[width=#2]{#1}% % 画像を表示
|
492
|
+
}%
|
493
|
+
\fi%
|
494
|
+
\end{minipage}%
|
495
|
+
}
|
496
|
+
\def\starterminiimageframe{}
|
497
|
+
|
498
|
+
|
499
|
+
|
500
|
+
%%% サンプルの出力結果(Starterのドキュメントで使用)
|
501
|
+
\newenvironment{startersampleoutput}[1]{%
|
502
|
+
\starter@codeblock@vspace%
|
503
|
+
\starter@caption{#1}%
|
504
|
+
%\begin{oframed}% % error in note block
|
505
|
+
\vspace{-0.3\baselineskip}%
|
506
|
+
\noindent%
|
507
|
+
\textcolor{lightgray}{\hrulefill}\par%
|
508
|
+
}{%
|
509
|
+
%\end{oframed}% % error in note block
|
510
|
+
\vspace{-0.3\baselineskip}%
|
511
|
+
\noindent%
|
512
|
+
\textcolor{lightgray}{\hrulefill}\par%
|
513
|
+
\starter@codeblock@vspace%
|
514
|
+
}
|
515
|
+
|
516
|
+
|
517
|
+
|
518
|
+
%%% 黒ヌキ(白い背景に黒い文字)
|
519
|
+
%%%
|
520
|
+
%%% 使い方: \startercursor{テキスト}
|
521
|
+
\newcommand*{\startercursor}[1]{%
|
522
|
+
\starter@bgcolor[black]{white}{#1}% % 文字を黒、背景を白にして表示
|
523
|
+
%\mybgcolor{white}{\textcolor{black}{#1}}%
|
524
|
+
}%
|
525
|
+
|
526
|
+
%%% 背景色(と文字色)をつける
|
527
|
+
%%%
|
528
|
+
%%% 使い方: \starter@bgcolor{white}{テキスト}
|
529
|
+
%%% or \starter@bgcolor[black]{white}{テキスト}
|
530
|
+
\newcommand{\starter@bgcolor}[3][]{% % #1: 文字色(default: 空), #2: 背景色, #3: テキスト
|
531
|
+
\settowidth{\tmp@width}{#3}% % 幅
|
532
|
+
\settodepth{\tmp@depth}{g}% % 深さ
|
533
|
+
\settoheight{\tmp@height}{M}% % 高さ
|
534
|
+
\addtolength{\tmp@height}{\tmp@depth}% % 高さに深さを追加
|
535
|
+
\addtolength{\tmp@depth}{1pt}% % 深さを少し増やす
|
536
|
+
\addtolength{\tmp@height}{2pt}% % 高さを少し増やす
|
537
|
+
%
|
538
|
+
\makebox[0pt][l]{% % カーソル位置を変えないまま
|
539
|
+
\textcolor{#2}{% % 背景色を指定して
|
540
|
+
\rule[-\tmp@depth]{\tmp@width}{\tmp@height}% % 塗りつぶす
|
541
|
+
%\rule[-\tmp@depth]{\tmp@width}{\baselineskip}%
|
542
|
+
}%
|
543
|
+
}%
|
544
|
+
\ifempty{#1}% % 文字色が未指定なら
|
545
|
+
#3% % テキストをそのまま表示
|
546
|
+
\else% % 文字色が指定されていれば
|
547
|
+
\textcolor{#1}{#3}% % 色を指定してテキストを表示
|
548
|
+
\fi%
|
549
|
+
}
|
550
|
+
|
551
|
+
%%% 長さを表す変数 (control sequence) を宣言
|
552
|
+
\newlength{\tmp@width}% % 幅
|
553
|
+
\newlength{\tmp@height}% % 高さ
|
554
|
+
\newlength{\tmp@depth}% % 深さ
|