review 3.0.0.preview2 → 3.0.0.preview3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +7 -1
  3. data/NEWS.ja.md +49 -0
  4. data/NEWS.md +49 -0
  5. data/README.md +8 -2
  6. data/doc/LICENSE +20 -0
  7. data/doc/config.yml.sample +9 -2
  8. data/doc/customize_epub.ja.md +23 -0
  9. data/doc/customize_epub.md +23 -0
  10. data/doc/format.ja.md +98 -4
  11. data/doc/format.md +98 -1
  12. data/doc/makeindex.ja.md +2 -2
  13. data/doc/pdfmaker.ja.md +12 -3
  14. data/doc/pdfmaker.md +2 -2
  15. data/doc/preproc.ja.md +2 -2
  16. data/doc/quickstart.ja.md +1 -1
  17. data/doc/quickstart.md +1 -1
  18. data/lib/review/compiler.rb +1 -1
  19. data/lib/review/configure.rb +13 -1
  20. data/lib/review/epubmaker.rb +10 -4
  21. data/lib/review/htmlbuilder.rb +31 -9
  22. data/lib/review/init.rb +72 -3
  23. data/lib/review/makerhelper.rb +180 -1
  24. data/lib/review/pdfmaker.rb +23 -4
  25. data/lib/review/version.rb +1 -1
  26. data/lib/review/webmaker.rb +14 -4
  27. data/review.gemspec +1 -1
  28. data/samples/sample-book/src/Rakefile +20 -0
  29. data/samples/sample-book/src/config.yml +3 -2
  30. data/samples/sample-book/src/images/cover-a5.ai +5836 -16
  31. data/samples/sample-book/src/images/cover-b5.ai +5735 -15
  32. data/samples/syntax-book/config.yml +1 -1
  33. data/templates/LICENSE +1 -1
  34. data/templates/latex/config.erb +24 -11
  35. data/templates/latex/layout.tex.erb +15 -5
  36. data/templates/latex/review-jlreq/README.md +2 -1
  37. data/templates/latex/review-jlreq/review-base.sty +165 -22
  38. data/templates/latex/review-jlreq/review-jlreq.cls +180 -110
  39. data/templates/latex/review-jlreq/review-style.sty +13 -125
  40. data/templates/latex/review-jlreq/reviewmacro.sty +7 -0
  41. data/templates/latex/review-jsbook/README.md +129 -0
  42. data/templates/latex/review-jsbook/review-base.sty +33 -20
  43. data/templates/latex/review-jsbook/review-jsbook.cls +545 -0
  44. data/templates/latex/review-jsbook/reviewmacro.sty +7 -0
  45. data/test/assets/test_template.tex +27 -8
  46. data/test/assets/test_template_backmatter.tex +27 -8
  47. data/test/test_helper.rb +3 -0
  48. data/test/test_htmlbuilder.rb +3 -1
  49. data/test/test_pdfmaker.rb +2 -0
  50. data/vendor/gentombow/.gitignore +163 -0
  51. data/vendor/gentombow/LICENSE +27 -0
  52. data/vendor/gentombow/Makefile +36 -0
  53. data/vendor/gentombow/README.md +49 -0
  54. data/vendor/gentombow/bounddvi-en.pdf +0 -0
  55. data/vendor/gentombow/bounddvi-en.tex +135 -0
  56. data/vendor/gentombow/bounddvi.pdf +0 -0
  57. data/vendor/gentombow/bounddvi.sty +87 -0
  58. data/vendor/gentombow/bounddvi.tex +148 -0
  59. data/vendor/gentombow/create_archive.sh +24 -0
  60. data/vendor/gentombow/gentombow-ja.pdf +0 -0
  61. data/vendor/gentombow/gentombow-ja.tex +449 -0
  62. data/vendor/gentombow/gentombow.pdf +0 -0
  63. data/vendor/gentombow/gentombow.sty +747 -0
  64. data/vendor/gentombow/gentombow.tex +298 -0
  65. data/vendor/gentombow/pxgentombow.pdf +0 -0
  66. data/vendor/gentombow/pxgentombow.sty +16 -0
  67. data/vendor/gentombow/pxgentombow.tex +25 -0
  68. data/vendor/gentombow/tests/bounddvi-01-usage.tex +7 -0
  69. data/vendor/gentombow/tests/bounddvi-02-jstombow.tex +7 -0
  70. data/vendor/gentombow/tests/bounddvi-03-grfdvips.tex +9 -0
  71. data/vendor/gentombow/tests/bounddvi-04-grfdvipdfmx.tex +9 -0
  72. data/vendor/gentombow/tests/bounddvi-05-geodvips.tex +8 -0
  73. data/vendor/gentombow/tests/bounddvi-05a-geodvips.tex +9 -0
  74. data/vendor/gentombow/tests/bounddvi-06-geodvipdfmx.tex +8 -0
  75. data/vendor/gentombow/tests/bounddvi-06a-geodvipdfmx.tex +9 -0
  76. data/vendor/gentombow/tests/pxgentombow-01-usage.tex +6 -0
  77. data/vendor/gentombow/tests/pxgentombow-02-js.tex +6 -0
  78. data/vendor/gentombow/tests/pxgentombow-02a-js-error.tex +6 -0
  79. data/vendor/gentombow/tests/pxgentombow-03-notombowdate.tex +8 -0
  80. data/vendor/gentombow/tests/pxgentombow-04-pkgoption.tex +8 -0
  81. data/vendor/gentombow/tests/pxgentombow-05-tatecls.tex +6 -0
  82. metadata +40 -3
@@ -6,3 +6,10 @@
6
6
 
7
7
  % ユーザー固有の定義
8
8
  \RequirePackage{review-custom}
9
+
10
+ %% run \@endofreviewmacrohook at the end of reviewmacro style
11
+ \@ifundefined{@endofreviewmacrohook}{}{%
12
+ \let\AtEndOfReVIEWMacro\@firstofone
13
+ \@endofreviewmacrohook}
14
+
15
+ \endinput
@@ -1,12 +1,20 @@
1
- \documentclass[dvipdfmx,uplatex,twoside]{jsbook}
1
+ \documentclass[dvipdfmx]{review-jsbook}
2
2
  \makeatletter
3
+ \def\review@reviewversion{3.0.0.preview2}
3
4
  \def\review@texcompiler{uplatex}
4
- \def\review@documentclass{jsbook}
5
+ \def\review@documentclass{review-jsbook}
6
+
5
7
  \def\review@booktitlename{Re:VIEW Sample Book}
6
- \def\review@autnames{}
8
+
9
+
7
10
  \def\review@titlepageauthors{}
8
11
  \def\review@date{2011{-}01{-}01}
12
+
13
+ \def\review@bookname{sample}
9
14
  \def\review@language{ja}
15
+ \def\review@urnid{http://example.jp/}
16
+
17
+
10
18
  \def\review@intn@list{リスト}
11
19
  \def\review@intn@columnhead{■コラム}
12
20
  \def\review@intn@image{図}
@@ -24,6 +32,7 @@
24
32
  \def\review@figurename{図}
25
33
  \def\review@tablename{表}
26
34
  \def\review@appendixname{付録}
35
+
27
36
  \def\review@titlepage{true}
28
37
 
29
38
  \def\review@pubhistories{2011年1月1日 発行}
@@ -39,21 +48,26 @@
39
48
 
40
49
  \begin{document}
41
50
 
51
+ %% begindocument hook
52
+ \ifdefined\reviewbegindocumenthook
53
+ \reviewbegindocumenthook
54
+ \fi
55
+
42
56
  %% coverpage
43
57
  \ifdefined\reviewcoverpagecont
44
58
  \reviewcoverpagecont
45
59
  \fi
46
60
 
47
- %% title page
48
- \ifdefined\reviewtitlepagecont
49
- \reviewtitlepagecont
50
- \fi
51
-
52
61
  %% frontmatter hook
53
62
  \ifdefined\reviewfrontmatterhook
54
63
  \reviewfrontmatterhook
55
64
  \fi
56
65
 
66
+ %% title page
67
+ \ifdefined\reviewtitlepagecont
68
+ \reviewtitlepagecont
69
+ \fi
70
+
57
71
  %% originaltitle
58
72
  \ifdefined\revieworiginaltitlepagecont
59
73
  \revieworiginaltitlepagecont
@@ -129,4 +143,9 @@
129
143
  \reviewbackcovercont
130
144
  \fi
131
145
 
146
+ %% enddocument hook
147
+ \ifdefined\reviewenddocumenthook
148
+ \reviewenddocumenthook
149
+ \fi
150
+
132
151
  \end{document}
@@ -1,12 +1,20 @@
1
- \documentclass[dvipdfmx,uplatex,twoside]{jsbook}
1
+ \documentclass[dvipdfmx]{review-jsbook}
2
2
  \makeatletter
3
+ \def\review@reviewversion{3.0.0.preview2}
3
4
  \def\review@texcompiler{uplatex}
4
- \def\review@documentclass{jsbook}
5
+ \def\review@documentclass{review-jsbook}
6
+
5
7
  \def\review@booktitlename{Re:VIEW Sample Book}
6
- \def\review@autnames{}
8
+
9
+
7
10
  \def\review@titlepageauthors{}
8
11
  \def\review@date{2011{-}01{-}01}
12
+
13
+ \def\review@bookname{sample}
9
14
  \def\review@language{ja}
15
+ \def\review@urnid{http://example.jp/}
16
+
17
+
10
18
  \def\review@intn@list{リスト}
11
19
  \def\review@intn@columnhead{■コラム}
12
20
  \def\review@intn@image{図}
@@ -24,6 +32,7 @@
24
32
  \def\review@figurename{図}
25
33
  \def\review@tablename{表}
26
34
  \def\review@appendixname{付録}
35
+
27
36
  \def\review@titlepage{true}
28
37
  \def\reviewprofilepagecont{\thispagestyle{empty}\chapter*{Profile}
29
38
  some profile
@@ -50,21 +59,26 @@ some ad content
50
59
 
51
60
  \begin{document}
52
61
 
62
+ %% begindocument hook
63
+ \ifdefined\reviewbegindocumenthook
64
+ \reviewbegindocumenthook
65
+ \fi
66
+
53
67
  %% coverpage
54
68
  \ifdefined\reviewcoverpagecont
55
69
  \reviewcoverpagecont
56
70
  \fi
57
71
 
58
- %% title page
59
- \ifdefined\reviewtitlepagecont
60
- \reviewtitlepagecont
61
- \fi
62
-
63
72
  %% frontmatter hook
64
73
  \ifdefined\reviewfrontmatterhook
65
74
  \reviewfrontmatterhook
66
75
  \fi
67
76
 
77
+ %% title page
78
+ \ifdefined\reviewtitlepagecont
79
+ \reviewtitlepagecont
80
+ \fi
81
+
68
82
  %% originaltitle
69
83
  \ifdefined\revieworiginaltitlepagecont
70
84
  \revieworiginaltitlepagecont
@@ -140,4 +154,9 @@ some ad content
140
154
  \reviewbackcovercont
141
155
  \fi
142
156
 
157
+ %% enddocument hook
158
+ \ifdefined\reviewenddocumenthook
159
+ \reviewenddocumenthook
160
+ \fi
161
+
143
162
  \end{document}
data/test/test_helper.rb CHANGED
@@ -13,6 +13,9 @@ end
13
13
  def prepare_samplebook(srcdir)
14
14
  samplebook_dir = File.expand_path('../samples/sample-book/src/', File.dirname(__FILE__))
15
15
  FileUtils.cp_r(Dir.glob(samplebook_dir + '/*'), srcdir)
16
+ # copy from review-jsbook
17
+ template_dir = File.expand_path('../templates/latex/review-jsbook/', File.dirname(__FILE__))
18
+ FileUtils.cp(Dir.glob(template_dir + '/*'), File.join(srcdir, 'sty'))
16
19
  YAML.load(File.open(srcdir + '/config.yml'))
17
20
  end
18
21
 
@@ -1080,7 +1080,7 @@ EOS
1080
1080
  FileUtils.mkdir_p(File.join(dir, 'images'))
1081
1081
  expected = <<-EOB
1082
1082
  <div class=\"equation\">
1083
- <img src=\"././images/_review_math/_gen_XXX.png\" />
1083
+ <img src=\"images/_review_math/_gen_XXX.png\" class=\"math_gen_255609d0624d30ecd7b33bfbf069fa39965e221476aeb507f48766d9f216b9eb\" alt="p \\land \\bm{P} q" />
1084
1084
  </div>
1085
1085
  EOB
1086
1086
  tmpio = $stderr
@@ -1096,12 +1096,14 @@ EOS
1096
1096
  end
1097
1097
 
1098
1098
  def test_texequation_fail
1099
+ # Re:VIEW 3 never fail on defer mode. This test is only for Re:VIEW 2.
1099
1100
  return true if /mswin|mingw|cygwin/ =~ RUBY_PLATFORM
1100
1101
  return true unless system('latex -version 1>/dev/null 2>/dev/null')
1101
1102
  mktmpbookdir('catalog.yml' => "CHAPS:\n - ch01.re\n",
1102
1103
  'ch01.re' => "= test\n\n//texequation{\np \\land \\bm{P}} q\n//}\n") do |dir, book, _files|
1103
1104
  @book = book
1104
1105
  @book.config = @config
1106
+ @config['review_version'] = 2
1105
1107
  @config['imgmath'] = true
1106
1108
  @chapter = Book::Chapter.new(@book, 1, '-', nil, StringIO.new)
1107
1109
  location = Location.new(nil, nil)
@@ -144,6 +144,7 @@ class PDFMakerTest < Test::Unit::TestCase
144
144
  @maker.erb_config
145
145
  tmpl = @maker.template_content
146
146
  expect = File.read(File.join(assets_dir, 'test_template.tex'))
147
+ expect.gsub!(/\\def\\review@reviewversion{[^\}]+}/, "\\def\\review@reviewversion{#{ReVIEW::VERSION}}")
147
148
  assert_equal(expect, tmpl)
148
149
  end
149
150
  end
@@ -163,6 +164,7 @@ class PDFMakerTest < Test::Unit::TestCase
163
164
  backcover = "\\clearpage\n\\thispagestyle{empty}\\AddToShipoutPictureBG{%\n\\AtPageLowerLeft{\\includegraphics[width=\\paperwidth,height=\\paperheight]{images/backcover.png}}\n}\n\\null"
164
165
  File.open(File.join(dir, 'backcover.tex'), 'w') { |f| f.write(backcover) }
165
166
  expect = File.read(File.join(assets_dir, 'test_template_backmatter.tex'))
167
+ expect.gsub!(/\\def\\review@reviewversion{[^\}]+}/, "\\def\\review@reviewversion{#{ReVIEW::VERSION}}")
166
168
  @maker.basedir = Dir.pwd
167
169
  @maker.erb_config
168
170
  tmpl = @maker.template_content
@@ -0,0 +1,163 @@
1
+ ## Core latex/pdflatex auxiliary files:
2
+ *.aux
3
+ *.lof
4
+ *.log
5
+ *.lot
6
+ *.fls
7
+ *.out
8
+ *.toc
9
+ *.fmt
10
+
11
+ ## Intermediate documents:
12
+ *.dvi
13
+ *-converted-to.*
14
+ # these rules might exclude image files for figures etc.
15
+ # *.ps
16
+ # *.eps
17
+ # *.pdf
18
+
19
+ ## Bibliography auxiliary files (bibtex/biblatex/biber):
20
+ *.bbl
21
+ *.bcf
22
+ *.blg
23
+ *-blx.aux
24
+ *-blx.bib
25
+ *.brf
26
+ *.run.xml
27
+
28
+ ## Build tool auxiliary files:
29
+ *.fdb_latexmk
30
+ *.synctex
31
+ *.synctex.gz
32
+ *.synctex.gz(busy)
33
+ *.pdfsync
34
+
35
+ ## Auxiliary and intermediate files from other packages:
36
+ # algorithms
37
+ *.alg
38
+ *.loa
39
+
40
+ # achemso
41
+ acs-*.bib
42
+
43
+ # amsthm
44
+ *.thm
45
+
46
+ # beamer
47
+ *.nav
48
+ *.snm
49
+ *.vrb
50
+
51
+ # cprotect
52
+ *.cpt
53
+
54
+ #(e)ledmac/(e)ledpar
55
+ *.end
56
+ *.[1-9]
57
+ *.[1-9][0-9]
58
+ *.[1-9][0-9][0-9]
59
+ *.[1-9]R
60
+ *.[1-9][0-9]R
61
+ *.[1-9][0-9][0-9]R
62
+ *.eledsec[1-9]
63
+ *.eledsec[1-9]R
64
+ *.eledsec[1-9][0-9]
65
+ *.eledsec[1-9][0-9]R
66
+ *.eledsec[1-9][0-9][0-9]
67
+ *.eledsec[1-9][0-9][0-9]R
68
+
69
+ # glossaries
70
+ *.acn
71
+ *.acr
72
+ *.glg
73
+ *.glo
74
+ *.gls
75
+
76
+ # gnuplottex
77
+ *-gnuplottex-*
78
+
79
+ # hyperref
80
+ *.brf
81
+
82
+ # knitr
83
+ *-concordance.tex
84
+ *.tikz
85
+ *-tikzDictionary
86
+
87
+ # listings
88
+ *.lol
89
+
90
+ # makeidx
91
+ *.idx
92
+ *.ilg
93
+ *.ind
94
+ *.ist
95
+
96
+ # minitoc
97
+ *.maf
98
+ *.mtc
99
+ *.mtc[0-9]
100
+ *.mtc[1-9][0-9]
101
+
102
+ # minted
103
+ _minted*
104
+ *.pyg
105
+
106
+ # morewrites
107
+ *.mw
108
+
109
+ # mylatexformat
110
+ *.fmt
111
+
112
+ # nomencl
113
+ *.nlo
114
+
115
+ # sagetex
116
+ *.sagetex.sage
117
+ *.sagetex.py
118
+ *.sagetex.scmd
119
+
120
+ # sympy
121
+ *.sout
122
+ *.sympy
123
+ sympy-plots-for-*.tex/
124
+
125
+ # pdfcomment
126
+ *.upa
127
+ *.upb
128
+
129
+ #pythontex
130
+ *.pytxcode
131
+ pythontex-files-*/
132
+
133
+ # Texpad
134
+ .texpadtmp
135
+
136
+ # TikZ & PGF
137
+ *.dpth
138
+ *.md5
139
+ *.auxlock
140
+
141
+ # todonotes
142
+ *.tdo
143
+
144
+ # xindy
145
+ *.xdy
146
+
147
+ # xypic precompiled matrices
148
+ *.xyc
149
+
150
+ # WinEdt, Emacs
151
+ *~
152
+ *.bak
153
+ *.sav
154
+
155
+ # endfloat
156
+ *.ttt
157
+ *.fff
158
+
159
+ # Latexian
160
+ TSWLatexianTemp*
161
+
162
+ # tests
163
+ tests/*.pdf
@@ -0,0 +1,27 @@
1
+ Copyright (c) 2016-2018 Hironobu Yamashita
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions are met:
6
+
7
+ * Redistributions of source code must retain the above copyright notice, this
8
+ list of conditions and the following disclaimer.
9
+
10
+ * Redistributions in binary form must reproduce the above copyright notice,
11
+ this list of conditions and the following disclaimer in the documentation
12
+ and/or other materials provided with the distribution.
13
+
14
+ * Neither the name of the copyright holder nor the names of its contributors
15
+ may be used to endorse or promote products derived from this software
16
+ without specific prior written permission.
17
+
18
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
22
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
25
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,36 @@
1
+ KANJI = -kanji=utf8
2
+ FONTMAP = -f ipaex.map -f ptex-ipaex.map
3
+ TEXMF = $(shell kpsewhich -var-value=TEXMFHOME)
4
+
5
+ all: bounddvi.pdf bounddvi-en.pdf \
6
+ gentombow.pdf gentombow-ja.pdf #pxgentombow.pdf
7
+
8
+ .SUFFIXES: .tex .dvi .pdf
9
+ .tex.dvi:
10
+ platex $(KANJI) $<
11
+ platex $(KANJI) $<
12
+ rm *.aux *.log
13
+ .dvi.pdf:
14
+ dvipdfmx $(FONTMAP) $<
15
+
16
+ bounddvi-en.dvi: bounddvi-en.tex
17
+ latex $<
18
+ latex $<
19
+ rm *.aux *.log
20
+ gentombow.pdf: gentombow.tex
21
+ pdflatex $<
22
+ pdflatex $<
23
+ rm *.aux *.log
24
+
25
+ .PHONY: install clean
26
+ install:
27
+ mkdir -p ${TEXMF}/doc/latex/gentombow
28
+ cp ./Makefile ${TEXMF}/doc/latex/gentombow/
29
+ cp ./LICENSE ${TEXMF}/doc/latex/gentombow/
30
+ cp ./README.md ${TEXMF}/doc/latex/gentombow/
31
+ cp ./*.pdf ${TEXMF}/doc/latex/gentombow/
32
+ cp ./*.tex ${TEXMF}/doc/latex/gentombow/
33
+ mkdir -p ${TEXMF}/tex/latex/gentombow
34
+ cp ./*.sty ${TEXMF}/tex/latex/gentombow/
35
+ clean:
36
+ rm -f *.dvi *.pdf
@@ -0,0 +1,49 @@
1
+ # gentombow
2
+
3
+ This bundle provides a LaTeX package for generating Japanese-style
4
+ crop marks (called 'tombow' in Japanese) for practical use in
5
+ self-publishing.
6
+
7
+ ## Bundle contents
8
+
9
+ - gentombow.sty:
10
+ Generate crop marks (called 'tombow' in Japanese) for
11
+ practical use in self-publishing.
12
+ It provides the core 'tombow' feature if not available.
13
+ - pxgentombow.sty:
14
+ (Superseded by gentombow.sty; for compatibility only.)
15
+ - bounddvi.sty:
16
+ Set papersize special to DVI file.
17
+ Can be used on LaTeX/pLaTeX/upLaTeX (with DVI output mode)
18
+ with dvips or dvipdfmx drivers.
19
+ Old version (v6.0) of this package, written by Koichi INOUE
20
+ in 2004, is available at
21
+ https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html
22
+ (dead link).
23
+ Now it is maintained by Hironobu Yamashita by his courtesy.
24
+
25
+ ## Character encoding
26
+
27
+ All the package files (.sty) contain ASCII characters only.
28
+ All the document files (.tex) are encoded in UTF-8.
29
+
30
+ ## Installation
31
+
32
+ - *.sty -> $TEXMF/tex/latex/gentombow
33
+ - *.tex, *.pdf -> $TEXMF/doc/latex/gentombow
34
+
35
+ ## Repository
36
+
37
+ The bundle is maintained on GitHub:
38
+ https://github.com/aminophen/gentombow
39
+
40
+ ## License
41
+
42
+ The bundle may be distributed and/or modified under the terms of
43
+ the 3-clause BSD license (see [LICENSE](./LICENSE)).
44
+
45
+ ## Release Date
46
+
47
+ $RELEASEDATE
48
+
49
+ Hironobu Yamashita