review-retrovert 0.9.11 → 0.11.3

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 (148) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/Rakefile +15 -0
  5. data/lib/review/retrovert/cli.rb +6 -0
  6. data/lib/review/retrovert/converter.rb +38 -0
  7. data/lib/review/retrovert/version.rb +1 -1
  8. data/lib/review/retrovert/yamlconfig.rb +38 -1
  9. metadata +49 -146
  10. data/.dockerignore +0 -9
  11. data/.editorconfig +0 -16
  12. data/.gitattributes +0 -5
  13. data/.github/FUNDING.yml +0 -4
  14. data/.github/workflows/docker-build.yml +0 -26
  15. data/.github/workflows/release.yml +0 -26
  16. data/.github/workflows/retrovert.yml +0 -91
  17. data/.gitignore +0 -15
  18. data/.rspec +0 -3
  19. data/.ruby-version +0 -1
  20. data/.vscode/launch.json +0 -48
  21. data/Dockerfile +0 -5
  22. data/Gemfile +0 -8
  23. data/Gemfile.lock +0 -118
  24. data/Makefile +0 -31
  25. data/bin/console +0 -14
  26. data/bin/setup +0 -8
  27. data/docker/review.Dockerfile +0 -10
  28. data/hooks/post_push +0 -8
  29. data/package-lock.json +0 -6
  30. data/package.json +0 -1
  31. data/review-retrovert.code-workspace +0 -8
  32. data/review-retrovert.gemspec +0 -37
  33. data/testdata/mybook/.gitignore +0 -13
  34. data/testdata/mybook/.textlintrc +0 -11
  35. data/testdata/mybook/README.md +0 -43
  36. data/testdata/mybook/Rakefile +0 -24
  37. data/testdata/mybook/catalog.yml +0 -60
  38. data/testdata/mybook/config-noretrovert.yml +0 -404
  39. data/testdata/mybook/config-retrovert.yml +0 -16
  40. data/testdata/mybook/config-starter.yml +0 -264
  41. data/testdata/mybook/config.yml +0 -404
  42. data/testdata/mybook/contents/00-preface.re +0 -129
  43. data/testdata/mybook/contents/01-install.re +0 -305
  44. data/testdata/mybook/contents/02-tutorial.re +0 -1228
  45. data/testdata/mybook/contents/03-syntax.re +0 -4610
  46. data/testdata/mybook/contents/04-customize.re +0 -1064
  47. data/testdata/mybook/contents/05-faq.re +0 -606
  48. data/testdata/mybook/contents/06-bestpractice.re +0 -1343
  49. data/testdata/mybook/contents/91-compare.re +0 -418
  50. data/testdata/mybook/contents/92-filelist.re +0 -125
  51. data/testdata/mybook/contents/93-background.re +0 -267
  52. data/testdata/mybook/contents/99-postface.re +0 -39
  53. data/testdata/mybook/contents/r0-inner.re +0 -2
  54. data/testdata/mybook/contents/r0-root.re +0 -49
  55. data/testdata/mybook/contents/table.csv +0 -4
  56. data/testdata/mybook/contents/test.txt +0 -1
  57. data/testdata/mybook/contents/ut.re +0 -5
  58. data/testdata/mybook/css/normalize.css +0 -349
  59. data/testdata/mybook/css/webstyle.css +0 -692
  60. data/testdata/mybook/data/terms.txt +0 -3
  61. data/testdata/mybook/data/words.txt +0 -15
  62. data/testdata/mybook/images/03-syntax/favicon-16x16.png +0 -0
  63. data/testdata/mybook/images/03-syntax/figure_heretop.png +0 -0
  64. data/testdata/mybook/images/03-syntax/index-page.png +0 -0
  65. data/testdata/mybook/images/03-syntax/order-detail.png +0 -0
  66. data/testdata/mybook/images/03-syntax/tw-icon1.jpg +0 -0
  67. data/testdata/mybook/images/03-syntax/tw-icon2.jpg +0 -0
  68. data/testdata/mybook/images/03-syntax/tw-icon3.jpg +0 -0
  69. data/testdata/mybook/images/03-syntax/tw-icon4.jpg +0 -0
  70. data/testdata/mybook/images/04-customize/caption_pagebreak.png +0 -0
  71. data/testdata/mybook/images/04-customize/chaptitlepage_sample.png +0 -0
  72. data/testdata/mybook/images/04-customize/section_decoration_samples.png +0 -0
  73. data/testdata/mybook/images/05-faq/codeblock_rpadding1.png +0 -0
  74. data/testdata/mybook/images/05-faq/codeblock_rpadding2.png +0 -0
  75. data/testdata/mybook/images/05-faq/dummy-image.png +0 -0
  76. data/testdata/mybook/images/06-bestpractice/figure_heretop.png +0 -0
  77. data/testdata/mybook/images/06-bestpractice/font_beramono.png +0 -0
  78. data/testdata/mybook/images/06-bestpractice/heading_design1.png +0 -0
  79. data/testdata/mybook/images/06-bestpractice/heading_design2.png +0 -0
  80. data/testdata/mybook/images/06-bestpractice/margin_book.png +0 -0
  81. data/testdata/mybook/images/06-bestpractice/multiline-title.png +0 -0
  82. data/testdata/mybook/images/06-bestpractice/preface_numbered.png +0 -0
  83. data/testdata/mybook/images/06-bestpractice/program_border.png +0 -0
  84. data/testdata/mybook/images/06-bestpractice/sechead_design_4.png +0 -0
  85. data/testdata/mybook/images/06-bestpractice/section_title_wlines.png +0 -0
  86. data/testdata/mybook/images/06-bestpractice/titlepage-samples.png +0 -0
  87. data/testdata/mybook/images/93-background/bug913.png +0 -0
  88. data/testdata/mybook/images/93-background/slide2.png +0 -0
  89. data/testdata/mybook/images/avatar-b.png +0 -0
  90. data/testdata/mybook/images/avatar-g.png +0 -0
  91. data/testdata/mybook/images/avatar-r.png +0 -0
  92. data/testdata/mybook/images/caution-icon.png +0 -0
  93. data/testdata/mybook/images/cover_a5.pdf +0 -0
  94. data/testdata/mybook/images/cover_b5.pdf +0 -0
  95. data/testdata/mybook/images/info-icon.png +0 -0
  96. data/testdata/mybook/images/tw-icon.jpg +0 -0
  97. data/testdata/mybook/images/warning-icon.png +0 -0
  98. data/testdata/mybook/layouts/layout.epub.erb +0 -29
  99. data/testdata/mybook/layouts/layout.html5.erb +0 -108
  100. data/testdata/mybook/layouts/layout.tex.erb +0 -432
  101. data/testdata/mybook/layouts/layout.tex.erb.orig +0 -386
  102. data/testdata/mybook/lib/hooks/beforetexcompile.rb +0 -55
  103. data/testdata/mybook/lib/ruby/review-book.rb +0 -64
  104. data/testdata/mybook/lib/ruby/review-builder.rb +0 -1342
  105. data/testdata/mybook/lib/ruby/review-cli.rb +0 -58
  106. data/testdata/mybook/lib/ruby/review-compiler.rb +0 -1176
  107. data/testdata/mybook/lib/ruby/review-epubbuilder.rb +0 -33
  108. data/testdata/mybook/lib/ruby/review-epubmaker.rb +0 -609
  109. data/testdata/mybook/lib/ruby/review-htmlbuilder.rb +0 -949
  110. data/testdata/mybook/lib/ruby/review-latexbuilder.rb +0 -1065
  111. data/testdata/mybook/lib/ruby/review-maker.rb +0 -346
  112. data/testdata/mybook/lib/ruby/review-markdownbuilder.rb +0 -945
  113. data/testdata/mybook/lib/ruby/review-markdownmaker.rb +0 -91
  114. data/testdata/mybook/lib/ruby/review-monkeypatch.rb +0 -93
  115. data/testdata/mybook/lib/ruby/review-pdfmaker.rb +0 -546
  116. data/testdata/mybook/lib/ruby/review-textbuilder.rb +0 -36
  117. data/testdata/mybook/lib/ruby/review-tocparser.rb +0 -285
  118. data/testdata/mybook/lib/ruby/review-webmaker.rb +0 -448
  119. data/testdata/mybook/lib/tasks/mytasks.rake +0 -31
  120. data/testdata/mybook/lib/tasks/review.rake +0 -156
  121. data/testdata/mybook/lib/tasks/review.rake.orig +0 -72
  122. data/testdata/mybook/lib/tasks/starter.rake +0 -470
  123. data/testdata/mybook/locale.yml +0 -6
  124. data/testdata/mybook/review-ext.rb +0 -206
  125. data/testdata/mybook/sty/indexstyle.ist +0 -25
  126. data/testdata/mybook/sty/jumoline.sty +0 -310
  127. data/testdata/mybook/sty/mycolophon.sty +0 -81
  128. data/testdata/mybook/sty/mystyle.sty +0 -8
  129. data/testdata/mybook/sty/mytextsize.sty +0 -94
  130. data/testdata/mybook/sty/mytitlepage.sty +0 -126
  131. data/testdata/mybook/sty/review-base.sty +0 -276
  132. data/testdata/mybook/sty/reviewmacro.sty +0 -60
  133. data/testdata/mybook/sty/starter-codeblock.sty +0 -463
  134. data/testdata/mybook/sty/starter-color.sty +0 -134
  135. data/testdata/mybook/sty/starter-font.sty +0 -112
  136. data/testdata/mybook/sty/starter-heading.sty +0 -561
  137. data/testdata/mybook/sty/starter-misc.sty +0 -894
  138. data/testdata/mybook/sty/starter-note.sty +0 -180
  139. data/testdata/mybook/sty/starter-section.sty +0 -262
  140. data/testdata/mybook/sty/starter-talklist.sty +0 -105
  141. data/testdata/mybook/sty/starter-toc.sty +0 -72
  142. data/testdata/mybook/sty/starter-util.sty +0 -39
  143. data/testdata/mybook/sty/starter.sty +0 -36
  144. data/testdata/mybook/sty/ut.sty +0 -26
  145. data/testdata/mybook/style.css +0 -597
  146. data/testdata/mybook/ut-catalog.yml +0 -61
  147. data/testdata/mybook/ut-config-starter.yml +0 -3
  148. data/testdata/mybook/ut-config.yml +0 -404
@@ -1,112 +0,0 @@
1
- %%% -*- coding: utf-8 -*-
2
-
3
- %%%
4
- %%% 本文のフォントを設定
5
- %%%
6
- %%% (参考までに)
7
- %%% ・日本語は「明朝体」(\mcfamily)と「ゴシック体」(\gtfamily)がある。
8
- %%% ・英数字は「ローマン体」(\rmfamily)と「サンセリフ体」(\sffamily)と「タイプライター体」(\ttfamily)がある。
9
- %%% ・通常は「明朝体とローマン体」「ゴシック体とサンセリフ体」の組で使う。
10
- %%%
11
- \ifstreq{\starter@fontweight@ja}{light}
12
- %% 日本語フォントの太さを細くする
13
- %% (Notoフォントを使っていることが前提なので、Docker環境を使うか、
14
- %% Notoフォントを自分でインストールすること)
15
- %% 参考:https://tm23forest.com/contents/veryeasy-latex-meiryo-font
16
- \special{pdf:mapline uphminr-h unicode NotoSerifCJK-Light.ttc} % 明朝体
17
- \special{pdf:mapline uphgothr-h unicode NotoSansCJK-Light.ttc} % ゴシック体
18
- \special{pdf:mapline uphminb-h unicode NotoSerifCJK-Medium.ttc} % 明朝体(太字)
19
- \special{pdf:mapline uphgothb-h unicode NotoSansCJK-Medium.ttc} % ゴシック体(太字)
20
- \else
21
- %% 英数字のサンセリフ体をHelveticaに変更
22
- %% (LaTeXのデフォルトであるComputerModernより少し太めなので、
23
- %% 日本語フォントを細くした場合は使わないほうがいい)
24
- \renewcommand{\sfdefault}{phv}
25
- \fi
26
- \ifstreq{\starter@fontweight@en}{light}
27
- %% 英語のローマン体フォントを細いものに変更
28
- %% 参考:https://tug.org/FontCatalogue/sourceserifprolight/
29
- %% https://tug.org/FontCatalogue/iwonalight/
30
- \usepackage[light,math]{iwona}
31
- \renewcommand{\bfdefault}{bx} % 日本語の太字が効くように修正(iwona)
32
- %\usepackage[light,semibold]{sourceserifpro}
33
- %\renewcommand{\bfseries@rm}{bx} % 日本語の太字が効くように修正(sourceserifpro)
34
- %% 英語のサンセリフ体フォントを細いものに変更
35
- %% 参考:https://tug.org/FontCatalogue/robotolight/
36
- %% https://tug.org/FontCatalogue/firasanslight/
37
- \usepackage[light,medium]{roboto}
38
- %\usepackage[light]{FiraSans}
39
- \renewcommand{\bfseries@sf}{bx} % 日本語の太字が効くように修正(roboto,FiraSans)
40
- \fi
41
- \ifstreq{\starter@fontfamily@ja}{gothic}
42
- \renewcommand\kanjifamilydefault{\gtdefault} % 日本語のデフォルトをゴシック体に変更
43
- \fi
44
- \ifstreq{\starter@fontfamily@en}{sansserif}
45
- \renewcommand\familydefault{\sfdefault} % 英数字のデフォルトをサンセリフ体に変更
46
- %% 英数字のデフォルトフォントを細いサンセリフ体に変更しても、
47
- %% 脚注の英数字が細くならないバグを回避するハック
48
- %% see https://twitter.com/_kauplan/status/1223641864189857793
49
- \let\original@@footnotetext=\@footnotetext
50
- \long\def\@footnotetext#1{%
51
- \original@@footnotetext{{\mdseries #1}}% % フォントの太さを明示する
52
- }
53
- \fi
54
-
55
-
56
-
57
- %%% プログラムやターミナルの表示で使う等幅フォント。
58
- %%% 参考: http://www.tug.dk/FontCatalogue/typewriterfonts.html
59
-
60
- %%% 等幅フォントを読み込む
61
- \newcommand\starter@loadttfont[2]{% % #1: 等幅フォント名、#2: 実行するコード
62
- \ifstreq{\starter@program@ttfont}{#1} % プログラム用等幅フォント名が第1引数と一致したら
63
- #2 % 第2引数を実行
64
- \fi
65
- \ifstreq{\starter@terminal@ttfont}{#1} % ターミナル用等幅フォント名が第1引数と一致したら
66
- #2 % 第2引数を実行
67
- \fi
68
- }
69
-
70
- %%% lmodern … LaTeXのデフォルト。1とl、0とOが見分けにくい。太字が目立たない。
71
- \starter@loadttfont{lmodern}{
72
- \usepackage{lmodern}
73
- }
74
- %%% lmodern-lighttt … 細字にするオプションをつけたlmodern。太字が目立つ。
75
- \starter@loadttfont{lmodern-lighttt}{
76
- \usepackage[lighttt]{lmodern}
77
- %\usepackage{lmodern}
78
- %\let\lmtt@use@light@as@normal\@empty % enable 'lighttt' option
79
- }
80
- %%% courier … 文字が細い。文字幅が広め。1とl、0とOが見分けにくい。
81
- \starter@loadttfont{courier}{
82
- \usepackage{courier}
83
- }
84
- %%% beramono … 1とl、0とOが見分けやすい。「'」と「`」が見分けにくい。
85
- \starter@loadttfont{beramono}{
86
- \usepackage[scaled]{beramono}
87
- }
88
- %%% inconsolata … 文字幅が狭め。0と0が見分けやすい、varlつけると1とlが見分けやすい。
89
- \starter@loadttfont{inconsolata}{
90
- \usepackage[varl,varqu,mono]{inconsolata}
91
- }
92
- %%% inconsolata-narrow … 文字幅をより狭くするオプションをつけたinconsolata。
93
- \starter@loadttfont{inconsolata-narrow}{
94
- %\usepackage[varl,varqu,mono,narrow]{inconsolata}
95
- \usepackage[varl,varqu,mono]{inconsolata}
96
- \def\zifour@narrow{n} % enable 'narrow' option
97
- }
98
-
99
- %%% 指定した等幅フォントを有効にする
100
- \newcommand{\starter@enablettfont}[1]{
101
- \iffalse
102
- \else\ifstreq{#1}{beramono} \renewcommand{\ttdefault}{fvm}
103
- \else\ifstreq{#1}{inconsolata} \renewcommand{\ttdefault}{zi4}
104
- \else\ifstreq{#1}{inconsolata-narrow} \renewcommand{\ttdefault}{zi4}
105
- \else\ifstreq{#1}{lmodern} \renewcommand{\ttdefault}{lmtt}
106
- \else\ifstreq{#1}{lmodern-lighttt} \renewcommand{\ttdefault}{lmtt}
107
- \else\ifstreq{#1}{courier} \renewcommand{\ttdefault}{pcr}
108
- \fi
109
- }
110
-
111
- %%% デフォルトの等幅フォントとしてプログラム用(//list)のものを使う
112
- \starter@enablettfont{\starter@program@ttfont}
@@ -1,561 +0,0 @@
1
- %%% -*- coding: utf-8 -*-
2
-
3
- %%%
4
- %%% 見出し(章・節・項・目・段・小段)
5
- %%%
6
-
7
-
8
-
9
- %%% hyperref.styが\refstepcounterを上書きするのでその対策
10
- \newcommand{\@refstepcounter}{%
11
- \@ifundefined{@hyperref}{%
12
- \refstepcounter%
13
- }{%
14
- \H@refstepcounter%
15
- }%
16
- }
17
-
18
- %%% 目次をクリックしたときのジャンプ先となるアンカー
19
- \newcommand{\Heading@anchor}[2]{% #1: chapter, section, ..., 2: number
20
- \@ifundefined{@hyperref}{%
21
- }{%
22
- \ifempty{#2}% % 章番号や節番号がなければ
23
- \Hy@MakeCurrentHrefAuto{#1*}% % 自動採番してアンカーを作成
24
- \else% % 章番号や節番号があれば
25
- \Hy@MakeCurrentHref{#1.#2}% % それを使ってアンカーを作成
26
- \fi%
27
- \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
28
- }%
29
- }
30
-
31
- %%% 目次のエントリをtocファイルに出力する
32
- \newcommand{\Heading@toc}[3]{% #1: chapter, section, ..., #2: number, #3: toc title
33
- \ifempty{#2}% % 章番号や節番号がなければ
34
- \addcontentsline{toc}{#1}{#3}% % 目次エントリを出力
35
- \else% % 章番号や節番号があれば
36
- \addcontentsline{toc}{#1}{\protect\numberline{#2}#3}% 番号つきで出力
37
- \fi%
38
- }
39
-
40
- %%%
41
- \newcommand{\Heading@heading}[4]{% #1: Chapter, Section, etc, #2: 番号, #3: タイトル, #4: 目次用タイトル
42
- %% タイトル前の余白
43
- \@eval{#1@topmargin}{#2}% % #2: 番号
44
- %;\pagebreak[0]% % 必要なら改ページをする ← TODO:要調査
45
- %% 目次をクリックしたときのジャンプ先(アンカー)
46
- \@eval{#1@anchor}{#2}% % #2: 番号
47
- %% 番号とタイトル
48
- {%
49
- \setlength{\parindent}{0pt}% % タイトルでは段落のインデントをなくす
50
- \@eval{#1@font}{#2}% % フォントを設定
51
- \@eval{#1@title}{#2}{#3}% % #2: 番号、#3: タイトル
52
- \par\nobreak% % 改段落はするが、改ページは禁止
53
- }%
54
- %% 目次用のエントリ(タイトルよりあとに置くこと)
55
- \def\@tempc{#4}% % #4: 目次用タイトル
56
- \def\@relax{\relax}% % (\relaxは他言語のnullに相当)
57
- \ifx\@tempc\empty% % 空文字列なら目次に出さない
58
- \else\ifx\@tempc\@relax% % \relaxなら
59
- \@eval{#1@toc}{#2}{#3}% % タイトルをそのまま目次に使う
60
- \else% % それ以外なら
61
- \@eval{#1@toc}{#2}{#4}% % 目次用タイトルを目次に使う
62
- \fi\fi%
63
- \nobreak% % 改ページ禁止
64
- %% タイトル後の余白
65
- \@eval{#1@bottommargin}{#2}%
66
- %% 後処理
67
- \@eval{#1@aftertitle}{#2}%
68
- }
69
-
70
-
71
-
72
-
73
- %%% 章 (Chapter) のタイトル
74
- \newcommand{\Chapter}{%
75
- \@ifstar{\Chapter@star}{\Chapter@nostar}%
76
- }
77
- \newcommand{\Chapter@star}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
78
- \Chapter@heading{}{#2}{#1}%
79
- }
80
- \newcommand{\Chapter@nostar}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
81
- \ifnum\c@secnumdepth<0%
82
- \Chapter@heading{}{#2}{#1}%
83
- \else\if@mainmatter%
84
- \@refstepcounter{chapter}%
85
- \Chapter@heading{\thechapter}{#2}{#1}%
86
- \else%
87
- \Chapter@heading{}{#2}{#1}%
88
- \fi\fi%
89
- }
90
- \newcommand{\Chapter@heading}[3]{%
91
- \Heading@heading{Chapter}{#1}{#2}{#3}%
92
- }
93
- \newcommand{\Chapter@anchor}[1]{% #1: 章番号
94
- \Heading@anchor{chapter}{#1}%
95
- }
96
- \newcommand{\Chapter@toc}[2]{% #1: 章番号, #2: 目次用タイトル
97
- \@ifundefined{minitoc}{}{\stepcounter{mtc}}% 章扉の目次用
98
- \def\@tempa{#1}%
99
- \def\@tempb{#2}%
100
- \ifnum\c@tocdepth<0%
101
- \else\ifx\@tempb\empty%
102
- \else\ifx\@tempa\empty%
103
- \Heading@toc{chapter}{}{#2}%
104
- \else%
105
- \Heading@toc{chapter}{\@chapapp#1\@chappos}{#2}%
106
- \fi\fi\fi%
107
- \chaptermark{#2}% % ページヘッダに章タイトルを設定
108
- }
109
- \newcommand{\Chapter@topmargin}[1]{%
110
- \if@Chapter@clearpage@%
111
- \if@openleft\cleardoublepage\else%
112
- \if@openright\cleardoublepage\else\clearpage\fi\fi%
113
- \fi%
114
- \plainifnotempty% 元: \thispagestyle{plain}%
115
- \global\@topnum\z@%
116
- %\vspace*{2.0\Cvs}% % (jsbook.cls) 2\Cvs
117
- }
118
- \newcommand{\Chapter@bottommargin}[1]{% #1: 章番号
119
- \addvspace{2.0\Cvs}% % (jsbook.cls) 3\Cvs
120
- }
121
- \newcommand{\Chapter@aftertitle}[1]{% #1: 章番号
122
- \@FirstSectionPerChapter@true% % 最初の章を表すフラグをオン
123
- }
124
- \newcommand{\Chapter@font}[1]{% #1: 章番号
125
- \headfont\Huge%
126
- }%
127
- \newcommand{\Chapter@title}[2]{% #1: 章番号, #2: 章タイトル
128
- \Chapter@align% % 左寄せ/右寄せ/中央揃え
129
- \edef\@tempa{#1}%
130
- \ifx\@tempa\empty% % 章番号がないなら何もしない
131
- \else\ifx\starter@chapter@oneline\empty% % 章番号とタイトルを別行にするなら
132
- \Chapter@number{#1}% % 章番号(例:第1章)
133
- \else% % 章番号とタイトルを横に並べるなら
134
- \@hangfrom{% % タイトルが複数行になったときの対策
135
- \Chapter@number{#1}% % 章番号(例:第1章)
136
- }%
137
- \fi\fi%
138
- #2% % 章タイトル
139
- }
140
- \newcommand{\Chapter@number}[1]{% #1: 章番号
141
- %{\headfont\huge\@chapapp#1\@chappos}% % 章番号(例:第1章)
142
- {\headfont\LARGE\@chapapp{\HUGE #1}\@chappos}% 番号を大きくして出力
143
- \ifempty{\starter@chapter@oneline}%
144
- \par\vspace{0.50\Cvs}% % 縦方向に余白を空ける
145
- \else%
146
- \hspace{1zw}% % 横方向に1文字分空ける
147
- \fi%
148
- }
149
- \newcommand{\Chapter@align}{%
150
- \def\@align{\starter@chapter@align}% % left/right/center
151
- \ifstreq{\@align}{left}\raggedright\fi % 左寄せ
152
- \ifstreq{\@align}{right}\raggedleft\fi % 右寄せ
153
- \ifstreq{\@align}{center}\centering\fi % 中央寄せ
154
- }
155
- \newif\if@FirstSectionPerChapter@ % 章における最初の節ならtrue
156
- \newif\if@Chapter@clearpage@ % trueなら章タイトル直前で改ページ
157
- \@Chapter@clearpage@true
158
-
159
- %%% 章タイトルのカスタマイズ:下に細い下線
160
- \iffalse
161
- \else\ifstreq{\starter@chapter@decoration}{underline}
162
-
163
- \let\original@Chapter@title=\Chapter@title
164
- \renewcommand{\Chapter@title}[2]{% #1: 章番号、#2: 章タイトル
165
- \original@Chapter@title{#1}{#2}%
166
- \par%
167
- \textcolor{starter@chaptercolor}{\rule{\textwidth}{0.2pt}}%
168
- }
169
-
170
- %%% 章タイトルのカスタマイズ:上下に太い横線
171
- \else\ifstreq{\starter@chapter@decoration}{boldlines}
172
-
173
- \let\original@Chapter@title=\Chapter@title
174
- \renewcommand{\Chapter@title}[2]{% #1: 章番号、#2: 章タイトル
175
- \def\@@boldline{%
176
- \textcolor{starter@chaptercolor}{\rule{\textwidth}{0.5\Cvs}}% 太い横線
177
- }
178
- %\ifempty{#1}% % TeX言語仕様の制限によりエラーになるので使わないこと
179
- \edef\@tempa{#1}% % 章番号(例:1)
180
- \ifx\@tempa\empty%
181
- \original@Chapter@title{#1}{#2}% % 章番号(例:第1章)
182
- \else%
183
- \@@boldline\par% % 太い横線
184
- \vspace{0.75\Cvs}% % 余白
185
- \original@Chapter@title{#1}{#2}% % 章番号(例:第1章)
186
- \vspace{0.25\Cvs}% % 余白
187
- \par\@@boldline% % 太い横線
188
- \fi%
189
- }
190
-
191
- \else
192
- \fi
193
-
194
-
195
-
196
- %%% 節 (Section) のタイトル
197
- \newcommand{\Section}{%
198
- \@ifstar{\Section@star}{\Section@nostar}%
199
- }
200
- \newcommand{\Section@star}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
201
- \Section@heading{}{#2}{#1}%
202
- }
203
- \newcommand{\Section@nostar}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
204
- \ifnum\c@secnumdepth<1%
205
- \Section@heading{}{#2}{#1}%
206
- \else\if@mainmatter%
207
- \@refstepcounter{section}%
208
- \Section@heading{\thesection}{#2}{#1}%
209
- \else%
210
- \Section@heading{}{#2}{#1}%
211
- \fi\fi%
212
- }
213
- \newcommand{\Section@heading}[3]{%
214
- \pagebreak[1]% % 節タイトルの直前では改ページしやすくする
215
- \Heading@heading{Section}{#1}{#2}{#3}%
216
- }
217
- \newcommand{\Section@anchor}[1]{% #1: 節番号
218
- \Heading@anchor{section}{#1}%
219
- }
220
- \newcommand{\Section@toc}[2]{% #1: 節番号, #2: 目次用タイトル
221
- \def\@tempb{#2}%
222
- \ifnum\c@tocdepth<1%
223
- \else\ifx\@tempb\empty%
224
- \else%
225
- \Heading@toc{section}{#1}{#2}%
226
- \fi\fi%
227
- %\sectionmark{#2} % まえがきの章で使うとページヘッダに「0.1」と出てしまう
228
- \def\@tempa{#1}%
229
- \ifx\@tempa\empty%
230
- \markright{#2}% % ページヘッダに節タイトルだけを設定
231
- \else%
232
- \markright{#1\hspace{1zw}#2}% % ページヘッダに節番号と節タイトルを設定
233
- \fi%
234
- }
235
- \newcommand{\Section@topmargin}[1]{% #1: 節番号
236
- %\addvspace{1.0\Cvs}% % (jsbook.cls) \Cvs \@plus.5\Cdp \@minus.2\Cdp
237
- \edef\@newpage{\starter@section@newpage}% % Yなら改ページする
238
- \edef\@tempa{#1}%
239
- \ifx\@tempa\empty% % 節番号なしなら
240
- \def\@newpage{}% % 改ページしない
241
- \fi%
242
- \if@FirstSectionPerChapter@ % 章における最初の節なら
243
- \def\@newpage{}% % 改ページしない
244
- \fi%
245
- \ifx\@newpage\empty% % 改ページが必要ないなら
246
- \Section@@topmargin{#1} % 節タイトルの上に余白を空ける
247
- \else% % 改ページが必要なら
248
- \clearpage% % 改ページする
249
- \fi%
250
- }%
251
- \newcommand{\Section@@topmargin}[1]{% #1: 節番号
252
- \ifempty{#1}\addvspace{1.0\Cvs}% 節番号なしなら装飾しないので少し狭く
253
- \else \addvspace{1.5\Cvs}% 節番号ありなら装飾するので少し広く
254
- \fi%
255
- }
256
- \newcommand{\Section@bottommargin}[1]{% #1: 節番号
257
- %\addvspace{0.5\Cvs}% % (jsbook.cls) .5\Cvs \@plus.3\Cdp
258
- \ifempty{#1}\addvspace{0.5\Cvs}% 節番号なしなら装飾しないので少し狭く
259
- \else \addvspace{1.0\Cvs}% 節番号ありなら装飾するので少し広く
260
- \fi%
261
- }%
262
- \newcommand{\Section@aftertitle}[1]{% 節番号
263
- \@FirstSectionPerChapter@false% % 最初の章を表すフラグをオフ
264
- }
265
- \newcommand{\Section@font}[1]{% #1: 節番号
266
- \headfont\Large
267
- }%
268
- \newcommand{\Section@title}[2]{% #1: 節番号, #2: 節タイトル
269
- \ifempty{#1}\else%
270
- \@hangfrom{% % タイトルが複数行になったときの対策
271
- \Section@number{#1}%
272
- }%
273
- \fi%
274
- #2%
275
- }
276
- \newcommand{\Section@number}[1]{% #1: 節番号
277
- #1\hspace{1zw}% % 節番号と全角1文字分の空白
278
- }
279
-
280
- %%% 節タイトルのカスタマイズ:節番号を白抜き、背景を薄いグレー
281
- \iffalse
282
- \else\ifstreq{\starter@section@decoration}{grayback}
283
-
284
- \renewcommand{\Section@number}[1]{% #1: 節番号
285
- \textcolor{starter@palecolor}{% % タイトルの背景色(薄いグレー)
286
- \rlap{\rule[-0.6zh]{\textwidth}{2zh}}% % 本文幅の背景色
287
- }%
288
- \textcolor{starter@sectioncolor}{% % 節番号の背景色(主色)
289
- \rlap{\rule[-0.6zh]{3.5zw}{2zh}}%% 全角3.5文字分の背景色
290
- }%
291
- \makebox[3.5zw][c]{\textcolor{white}{#1}}% 白抜き文字で章番号
292
- \hspace{0.9zw}% % 空白
293
- }
294
-
295
- %%% 節タイトルのカスタマイズ:節番号を白抜き(背景色がないので複数行向き)
296
- \else\ifstreq{\starter@section@decoration}{numbox}
297
-
298
- \renewcommand{\Section@number}[1]{% #1: 節番号
299
- \textcolor{starter@sectioncolor}{% % 節番号の背景色(主色)
300
- \rlap{\rule[-0.6zh]{3.5zw}{2zh}}%% 全角3.5文字分の背景色
301
- }%
302
- \makebox[3.5zw][c]{\textcolor{white}{#1}}% 白抜き文字で章番号
303
- \hspace{0.9zw}% % 空白
304
- }
305
-
306
- %%% 節タイトルのカスタマイズ:節タイトルに下線を引く
307
- \else\ifstreq{\starter@section@decoration}{underline}
308
-
309
- \renewcommand{\Section@number}[1]{% #1: 節番号
310
- \textcolor{starter@sectioncolor}{% % 線の色
311
- \rlap{\rule[-0.6zh]{\textwidth}{0.2pt}}% 本文幅の下線
312
- \rlap{\rule[-0.6zh]{0.75zw}{2zh}}% % 左端に太い縦線
313
- }%
314
- \hspace{1.5zw}#1\hspace{1.0zw}% % 節番号(と空白)
315
- }%
316
-
317
- %%% 節タイトルのカスタマイズ:節タイトル右に太い縦線(下線がないので複数行向き)
318
- \else\ifstreq{\starter@section@decoration}{leftline}
319
-
320
- \renewcommand{\Section@number}[1]{% #1: 節番号
321
- \textcolor{starter@sectioncolor}{% % 線の色
322
- \rlap{\rule[-0.6zh]{0.75zw}{2zh}}% 左端に太い縦線
323
- }%
324
- \hspace{1.5zw}#1\hspace{1.0zw}% % 節番号(と空白)
325
- }%
326
-
327
- %%% 節タイトルのカスタマイズ:大きな円(複数行向き)
328
- \else\ifstreq{\starter@section@decoration}{circle}
329
-
330
- \renewcommand{\Section@number}[1]{% #1: 節番号
331
- \hspace{-0.40\Cwd}% % 円をちょっとだけ右にはみ出させる
332
- \rlap{{% % 現在位置を変えずに右側に表示
333
- \parbox[c]{6\Cwd}{% % 全角6文字分の幅で上下の中央揃え
334
- \fontsize{6\Cwd}{0}\selectfont%% 文字サイズを大きくする
335
- \textcolor{starter@sectioncolor}{●}% 大きな円
336
- %%% if you prefer math symbol rather than CJK font
337
- %\fontsize{7\Cwd}{0}\selectfont%
338
- %\textcolor{starter@sectioncolor}{\ding{108}}% % requires \usepackage{pifont}
339
- }%
340
- }}%
341
- \hspace{-0.20\Cwd}% % 節番号をちょっとだけ右にずらす
342
- \makebox[6\Cwd][c]{% % 全角6文字分の幅で左右の中央揃え
343
- \textcolor{white}{\raisebox{-0.14\Cwd}{#1}}% 白い文字で節番号を表示
344
- }%
345
- \hspace{0.60\Cwd}% % ちょっとだけ右にずらしていたのを戻す
346
- }%
347
- \renewcommand{\Section@title}[2]{{% #1: 節番号, #2: 節タイトル
348
- \setlength{\@tempdima}{\textwidth}%% 本文幅
349
- \edef\@tempa{#1}%
350
- \ifx\@tempa\empty\else% % 節番号があれば
351
- \Section@number{#1}% % 節番号を表示
352
- \addtolength{\@tempdima}{-6\Cwd}%% 本文幅から全角6文字分引く
353
- \fi%
354
- \parbox[c]{\@tempdima}{% % 本文幅から全角6文字分引いた幅で上下の中央揃え
355
- \baselineskip=0.85\baselineskip% % 行間隔を狭くする
356
- #2% % 節タイトルを表示(\parboxのおかげで2行にも対応)
357
- }%
358
- \par% % 改行がわりの改段落
359
- }}
360
-
361
- %%% 節タイトルのカスタマイズ:装飾なし
362
- \else
363
-
364
- \renewcommand{\Section@@topmargin}[1]{%
365
- \addvspace{1.0\Cvs}% % 装飾ありと比べて、節タイトル上のスペースを狭める
366
- }%
367
- \renewcommand{\Section@bottommargin}[1]{%
368
- \addvspace{0.5\Cvs}% % 装飾ありと比べて、節タイトル下のスペースを狭める
369
- }%
370
-
371
- \fi
372
-
373
-
374
-
375
- %%% 項 (Subsection) のタイトル
376
- \newcommand{\Subsection}{%
377
- \@ifstar{\Subsection@star}{\Subsection@nostar}%
378
- }
379
- \newcommand{\Subsection@star}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
380
- \Subsection@heading{}{#2}{#1}%
381
- }
382
- \newcommand{\Subsection@nostar}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
383
- \ifnum\c@secnumdepth<2%
384
- \Subsection@heading{}{#2}{#1}%
385
- \else\if@mainmatter%
386
- \@refstepcounter{subsection}%
387
- \Subsection@heading{\thesubsection}{#2}{#1}%
388
- \else%
389
- \Subsection@heading{}{#2}{#1}%
390
- \fi\fi%
391
- }
392
- \newcommand{\Subsection@heading}[3]{%
393
- \Heading@heading{Subsection}{#1}{#2}{#3}%
394
- }
395
- \newcommand{\Subsection@anchor}[1]{% #1: 項番号
396
- \Heading@anchor{subsection}{#1}%
397
- }
398
- \newcommand{\Subsection@toc}[2]{% #1: 項番号, #2: 目次用タイトル
399
- \def\@tempb{#2}%
400
- \ifnum\c@tocdepth<2%
401
- \else\ifx\@tempb\empty%
402
- \else\ifnum\c@secnumdepth<2%
403
- \Heading@toc{subsection}{#1}{\startersubsectionsymbol#2}%
404
- \else%
405
- \Heading@toc{subsection}{#1}{#2}%
406
- \fi\fi\fi%
407
- }
408
- \newcommand{\Subsection@topmargin}[1]{% #1: 項番号
409
- \addvspace{0.7\Cvs}% % (jsbook.cls) \Cvs \@plus.5\Cdp \@minus.2\Cdp
410
- }
411
- \newcommand{\Subsection@bottommargin}[1]{% #1: 項番号
412
- \addvspace{0.3\Cvs}% % (jsbook.cls) .5\Cvs \@plus.3\Cdp
413
- }
414
- \newcommand{\Subsection@aftertitle}[1]{} % 何もしない
415
- \newcommand{\Subsection@font}[1]{% #1: 項番号
416
- \headfont\large
417
- }%
418
- \newcommand{\Subsection@title}[2]{% #1: 項番号, #2: 項タイトル
419
- \ifempty{#1}\else%
420
- \@hangfrom{% % タイトルが複数行になったときの対策
421
- \Subsection@number{#1}%
422
- }%
423
- \fi%
424
- #2%
425
- }
426
- \newcommand{\Subsection@number}[1]{% #1: 項番号
427
- #1\hspace{1zw}% % 項番号と全角1文字分の空白
428
- }
429
-
430
- %%% 項 (Subsection) タイトルのカスタマイズ:クローバー
431
- \newcommand{\starter@subsection@symbol}{$\clubsuit$}% クローバー
432
- \newcommand{\startersubsectionsymbol}{}
433
- \ifstreq{\starter@subsection@decoration}{symbol} % 'none' or 'symbol'
434
-
435
- \let\original@Subsection@title=\Subsection@title% もとの定義を保存
436
- \renewcommand{\Subsection@title}[2]{% % #1: 項番号, #2: 項タイトル
437
- \startersubsectionsymbol% % タイトル先頭にクローバー
438
- \original@Subsection@title{#1}{#2}% % もとの定義を呼び出す
439
- }
440
- \renewcommand{\startersubsectionsymbol}{%
441
- \textcolor{starter@subsectioncolor}{\starter@subsection@symbol}% クローバーの記号
442
- ~% % 半角空白空けるけど改行はしない
443
- }%
444
-
445
- \fi
446
-
447
-
448
-
449
- %%% 目 (Subsubsection) のタイトル
450
- \newcommand{\Subsubsection}{%
451
- \@ifstar{\Subsubsection@star}{\Subsubsection@nostar}%
452
- }
453
- \newcommand{\Subsubsection@star}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
454
- \Subsubsection@heading{}{#2}{#1}%
455
- }
456
- \newcommand{\Subsubsection@nostar}[2][\relax]{% #1: 目次用タイトル, #2: タイトル
457
- \ifnum\c@secnumdepth<3%
458
- \Subsubsection@heading{}{#2}{#1}%
459
- \else\if@mainmatter%
460
- \@refstepcounter{subsubsection}%
461
- \Subsubsection@heading{\thesubsubsection}{#2}{#1}%
462
- \else%
463
- \Subsubsection@heading{}{#2}{#1}%
464
- \fi\fi%
465
- }
466
- \newcommand{\Subsubsection@heading}[3]{%
467
- \Heading@heading{Subsubsection}{#1}{#2}{#3}%
468
- }
469
- \newcommand{\Subsubsection@anchor}[1]{% #1: 目番号
470
- \Heading@anchor{subsubsection}{#1}%
471
- }
472
- \newcommand{\Subsubsection@toc}[2]{% #1: 目番号, #2: 目次用タイトル
473
- \def\@tempb{#2}%
474
- \ifnum\c@tocdepth<3%
475
- \else\ifx\@tempb\empty%
476
- \else%
477
- \Heading@toc{subsubsection}{#1}{#2}%
478
- \fi\fi%
479
- }
480
- \newcommand{\Subsubsection@topmargin}[1]{% #1: 目番号
481
- \addvspace{0.4\Cvs}% % (jsbook.cls) \Cvs \@plus.5\Cdp \@minus.2\Cdp
482
- }
483
- \newcommand{\Subsubsection@bottommargin}[1]{% #1: 目番号
484
- \addvspace{0.1\Cvs}% % (jsbook.cls) \z@
485
- }
486
- \newcommand{\Subsubsection@aftertitle}[1]{} % 何もしない
487
- \newcommand{\Subsubsection@font}[1]{% #1: 目番号
488
- \headfont\normalsize
489
- }%
490
- \newcommand{\Subsubsection@title}[2]{% #1: 目番号, #2: 目タイトル
491
- \ifempty{#1}\else%
492
- \@hangfrom{% % タイトルが複数行になったときの対策
493
- \Subsubsection@number{#1}%
494
- }%
495
- \fi%
496
- #2%
497
- }
498
- \newcommand{\Subsubsection@number}[1]{% #1: 目番号
499
- #1\hspace{1zw}% % 目番号と全角1文字分の空白
500
- }
501
-
502
-
503
-
504
- %%% 段 (Paragraph)
505
- \newcommand\Paragraph{%
506
- \@ifstar{\Paragraph@title}{\Paragraph@title}% '*' がついていたら読み飛ばす
507
- }
508
- \newcommand\Paragraph@title[1]{% % #1: タイトル
509
- \Paragraph@separator% % 少しだけ余白を空ける
510
- \noindent% % タイトルはインデントしない
511
- {\headfont #1}% % タイトルを表示(太字のゴシック体)
512
- \par\nobreak% % 改行する(直後の改ページは禁止)
513
- }
514
- \newcommand\Paragraph@separator{%
515
- \par\addvspace{0.25\baselineskip}% % 1/4行分の余白
516
- }
517
-
518
-
519
-
520
- %%% 小段 (Subparagraph)
521
- \newcommand\Subparagraph{%
522
- \@ifstar{\Subparagraph@title}{\Subparagraph@title}% '*' がついていたら読み飛ばす
523
- }
524
- \newcommand\Subparagraph@title[1]{% % #1: タイトル
525
- \Subparagraph@separator% % 少しだけ余白を空ける
526
- \noindent% % タイトルはインデントしない
527
- {\headfont #1}% % タイトルを表示(太字のゴシック体)
528
- \hspace{1zw}% % 改行せず、全角1文字分空ける
529
- }
530
- \newcommand\Subparagraph@separator{%
531
- %\par\addvspace{0.25\baselineskip}% % 1/4行分の余白
532
- \par\addvspace{0.00\baselineskip}% % 余白を空けない
533
- }
534
-
535
-
536
-
537
- %%% 「//paragraphend」ブロック命令用
538
- \newcommand\ParagraphEnd{%
539
- \Paragraph@separator%
540
- }
541
- \newcommand\SubparagraphEnd{%
542
- \Subparagraph@separator%
543
- }
544
-
545
-
546
-
547
- %%% LaTeXの見出し用マクロを上書きする
548
- \def\chapter{\Chapter}
549
- \def\section{\Section}
550
- \def\subsection{\Subsection}
551
- \def\subsubsection{\Subsubsection}
552
- \def\paragraph{\Paragraph}
553
- \def\subparagraph{\Subparagraph}
554
-
555
-
556
- %%% 索引ページのタイトルデザインを変更
557
- \renewcommand{\@makeschapterhead}[1]{%
558
- \@Chapter@clearpage@false% % もとの \@makeschapterhead は改ページしないので、それに倣う
559
- \Chapter*[]{#1}% % まえがきや目次と同じタイトルデザインを使う
560
- \@Chapter@clearpage@true%
561
- }