review-retrovert 0.9.7 → 0.9.8
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/.dockerignore +9 -0
- data/.editorconfig +3 -0
- data/.github/workflows/retrovert.yml +20 -5
- data/.gitignore +1 -0
- data/.vscode/launch.json +48 -0
- data/Gemfile.lock +13 -4
- data/Makefile +24 -0
- data/docker/review.Dockerfile +10 -0
- data/lib/review/retrovert/converter.rb +374 -111
- data/lib/review/retrovert/reviewcompat.rb +57 -0
- data/lib/review/retrovert/reviewdef.rb +70 -0
- data/lib/review/retrovert/sty/{ird.sty → ird.sty.erb} +9 -1
- data/lib/review/retrovert/sty/review-retrovert-custom.sty.erb +6 -0
- data/lib/review/retrovert/utils.rb +35 -0
- data/lib/review/retrovert/version.rb +1 -1
- data/lib/review/retrovert/yamlconfig.rb +0 -1
- data/package-lock.json +6 -0
- data/package.json +1 -0
- data/review-retrovert.gemspec +5 -1
- data/testdata/mybook/.gitignore +3 -1
- data/testdata/mybook/.textlintrc +11 -0
- data/testdata/mybook/Rakefile +8 -0
- data/testdata/mybook/catalog.yml +36 -10
- data/testdata/mybook/config-starter.yml +134 -9
- data/testdata/mybook/config.yml +44 -15
- data/testdata/mybook/contents/00-preface.re +48 -2
- data/testdata/mybook/contents/01-install.re +38 -5
- data/testdata/mybook/contents/02-tutorial.re +333 -113
- data/testdata/mybook/contents/03-syntax.re +2370 -373
- data/testdata/mybook/contents/04-customize.re +424 -88
- data/testdata/mybook/contents/05-faq.re +288 -10
- data/testdata/mybook/contents/06-bestpractice.re +431 -59
- data/testdata/mybook/contents/91-compare.re +402 -2
- data/testdata/mybook/contents/92-filelist.re +14 -8
- data/testdata/mybook/contents/93-background.re +10 -10
- data/testdata/mybook/contents/99-postface.re +2 -1
- data/testdata/mybook/contents/r0-root.re +1 -1
- data/testdata/mybook/css/webstyle.css +180 -2
- data/testdata/mybook/data/terms.txt +3 -0
- data/testdata/mybook/data/words.txt +15 -0
- data/testdata/mybook/images/03-syntax/index-page.png +0 -0
- data/testdata/mybook/images/03-syntax/order-detail.png +0 -0
- data/testdata/mybook/images/04-customize/section_decoration_samples.png +0 -0
- data/testdata/mybook/images/05-faq/dummy-image.png +0 -0
- data/testdata/mybook/images/06-bestpractice/section_title_wlines.png +0 -0
- data/testdata/mybook/images/avatar-b.png +0 -0
- data/testdata/mybook/images/avatar-g.png +0 -0
- data/testdata/mybook/images/avatar-r.png +0 -0
- data/testdata/mybook/images/caution-icon.png +0 -0
- data/testdata/mybook/images/info-icon.png +0 -0
- data/testdata/mybook/images/warning-icon.png +0 -0
- data/testdata/mybook/layouts/layout.html5.erb +3 -1
- data/testdata/mybook/layouts/layout.tex.erb +265 -379
- data/testdata/mybook/layouts/layout.tex.erb.orig +386 -0
- data/testdata/mybook/lib/ruby/review-book.rb +64 -0
- data/testdata/mybook/lib/ruby/review-builder.rb +902 -63
- data/testdata/mybook/lib/ruby/review-compiler.rb +675 -22
- data/testdata/mybook/lib/ruby/review-epubbuilder.rb +33 -0
- data/testdata/mybook/lib/ruby/review-epubmaker.rb +10 -7
- data/testdata/mybook/lib/ruby/review-htmlbuilder.rb +354 -66
- data/testdata/mybook/lib/ruby/review-latexbuilder.rb +429 -146
- data/testdata/mybook/lib/ruby/review-maker.rb +117 -6
- data/testdata/mybook/lib/ruby/review-markdownbuilder.rb +945 -0
- data/testdata/mybook/lib/ruby/review-markdownmaker.rb +91 -0
- data/testdata/mybook/lib/ruby/review-monkeypatch.rb +2 -0
- data/testdata/mybook/lib/ruby/review-pdfmaker.rb +160 -82
- data/testdata/mybook/lib/ruby/review-webmaker.rb +20 -5
- data/testdata/mybook/lib/tasks/review.rake +14 -0
- data/testdata/mybook/lib/tasks/starter.rake +148 -4
- data/testdata/mybook/sty/indexstyle.ist +25 -0
- data/testdata/mybook/sty/mytextsize.sty +29 -0
- data/testdata/mybook/sty/mytitlepage.sty +34 -11
- data/testdata/mybook/sty/review-base.sty +276 -0
- data/testdata/mybook/sty/starter-codeblock.sty +237 -106
- data/testdata/mybook/sty/starter-color.sty +72 -17
- data/testdata/mybook/sty/starter-heading.sty +60 -13
- data/testdata/mybook/sty/starter-misc.sty +894 -0
- data/testdata/mybook/sty/starter-note.sty +67 -14
- data/testdata/mybook/sty/starter-talklist.sty +105 -0
- data/testdata/mybook/sty/starter-util.sty +35 -0
- data/testdata/mybook/sty/starter.sty +8 -526
- metadata +80 -4
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
require 'review'
|
|
2
|
+
|
|
3
|
+
module ReVIEW
|
|
4
|
+
module Retrovert
|
|
5
|
+
class Preprocessor
|
|
6
|
+
@preprocessor = nil
|
|
7
|
+
|
|
8
|
+
def initialize(param)
|
|
9
|
+
if Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('5.2.0')
|
|
10
|
+
@preprocessor = ReVIEW::Preprocessor.new(param)
|
|
11
|
+
else
|
|
12
|
+
@preprocessor = ReVIEW::Preprocessor.new(ReVIEW::Repository.new(param), param)
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def process(path)
|
|
17
|
+
if Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('5.2.0')
|
|
18
|
+
@preprocessor.process(path)
|
|
19
|
+
else
|
|
20
|
+
buf = StringIO.new
|
|
21
|
+
File.open(path) { |f| @preprocessor.process(f, buf) }
|
|
22
|
+
buf.string
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
class ReViewCompat
|
|
28
|
+
class << self
|
|
29
|
+
def has_nested_minicolumn()
|
|
30
|
+
Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('5.0.0')
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def is_need_space_term_list()
|
|
34
|
+
Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('4.0.0')
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def is_allow_empty_image_caption()
|
|
38
|
+
v = Gem::Version.new(ReVIEW::VERSION)
|
|
39
|
+
v < Gem::Version.new('4.0.0') || v >= Gem::Version.new('5.1.0')
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def has_bou()
|
|
43
|
+
Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('3.2.0')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def Preprocessor(param)
|
|
47
|
+
Preprocessor.new(param)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def Catalog(path)
|
|
51
|
+
ReVIEW::Catalog.new(File.open(path))
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
module ReVIEW
|
|
2
|
+
module Retrovert
|
|
3
|
+
class ReViewDef
|
|
4
|
+
class << self
|
|
5
|
+
attr_accessor :r_option_inner
|
|
6
|
+
|
|
7
|
+
def is_has_id_block_command(cmd)
|
|
8
|
+
no_id_block_command().none?(cmd)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def fence_close(open)
|
|
12
|
+
case open
|
|
13
|
+
when "$", "|" then
|
|
14
|
+
return open
|
|
15
|
+
when "{" then
|
|
16
|
+
return "}"
|
|
17
|
+
end
|
|
18
|
+
nil
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# id 指定しないブロックコマンド
|
|
22
|
+
def no_id_block_command()
|
|
23
|
+
[
|
|
24
|
+
"emlist",
|
|
25
|
+
"emlistnum",
|
|
26
|
+
"emtable",
|
|
27
|
+
"note",
|
|
28
|
+
"memo",
|
|
29
|
+
"info",
|
|
30
|
+
"warning",
|
|
31
|
+
"important",
|
|
32
|
+
"caution",
|
|
33
|
+
"notice",
|
|
34
|
+
]
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# id 参照するインラインコマンド
|
|
38
|
+
def id_ref_inline_commands()
|
|
39
|
+
[
|
|
40
|
+
"list",
|
|
41
|
+
"img",
|
|
42
|
+
"table",
|
|
43
|
+
"eq",
|
|
44
|
+
]
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# キャプションを取得する
|
|
48
|
+
def get_caption(line)
|
|
49
|
+
m = line.match(/^\/\/(\w+?)((\[#{r_option_inner}\])*)([$|{])*$/)
|
|
50
|
+
if m
|
|
51
|
+
cmd = m[1]
|
|
52
|
+
options = m[2]
|
|
53
|
+
if options
|
|
54
|
+
if no_id_block_command().include?(cmd)
|
|
55
|
+
n = options.match(/\[(#{r_option_inner})\].*/)
|
|
56
|
+
return n[1] if n
|
|
57
|
+
else
|
|
58
|
+
n = options.match(/\[#{r_option_inner}\]\[(#{@r_option_inner})\].*/)
|
|
59
|
+
return n[1] if n
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
nil
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
self.r_option_inner = '(.*?\\[.*?\\\\\\].*?)*.*?'
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
@@ -198,6 +198,8 @@
|
|
|
198
198
|
\vspace{-5.5pt}
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
+
<% if Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('3.1.0') %>
|
|
202
|
+
|
|
201
203
|
% \renewcommand\reviewimagecaption[1]{%
|
|
202
204
|
% \captionsetup{format=hang,font=scriptsize,labelfont=bf,margin=50pt,name=図}
|
|
203
205
|
% \caption{ \bfseries\scriptsize{#1}} \vspace{-1.5mm}}
|
|
@@ -214,6 +216,8 @@
|
|
|
214
216
|
% \includegraphics[#1]{#2}}%
|
|
215
217
|
% }
|
|
216
218
|
|
|
219
|
+
<% end %>
|
|
220
|
+
|
|
217
221
|
%
|
|
218
222
|
% 表
|
|
219
223
|
%
|
|
@@ -276,8 +280,10 @@
|
|
|
276
280
|
% cmd
|
|
277
281
|
%
|
|
278
282
|
|
|
283
|
+
<% if Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('3.1.0') %>
|
|
279
284
|
\renewenvironment{reviewlistblock}{\needspace{\Cvs}}{}
|
|
280
285
|
|
|
286
|
+
<% end %>
|
|
281
287
|
\renewenvironment{reviewcmd}{%
|
|
282
288
|
\medskip%
|
|
283
289
|
\ifdefined\reviewlistxkanjiskip%
|
|
@@ -314,5 +320,7 @@
|
|
|
314
320
|
% \vspace*{-0.2mm}% 枠の後ろの余白の調整
|
|
315
321
|
% }
|
|
316
322
|
|
|
317
|
-
|
|
323
|
+
<% if Gem::Version.new(ReVIEW::VERSION) >= Gem::Version.new('3.1.0') %>
|
|
324
|
+
% code
|
|
318
325
|
\DeclareRobustCommand{\reviewcode}[1]{{\small\ttfamily\reviewbreakall{#1}}}
|
|
326
|
+
<% end %>
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
require 'csv'
|
|
2
|
+
|
|
3
|
+
module ReVIEW
|
|
4
|
+
module Retrovert
|
|
5
|
+
class Utils
|
|
6
|
+
class << self
|
|
7
|
+
|
|
8
|
+
# tsv to csv
|
|
9
|
+
def Tsv2Csv(infile, outfile)
|
|
10
|
+
File.open(infile, 'r') do |file|
|
|
11
|
+
CSV.open(outfile, 'w') do |csv|
|
|
12
|
+
file.each_line do |line|
|
|
13
|
+
csv << line.chomp.split(/\t+/)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def NormalizeCSVArray(ar)
|
|
20
|
+
ar&.each do |c|
|
|
21
|
+
c.gsub!(/\A"|"\z/, '')
|
|
22
|
+
c.gsub!(/^\s*/, '')
|
|
23
|
+
c.gsub!(/[\r\n]/, '')
|
|
24
|
+
end
|
|
25
|
+
ar
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def GenerateTsv(c)
|
|
29
|
+
CSV.generate_line(Utils::NormalizeCSVArray(c), col_sep: "\t")
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
data/package-lock.json
ADDED
data/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{}
|
data/review-retrovert.gemspec
CHANGED
|
@@ -28,6 +28,10 @@ Gem::Specification.new do |spec|
|
|
|
28
28
|
spec.require_paths = ["lib"]
|
|
29
29
|
|
|
30
30
|
spec.add_dependency "thor"
|
|
31
|
-
spec.add_development_dependency "
|
|
31
|
+
spec.add_development_dependency "rspec", ['~> 3.0']
|
|
32
|
+
spec.add_development_dependency "rake", ['~> 12.0']
|
|
33
|
+
spec.add_development_dependency 'aruba', ['~> 1.0.2']
|
|
34
|
+
spec.add_development_dependency "ruby-debug-ide"
|
|
35
|
+
# spec.add_development_dependency "debase"
|
|
32
36
|
spec.add_runtime_dependency "review", ['>= 3.0.0']
|
|
33
37
|
end
|
data/testdata/mybook/.gitignore
CHANGED
data/testdata/mybook/Rakefile
CHANGED
|
@@ -3,10 +3,18 @@
|
|
|
3
3
|
## Instead, edit 'lib/tasks/mytasks.rake' file.
|
|
4
4
|
##
|
|
5
5
|
|
|
6
|
+
## `gem install foobar` will raise error in macOS.
|
|
7
|
+
## the following is a hack to avoid that error.
|
|
8
|
+
rubygems_dir = File.join(Dir.pwd, 'rubygems')
|
|
9
|
+
if ENV['GEM_HOME'].to_s.empty? && File.directory?(rubygems_dir)
|
|
10
|
+
#ENV['GEM_HOME'] = rubygems_dir
|
|
11
|
+
Gem.paths = {'GEM_HOME' => rubygems_dir}
|
|
12
|
+
end
|
|
6
13
|
Dir.glob('lib/tasks/*.rake').each do |file|
|
|
7
14
|
load(file)
|
|
8
15
|
end
|
|
9
16
|
|
|
17
|
+
##
|
|
10
18
|
desc "+ list tasks"
|
|
11
19
|
task :help do
|
|
12
20
|
sh "rake -T"
|
data/testdata/mybook/catalog.yml
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
##
|
|
4
|
+
## 注:タブ文字を使わないこと(使うとエラーになる)
|
|
5
|
+
##
|
|
6
|
+
|
|
7
|
+
## まえがき
|
|
1
8
|
PREDEF:
|
|
2
9
|
- 00-preface.re
|
|
3
10
|
|
|
11
|
+
## 本文
|
|
4
12
|
CHAPS:
|
|
5
13
|
- 01-install.re
|
|
6
14
|
- 02-tutorial.re
|
|
@@ -10,25 +18,43 @@ CHAPS:
|
|
|
10
18
|
- 06-bestpractice.re
|
|
11
19
|
- r0-root.re
|
|
12
20
|
|
|
21
|
+
## 付録
|
|
13
22
|
APPENDIX:
|
|
14
23
|
- 91-compare.re
|
|
15
24
|
- 92-filelist.re
|
|
16
25
|
- 93-background.re
|
|
17
26
|
|
|
27
|
+
## あとがき
|
|
18
28
|
POSTDEF:
|
|
19
29
|
- 99-postface.re
|
|
20
30
|
|
|
21
31
|
##
|
|
22
|
-
##
|
|
23
|
-
##
|
|
32
|
+
## 【Tips】
|
|
33
|
+
##
|
|
34
|
+
## ・付録やまえがきやあとがきがなければ、空にする。
|
|
35
|
+
## 例:
|
|
36
|
+
##
|
|
37
|
+
## PREDEF:
|
|
38
|
+
##
|
|
39
|
+
## CHAPS:
|
|
40
|
+
## - 01-install.re
|
|
41
|
+
##
|
|
42
|
+
## APPENDIX:
|
|
43
|
+
##
|
|
44
|
+
## POSTDEF:
|
|
45
|
+
##
|
|
24
46
|
##
|
|
25
|
-
##
|
|
26
|
-
##
|
|
27
|
-
## - chap01.re
|
|
28
|
-
## - chap02.re
|
|
29
|
-
## - 部タイトル:
|
|
30
|
-
## - chap03.re
|
|
31
|
-
## - chap04.re
|
|
47
|
+
## ・第I部、第II部、…のように「部」を使うには、次のようにする。
|
|
48
|
+
## (部タイトルの最後に半角の「:」をつけることに注意)
|
|
32
49
|
##
|
|
33
|
-
##
|
|
50
|
+
## CHAPS:
|
|
51
|
+
## - 初級編:
|
|
52
|
+
## - 01-install.re
|
|
53
|
+
## - 02-tutorial.re
|
|
54
|
+
## - 中級編:
|
|
55
|
+
## - 03-syntax.re
|
|
56
|
+
## - 04-customize.re
|
|
57
|
+
## - 上級編:
|
|
58
|
+
## - 05-faq.re
|
|
59
|
+
## - 06-bestpractice.re
|
|
34
60
|
##
|
|
@@ -18,6 +18,12 @@ starter:
|
|
|
18
18
|
## ・B5 … 少年ジャンプ、ジャポニカ学習帳の大きさ
|
|
19
19
|
pagesize: A5 # A5 or B5
|
|
20
20
|
|
|
21
|
+
## 上下左右の塗り足し幅(印刷用PDFのみ)
|
|
22
|
+
## (参考:https://www.eikou.com/making/basis#nuritashi )
|
|
23
|
+
bleedsize: # 通常は指定しなくてよい
|
|
24
|
+
#bleedsize: 3mm # 背景色を使うなら、上下左右に3mmの塗り足しが必要
|
|
25
|
+
bleedcolor: # 通常は無指定、確認時のみ使用(red/blue/green/yellow/gray)
|
|
26
|
+
|
|
21
27
|
## フォントサイズ
|
|
22
28
|
## ・A5なら「9pt」、B5なら「10pt」を推奨
|
|
23
29
|
## ・初心者向け入門書なら大きめにして、A5「10pt」、B5「11pt」を推奨
|
|
@@ -35,6 +41,35 @@ starter:
|
|
|
35
41
|
fontweight_ja: normal # (日本語) normal: 通常, light: 細字
|
|
36
42
|
fontweight_en: normal # (英数字) normal: 通常, light: 細字
|
|
37
43
|
|
|
44
|
+
## 表紙や大扉(タイトルページ)や奥付のページのPDFファイルを指定
|
|
45
|
+
## ・PDFファイルは `images/` フォルダに置くこと。
|
|
46
|
+
## ・PDFは1ファイルにつき1ページであること。もし複数ページのPDFを指定する場合は
|
|
47
|
+
## 取り込むページ番号を `cover.pdf<2>` のように指定すること(実験的機能)。
|
|
48
|
+
## ・ファイル名の後ろに `*` をつけると、上下左右の塗り足し部分が除かれる。
|
|
49
|
+
## ・必要なら配列を使って複数ファイルを指定可能(例: [a.pdf, b.pdf])。
|
|
50
|
+
frontcover_pdffile: cover_a5.pdf # 表表紙(電子用のみ、印刷用にはつかない)
|
|
51
|
+
#frontcover_pdffile: cover.pdf<2>* # (ページ番号を指定し、塗り足しを除く場合)
|
|
52
|
+
backcover_pdffile: null # 裏表紙(電子用のみ、印刷用にはつかない)
|
|
53
|
+
titlepage_pdffile: null # 大扉(印刷用・電子用どちらにもつく)
|
|
54
|
+
colophon_pdffile: null # 奥付(印刷用・電子用どちらにもつく)
|
|
55
|
+
includepdf_option: null # PDFの位置調整が必要な場合
|
|
56
|
+
#includepdf_option: "offset=-2.3mm 2.3mm" # 位置調整の指定例
|
|
57
|
+
|
|
58
|
+
## ノンブル(1枚目からの通し番号)の設定
|
|
59
|
+
## (注:印刷用PDFのときのみ有効、電子用PDFではノンブルはつかない)
|
|
60
|
+
nombre: on # on ならノンブルをつける
|
|
61
|
+
nombre_sidemargin: 0.5mm # ページ左右からのマージン幅
|
|
62
|
+
nombre_bottommargin: 2.0mm # ページ下からのマージン高
|
|
63
|
+
nombre_fontcolor: gray # 'gray' or 'black'
|
|
64
|
+
nombre_fontsize: 6pt # フォントサイズ(6〜8pt)
|
|
65
|
+
nombre_startnumber: 1 # ノンブルの開始番号(3から始める流儀もある)
|
|
66
|
+
|
|
67
|
+
## 部 (Part) の開始番号(上・下巻に分割する場合に必要)
|
|
68
|
+
part_startnumber: 1 # 5 なら「第5部」から始まる
|
|
69
|
+
|
|
70
|
+
## 章 (Chapter) の開始番号
|
|
71
|
+
chapter_startnumber: 1 # 0 なら「第0章」から始まる
|
|
72
|
+
|
|
38
73
|
## 章 (Chapter) タイトルの装飾
|
|
39
74
|
## (none: なし、underline: 下線、boldlines: 上下に太線)
|
|
40
75
|
chapter_decoration: boldlines
|
|
@@ -55,8 +90,9 @@ starter:
|
|
|
55
90
|
section_notopmargin: true
|
|
56
91
|
|
|
57
92
|
## 節 (Section) タイトルの装飾
|
|
58
|
-
## (none: なし、underline: 下線、grayback: 灰色の背景色、
|
|
59
|
-
##
|
|
93
|
+
## (none: なし、underline: 下線、grayback: 灰色の背景色、
|
|
94
|
+
## leftline: 左に縦線、numbox: 節番号を黒背景に、circle: 円)
|
|
95
|
+
## (節タイトルが長くて二行になる場合は「leftline」「numbox」「circle」がお勧め)
|
|
60
96
|
section_decoration: grayback
|
|
61
97
|
|
|
62
98
|
## 項 (Subsection) タイトルの装飾
|
|
@@ -72,13 +108,7 @@ starter:
|
|
|
72
108
|
## キャプション直後での改ページを防ぐために、最低限必要とする高さ
|
|
73
109
|
## (もしキャプション直後での改ページが発生するなら値を増やす。
|
|
74
110
|
## もし十分なスペースがあるのに改ページされるなら値を減らす。)
|
|
75
|
-
caption_needspace: 4.
|
|
76
|
-
|
|
77
|
-
## プログラム(//list)のフォントサイズ
|
|
78
|
-
program_fontsize: normal # 'normal' or 'small'
|
|
79
|
-
|
|
80
|
-
## ターミナル(//cmd, //terminal)のフォントサイズ
|
|
81
|
-
terminal_fontsize: normal # 'normal' or 'small'
|
|
111
|
+
caption_needspace: 4.0zh # 全角文字4個分の高さ(実験で得た境界値)
|
|
82
112
|
|
|
83
113
|
## プログラム用(//list)の等幅フォント。
|
|
84
114
|
## * lmodern … LaTeXのデフォルト。1とl、0とOが見分けにくい。太字が目立たない。
|
|
@@ -106,12 +136,64 @@ starter:
|
|
|
106
136
|
## 詳細は https://twitter.com/_kauplan/status/1162167825407963137
|
|
107
137
|
terminal_widen: 0.0mm # 0.3mmとか
|
|
108
138
|
|
|
139
|
+
## プログラム(//list)のデフォルトオプション
|
|
140
|
+
## (注:YAMLでは `on, off, ~` は `true, false, null` と同じ)
|
|
141
|
+
program_default_options:
|
|
142
|
+
fold: on # on なら長い行を右端で折り返す
|
|
143
|
+
foldmark: on # on なら折り返し記号をつける
|
|
144
|
+
eolmark: off # on なら行末に改行記号をつける
|
|
145
|
+
lineno: ~ # 1 なら行番号をつける
|
|
146
|
+
linenowidth: ~ # 行番号の幅を半角文字数で指定する
|
|
147
|
+
indent: ~ # インデント幅(指定するとインデント記号がつく)
|
|
148
|
+
fontsize: ~ # null, or small/x-small/xx-smal
|
|
149
|
+
lang: ~ # デフォルトのプログラミング言語名
|
|
150
|
+
#file: ~ # (使用しない)
|
|
151
|
+
encoding: utf-8 # ファイルの文字コード
|
|
152
|
+
widecharfit: off # on なら全角1文字を半角2文字幅に
|
|
153
|
+
charspace: ~ # 文字の間隔を空ける/詰める(例:-0.03em)
|
|
154
|
+
|
|
155
|
+
## ターミナル(//terminal)のデフォルトオプション
|
|
156
|
+
## (注:YAMLでは `on, off, ~` は `true, false, null` と同じ)
|
|
157
|
+
terminal_default_options:
|
|
158
|
+
fold: on # on なら長い行を右端で折り返す
|
|
159
|
+
foldmark: on # on なら折り返し記号をつける
|
|
160
|
+
eolmark: off # on なら行末に改行記号をつける
|
|
161
|
+
lineno: ~ # 1 なら行番号をつける
|
|
162
|
+
linenowidth: ~ # 行番号の幅を半角文字数で指定する
|
|
163
|
+
indent: ~ # インデント幅(指定するとインデント記号がつく)
|
|
164
|
+
fontsize: ~ # null, or small/x-small/xx-smal
|
|
165
|
+
lang: ~ # デフォルトのプログラミング言語名
|
|
166
|
+
#file: ~ # (使用しない)
|
|
167
|
+
encoding: utf-8 # ファイルの文字コード
|
|
168
|
+
widecharfit: off # on なら全角1文字を半角2文字幅に
|
|
169
|
+
charspace: ~ # 文字の間隔を空ける/詰める(例:-0.03em)
|
|
170
|
+
|
|
109
171
|
## プログラム(//list)を枠で囲むか?
|
|
110
172
|
program_border: true
|
|
111
173
|
|
|
112
174
|
## ターミナル(//terminal, //cmd)を枠で囲むか?
|
|
113
175
|
terminal_border: false
|
|
114
176
|
|
|
177
|
+
|
|
178
|
+
## 出力結果(//output)の設定
|
|
179
|
+
output_ttfont: beramono
|
|
180
|
+
output_widen: 0.0mm # 0.3mmとか
|
|
181
|
+
output_border: true # 枠線で囲むか?
|
|
182
|
+
output_default_options:
|
|
183
|
+
fold: on # on なら長い行を右端で折り返す
|
|
184
|
+
foldmark: on # on なら折り返し記号をつける
|
|
185
|
+
eolmark: off # on なら行末に改行記号をつける
|
|
186
|
+
lineno: ~ # 1 なら行番号をつける
|
|
187
|
+
linenowidth: ~ # 行番号の幅を半角文字数で指定する
|
|
188
|
+
indent: ~ # インデント幅(指定するとインデント記号がつく)
|
|
189
|
+
fontsize: ~ # null, or small/x-small/xx-smal
|
|
190
|
+
lang: ~ # デフォルトのプログラミング言語名
|
|
191
|
+
#file: ~ # (使用しない)
|
|
192
|
+
encoding: utf-8 # ファイルの文字コード
|
|
193
|
+
widecharfit: on # on なら全角1文字を半角2文字幅に
|
|
194
|
+
charspace: ~ # 文字の間隔を空ける/詰める(例:-0.03em)
|
|
195
|
+
|
|
196
|
+
|
|
115
197
|
## 文章中の「@<code>{...}」の背景色を薄いグレーにするか?
|
|
116
198
|
inlinecode_gray: false
|
|
117
199
|
|
|
@@ -137,3 +219,46 @@ starter:
|
|
|
137
219
|
|
|
138
220
|
## @<secref>{}において、親の節のタイトルを含めるか?
|
|
139
221
|
secref_parenttitle: false # trueなら親の節のタイトルを含める
|
|
222
|
+
|
|
223
|
+
## PDF中のテキストをマウスで選択したとき、折り返し記号やインデント記号を選択対象から外すか?
|
|
224
|
+
## ・trueだとコンパイル時間が大幅に増えるので、デフォルトではfalse。
|
|
225
|
+
## ・環境変数「$STARTER_EXCLUDE_MOUSESELECT=on」でもtrueにできる。
|
|
226
|
+
## ・AcrobatReaderでは機能するが、macOS Preview.appでは機能しない。
|
|
227
|
+
exclude_mouseselect: false
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
## 説明リスト(`//desclist`)のデフォルトオプション
|
|
231
|
+
## (注:YAMLでは `on` は `true` と同じ、`off` は `false` と同じ)
|
|
232
|
+
desclist_default_options:
|
|
233
|
+
indent: 3zw # 説明文の左側の空き幅
|
|
234
|
+
space: 1zw # キーや用語の直後の空き幅
|
|
235
|
+
bold: off # on ならキーや用語を太字に
|
|
236
|
+
compact: off # on ならキーや用語の直後で改行しない
|
|
237
|
+
listmargin: 0.5zw # 説明リスト上下の空きの高さ
|
|
238
|
+
itemmargin: 0mm # 説明項目間の空きの高さ
|
|
239
|
+
classname: # HTMLタグに含めるクラス名
|
|
240
|
+
|
|
241
|
+
## 会話形式(`//talklist`)のデフォルトオプション
|
|
242
|
+
## (注:YAMLでは `on` は `true` と同じ、`off` は `false` と同じ)
|
|
243
|
+
talklist_default_options:
|
|
244
|
+
indent: 6zw # 本文左端から会話部分までの幅
|
|
245
|
+
separator: ":" # 名前と会話文との区切り文字列
|
|
246
|
+
imagewidth: 4zw # 画像幅
|
|
247
|
+
imageheight: # 画像高さ(通常は無指定でよい)
|
|
248
|
+
imageborder: off # on なら画像に枠線をつける
|
|
249
|
+
needvspace: 4zw # 必要な空きがなければ改ページ
|
|
250
|
+
itemmargin: 1mm # 会話項目間の空き
|
|
251
|
+
listmargin: 0.5zw # 会話リストの最初と最後の空き
|
|
252
|
+
itemstart: "「" # 会話文の先頭につける文字列
|
|
253
|
+
itemend: "」" # 会話文の最後につける文字列
|
|
254
|
+
classname: # HTMLタグに含めるクラス名
|
|
255
|
+
|
|
256
|
+
## 大量の会話形式をより簡単に入力するための設定
|
|
257
|
+
## (例:`//t[b1]` が `//talk[avatar-b][]` の短縮形となる)
|
|
258
|
+
talk_shortcuts:
|
|
259
|
+
## アイコン画像を使う場合
|
|
260
|
+
"b1": {image: "avatar-b"}
|
|
261
|
+
"g1": {image: "avatar-g"}
|
|
262
|
+
## アイコン画像を使わない場合
|
|
263
|
+
#"b1": {name: "アリス"}
|
|
264
|
+
#"g1": {name: "ボブ"}
|