review 4.0.0 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby-win.yml +39 -0
- data/.github/workflows/ruby.yml +27 -0
- data/.rubocop.yml +10 -7
- data/Dockerfile +21 -5
- data/NEWS.ja.md +101 -1
- data/NEWS.md +102 -2
- data/README.md +10 -7
- data/appveyor.yml +0 -20
- data/bin/review-compile +1 -1
- data/bin/review-validate +1 -1
- data/doc/config.yml.sample +12 -1
- data/doc/config.yml.sample-simple +1 -0
- data/doc/format.ja.md +16 -4
- data/doc/format.md +2 -1
- data/doc/quickstart.ja.md +40 -23
- data/doc/quickstart.md +33 -15
- data/lib/review/book/base.rb +8 -7
- data/lib/review/book/index.rb +50 -56
- data/lib/review/book/index/item.rb +1 -1
- data/lib/review/builder.rb +26 -4
- data/lib/review/compiler.rb +6 -3
- data/lib/review/configure.rb +5 -3
- data/lib/review/epubmaker.rb +15 -2
- data/lib/review/extentions/string.rb +0 -4
- data/lib/review/htmlbuilder.rb +4 -15
- data/lib/review/idgxmlbuilder.rb +10 -19
- data/lib/review/idgxmlmaker.rb +10 -3
- data/lib/review/init.rb +8 -1
- data/lib/review/latexbuilder.rb +13 -6
- data/lib/review/pdfmaker.rb +24 -9
- data/lib/review/rstbuilder.rb +2 -2
- data/lib/review/textmaker.rb +7 -1
- data/lib/review/tocparser.rb +6 -2
- data/lib/review/version.rb +1 -1
- data/lib/review/webmaker.rb +8 -1
- data/review.gemspec +2 -2
- data/samples/sample-book/src/.gitignore +1 -0
- data/samples/sample-book/src/config-ebook.yml +4 -0
- data/samples/sample-book/src/config-jlreq-ebook.yml +4 -0
- data/samples/sample-book/src/config.yml +1 -1
- data/samples/sample-book/src/lib/tasks/review.rake +10 -6
- data/samples/syntax-book/ch01.re +4 -2
- data/samples/syntax-book/ch02.re +8 -16
- data/samples/syntax-book/config-jlreq-lualatex.yml +4 -0
- data/samples/syntax-book/config-print.yml +3 -0
- data/samples/syntax-book/config.yml +1 -1
- data/samples/syntax-book/lib/tasks/review.rake +23 -8
- data/templates/latex/config.erb +6 -6
- data/templates/latex/review-jlreq/review-base.sty +14 -4
- data/templates/latex/review-jlreq/review-jlreq.cls +10 -1
- data/templates/latex/review-jlreq/review-style.sty +1 -1
- data/templates/latex/review-jsbook/review-base.sty +10 -0
- data/templates/latex/review-jsbook/review-jsbook.cls +1 -1
- data/templates/latex/review-jsbook/review-style.sty +1 -1
- data/test/assets/test_template.tex +6 -6
- data/test/assets/test_template_backmatter.tex +6 -6
- data/test/test_book.rb +8 -0
- data/test/test_book_chapter.rb +4 -2
- data/test/test_catalog.rb +1 -0
- data/test/test_epubmaker_cmd.rb +12 -5
- data/test/test_helper.rb +11 -6
- data/test/test_htmlbuilder.rb +80 -8
- data/test/test_idgxmlbuilder.rb +57 -2
- data/test/test_idgxmlmaker_cmd.rb +46 -0
- data/test/test_image_finder.rb +52 -70
- data/test/test_index.rb +12 -12
- data/test/test_latexbuilder.rb +171 -8
- data/test/test_latexbuilder_v2.rb +9 -7
- data/test/test_pdfmaker_cmd.rb +99 -5
- data/test/test_textmaker_cmd.rb +54 -0
- data/test/test_topbuilder.rb +59 -0
- data/vendor/jsclasses/LICENSE +1 -1
- data/vendor/jsclasses/jis/jsarticle.cls +53 -14
- data/vendor/jsclasses/jis/jsbook.cls +53 -14
- data/vendor/jsclasses/jis/jsclasses.dtx +84 -25
- data/vendor/jsclasses/jis/jslogo.dtx +4 -4
- data/vendor/jsclasses/jis/jslogo.sty +3 -3
- data/vendor/jsclasses/jis/jspf.cls +52 -13
- data/vendor/jsclasses/jis/jsreport.cls +53 -14
- data/vendor/jsclasses/jis/kiyou.cls +53 -14
- data/vendor/jsclasses/jis/okumacro.dtx +4 -5
- data/vendor/jsclasses/jis/okumacro.sty +3 -4
- data/vendor/jsclasses/jsarticle.cls +53 -14
- data/vendor/jsclasses/jsbook.cls +53 -14
- data/vendor/jsclasses/jsclasses.dtx +84 -25
- data/vendor/jsclasses/jsclasses.pdf +0 -0
- data/vendor/jsclasses/jslogo.dtx +4 -4
- data/vendor/jsclasses/jslogo.pdf +0 -0
- data/vendor/jsclasses/jslogo.sty +3 -3
- data/vendor/jsclasses/jspf.cls +52 -13
- data/vendor/jsclasses/jsreport.cls +53 -14
- data/vendor/jsclasses/kiyou.cls +53 -14
- data/vendor/jsclasses/okumacro.dtx +4 -5
- data/vendor/jsclasses/okumacro.pdf +0 -0
- data/vendor/jsclasses/okumacro.sty +3 -4
- metadata +15 -6
- data/samples/syntax-book/review-ext.rb +0 -14
data/test/test_index.rb
CHANGED
@@ -54,7 +54,7 @@ class IndexTest < Test::Unit::TestCase
|
|
54
54
|
EOB
|
55
55
|
book = Book::Base.load
|
56
56
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
57
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
57
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
58
58
|
assert_equal [2, 2], index['sec1-2|sec1-2-2'].number
|
59
59
|
assert_equal '1.2.2', index.number('sec1-2|sec1-2-2')
|
60
60
|
end
|
@@ -71,7 +71,7 @@ class IndexTest < Test::Unit::TestCase
|
|
71
71
|
EOB
|
72
72
|
book = Book::Base.load
|
73
73
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
74
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
74
|
+
index = Book::HeadlineIndex.parse(src.lines, chap)
|
75
75
|
assert_equal [3, 1], index['sec1-3|sec1-3-1'].number
|
76
76
|
assert_equal '1.3.1', index.number('sec1-3|sec1-3-1')
|
77
77
|
end
|
@@ -89,7 +89,7 @@ class IndexTest < Test::Unit::TestCase
|
|
89
89
|
EOB
|
90
90
|
book = Book::Base.load
|
91
91
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
92
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
92
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
93
93
|
assert_equal [2, 2], index['sec1-2|sec1-2-2'].number
|
94
94
|
assert_equal '1.2.2', index.number('sec1-2|sec1-2-2')
|
95
95
|
|
@@ -108,7 +108,7 @@ class IndexTest < Test::Unit::TestCase
|
|
108
108
|
EOB
|
109
109
|
book = Book::Base.load
|
110
110
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
111
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
111
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
112
112
|
assert_equal [2, 2], index['sec1-2|sec1-2-2'].number
|
113
113
|
assert_equal '1.2.2', index.number('sec1-2|sec1-2-2')
|
114
114
|
end
|
@@ -124,7 +124,7 @@ class IndexTest < Test::Unit::TestCase
|
|
124
124
|
EOB
|
125
125
|
book = Book::Base.load
|
126
126
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
127
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
127
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
128
128
|
assert_equal [2, 2], index['sec1-2-2'].number
|
129
129
|
assert_equal '1.2.2', index.number('sec1-2-2')
|
130
130
|
end
|
@@ -139,7 +139,7 @@ class IndexTest < Test::Unit::TestCase
|
|
139
139
|
EOB
|
140
140
|
book = Book::Base.load
|
141
141
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
142
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
142
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
143
143
|
assert_equal [1, 1], index['target'].number
|
144
144
|
assert_equal '1.1.1', index.number('target')
|
145
145
|
end
|
@@ -157,7 +157,7 @@ class IndexTest < Test::Unit::TestCase
|
|
157
157
|
EOB
|
158
158
|
book = Book::Base.load
|
159
159
|
chap = Book::Chapter.new(book, 1, '-', nil) # dummy
|
160
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
160
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
161
161
|
|
162
162
|
assert_raise ReVIEW::KeyError do
|
163
163
|
assert_equal [1, 1], index['target'].number
|
@@ -174,7 +174,7 @@ class IndexTest < Test::Unit::TestCase
|
|
174
174
|
EOB
|
175
175
|
book = Book::Base.load
|
176
176
|
chap = Book::Chapter.new(book, 1, '-', nil)
|
177
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
177
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
178
178
|
assert_equal '1.1.1', index.number('sec1-1')
|
179
179
|
end
|
180
180
|
|
@@ -190,7 +190,7 @@ class IndexTest < Test::Unit::TestCase
|
|
190
190
|
EOB
|
191
191
|
book = Book::Base.load
|
192
192
|
chap = Book::Chapter.new(book, 1, '-', nil)
|
193
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
193
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
194
194
|
assert_equal [1, 1, 1], index['sec1-1-1'].number
|
195
195
|
end
|
196
196
|
|
@@ -205,7 +205,7 @@ class IndexTest < Test::Unit::TestCase
|
|
205
205
|
EOB
|
206
206
|
book = Book::Base.load
|
207
207
|
chap = Book::Chapter.new(book, 1, '-', nil)
|
208
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
208
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
209
209
|
assert_equal [1, 1, 1], index['sec1-1-1'].number
|
210
210
|
end
|
211
211
|
|
@@ -222,7 +222,7 @@ class IndexTest < Test::Unit::TestCase
|
|
222
222
|
EOB
|
223
223
|
book = Book::Base.load
|
224
224
|
chap = Book::Chapter.new(book, 1, '-', nil)
|
225
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
225
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
226
226
|
assert_equal nil, index['sec01'].number
|
227
227
|
assert_equal nil, index['sec02'].number
|
228
228
|
assert_equal [1], index['sec1'].number
|
@@ -242,7 +242,7 @@ class IndexTest < Test::Unit::TestCase
|
|
242
242
|
EOB
|
243
243
|
book = Book::Base.load
|
244
244
|
chap = Book::Chapter.new(book, 1, '-', nil)
|
245
|
-
index = Book::HeadlineIndex.parse(src, chap)
|
245
|
+
index = Book::HeadlineIndex.parse(src.lines.to_a, chap)
|
246
246
|
assert_equal [1], index['A'].number
|
247
247
|
assert_equal [1, 1], index['A2'].number
|
248
248
|
assert_equal nil, index['B'].number
|
data/test/test_latexbuilder.rb
CHANGED
@@ -14,10 +14,10 @@ class LATEXBuidlerTest < Test::Unit::TestCase
|
|
14
14
|
'secnolevel' => 2, # for IDGXMLBuilder, EPUBBuilder
|
15
15
|
'toclevel' => 2,
|
16
16
|
'stylesheet' => nil, # for EPUBBuilder
|
17
|
-
'image_scale2width' => false,
|
18
17
|
'texcommand' => 'uplatex',
|
19
|
-
'review_version' => '
|
18
|
+
'review_version' => '4'
|
20
19
|
)
|
20
|
+
@config['pdfmaker']['image_scale2width'] = nil
|
21
21
|
@book = Book::Base.new
|
22
22
|
@book.config = @config
|
23
23
|
@compiler = ReVIEW::Compiler.new(@builder)
|
@@ -247,8 +247,10 @@ EOS
|
|
247
247
|
|
248
248
|
def test_inline_hd_chap
|
249
249
|
def @chapter.headline_index
|
250
|
-
|
251
|
-
Book::HeadlineIndex.new(
|
250
|
+
item = Book::Index::Item.new('chap1|test', [1, 1], 'te_st')
|
251
|
+
idx = Book::HeadlineIndex.new(self)
|
252
|
+
idx.add_item(item)
|
253
|
+
idx
|
252
254
|
end
|
253
255
|
|
254
256
|
@config['secnolevel'] = 3
|
@@ -282,9 +284,9 @@ EOS
|
|
282
284
|
end
|
283
285
|
|
284
286
|
def test_inline_idx_yomi
|
287
|
+
require 'nkf'
|
285
288
|
begin
|
286
289
|
require 'MeCab'
|
287
|
-
require 'nkf'
|
288
290
|
rescue LoadError
|
289
291
|
$stderr.puts 'skip test_inline_idx_yomi (cannot find MeCab)'
|
290
292
|
return true
|
@@ -386,6 +388,21 @@ EOS
|
|
386
388
|
assert_equal expected, actual
|
387
389
|
end
|
388
390
|
|
391
|
+
def test_dt_inline
|
392
|
+
fn = Book::FootnoteIndex.parse(['//footnote[bar][bar]'])
|
393
|
+
@chapter.instance_eval { @footnote_index = fn }
|
394
|
+
actual = compile_block(" : foo@<fn>{bar}[]<>&@<m>$\\alpha[]$\n")
|
395
|
+
|
396
|
+
expected = <<-EOS
|
397
|
+
|
398
|
+
\\begin{description}
|
399
|
+
\\item[foo\\protect\\footnotemark{}\\lbrack{}\\rbrack{}\\textless{}\\textgreater{}\\&$\\alpha\\lbrack{}\\rbrack{}$] \\mbox{} \\\\
|
400
|
+
|
401
|
+
\\end{description}
|
402
|
+
EOS
|
403
|
+
assert_equal expected, actual
|
404
|
+
end
|
405
|
+
|
389
406
|
def test_cmd
|
390
407
|
actual = compile_block("//cmd{\nfoo\nbar\n\nbuz\n//}\n")
|
391
408
|
expected = <<-EOS
|
@@ -857,6 +874,20 @@ EOS
|
|
857
874
|
\\end{reviewimage}
|
858
875
|
EOS
|
859
876
|
assert_equal expected, actual
|
877
|
+
|
878
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
879
|
+
actual = compile_block("//image[sampleimg][sample photo]{\n//}\n")
|
880
|
+
expected = <<-EOS
|
881
|
+
\\begin{reviewimage}%%sampleimg
|
882
|
+
\\reviewincludegraphics[ ]{./images/chap1-sampleimg.png}
|
883
|
+
\\reviewimagecaption{sample photo}
|
884
|
+
\\label{image:chap1:sampleimg}
|
885
|
+
\\end{reviewimage}
|
886
|
+
EOS
|
887
|
+
assert_equal expected, actual
|
888
|
+
|
889
|
+
actual = compile_block("//image[sampleimg][sample photo][]{\n//}\n")
|
890
|
+
assert_equal expected, actual
|
860
891
|
end
|
861
892
|
|
862
893
|
def test_image_with_metric
|
@@ -875,6 +906,10 @@ EOS
|
|
875
906
|
\\end{reviewimage}
|
876
907
|
EOS
|
877
908
|
assert_equal expected, actual
|
909
|
+
|
910
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
911
|
+
actual = compile_block("//image[sampleimg][sample photo][scale=1.2]{\n//}\n")
|
912
|
+
assert_equal expected, actual
|
878
913
|
end
|
879
914
|
|
880
915
|
def test_image_with_metric_width
|
@@ -884,7 +919,7 @@ EOS
|
|
884
919
|
item
|
885
920
|
end
|
886
921
|
|
887
|
-
@config['image_scale2width'] = true
|
922
|
+
@config['pdfmaker']['image_scale2width'] = true
|
888
923
|
actual = compile_block("//image[sampleimg][sample photo][scale=1.2]{\n//}\n")
|
889
924
|
expected = <<-EOS
|
890
925
|
\\begin{reviewimage}%%sampleimg
|
@@ -894,6 +929,10 @@ EOS
|
|
894
929
|
\\end{reviewimage}
|
895
930
|
EOS
|
896
931
|
assert_equal expected, actual
|
932
|
+
|
933
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
934
|
+
actual = compile_block("//image[sampleimg][sample photo][scale=1.2]{\n//}\n")
|
935
|
+
assert_equal expected, actual
|
897
936
|
end
|
898
937
|
|
899
938
|
def test_image_with_metric2
|
@@ -912,6 +951,10 @@ EOS
|
|
912
951
|
\\end{reviewimage}
|
913
952
|
EOS
|
914
953
|
assert_equal expected, actual
|
954
|
+
|
955
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
956
|
+
actual = compile_block("//image[sampleimg][sample photo][scale=1.2,html::class=sample,latex::ignore=params]{\n//}\n")
|
957
|
+
assert_equal expected, actual
|
915
958
|
end
|
916
959
|
|
917
960
|
def test_image_with_metric2_width
|
@@ -921,7 +964,7 @@ EOS
|
|
921
964
|
item
|
922
965
|
end
|
923
966
|
|
924
|
-
@config['image_scale2width'] = true
|
967
|
+
@config['pdfmaker']['image_scale2width'] = true
|
925
968
|
actual = compile_block("//image[sampleimg][sample photo][scale=1.2,html::class=sample,latex::ignore=params]{\n//}\n")
|
926
969
|
expected = <<-EOS
|
927
970
|
\\begin{reviewimage}%%sampleimg
|
@@ -931,6 +974,10 @@ EOS
|
|
931
974
|
\\end{reviewimage}
|
932
975
|
EOS
|
933
976
|
assert_equal expected, actual
|
977
|
+
|
978
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
979
|
+
actual = compile_block("//image[sampleimg][sample photo][scale=1.2,html::class=sample,latex::ignore=params]{\n//}\n")
|
980
|
+
assert_equal expected, actual
|
934
981
|
end
|
935
982
|
|
936
983
|
def test_indepimage
|
@@ -948,6 +995,19 @@ EOS
|
|
948
995
|
\\end{reviewimage}
|
949
996
|
EOS
|
950
997
|
assert_equal expected, actual
|
998
|
+
|
999
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1000
|
+
actual = compile_block("//indepimage[sampleimg][sample photo]\n")
|
1001
|
+
expected = <<-EOS
|
1002
|
+
\\begin{reviewimage}%%sampleimg
|
1003
|
+
\\reviewincludegraphics[ ]{./images/chap1-sampleimg.png}
|
1004
|
+
\\reviewindepimagecaption{図: sample photo}
|
1005
|
+
\\end{reviewimage}
|
1006
|
+
EOS
|
1007
|
+
assert_equal expected, actual
|
1008
|
+
|
1009
|
+
actual = compile_block("//indepimage[sampleimg][sample photo][]\n")
|
1010
|
+
assert_equal expected, actual
|
951
1011
|
end
|
952
1012
|
|
953
1013
|
def test_indepimage_without_caption
|
@@ -982,6 +1042,10 @@ EOS
|
|
982
1042
|
\\end{reviewimage}
|
983
1043
|
EOS
|
984
1044
|
assert_equal expected, actual
|
1045
|
+
|
1046
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1047
|
+
actual = compile_block("//indepimage[sampleimg][sample photo][scale=1.2]\n")
|
1048
|
+
assert_equal expected, actual
|
985
1049
|
end
|
986
1050
|
|
987
1051
|
def test_indepimage_with_metric_width
|
@@ -991,7 +1055,7 @@ EOS
|
|
991
1055
|
item
|
992
1056
|
end
|
993
1057
|
|
994
|
-
@config['image_scale2width'] = true
|
1058
|
+
@config['pdfmaker']['image_scale2width'] = true
|
995
1059
|
actual = compile_block("//indepimage[sampleimg][sample photo][scale=1.2]\n")
|
996
1060
|
expected = <<-EOS
|
997
1061
|
\\begin{reviewimage}%%sampleimg
|
@@ -1000,6 +1064,10 @@ EOS
|
|
1000
1064
|
\\end{reviewimage}
|
1001
1065
|
EOS
|
1002
1066
|
assert_equal expected, actual
|
1067
|
+
|
1068
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1069
|
+
actual = compile_block("//indepimage[sampleimg][sample photo][scale=1.2]\n")
|
1070
|
+
assert_equal expected, actual
|
1003
1071
|
end
|
1004
1072
|
|
1005
1073
|
def test_indepimage_with_metric2
|
@@ -1017,6 +1085,10 @@ EOS
|
|
1017
1085
|
\\end{reviewimage}
|
1018
1086
|
EOS
|
1019
1087
|
assert_equal expected, actual
|
1088
|
+
|
1089
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1090
|
+
actual = compile_block(%Q(//indepimage[sampleimg][sample photo][scale=1.2, html::class="sample",latex::ignore=params]\n))
|
1091
|
+
assert_equal expected, actual
|
1020
1092
|
end
|
1021
1093
|
|
1022
1094
|
def test_indepimage_without_caption_but_with_metric
|
@@ -1034,6 +1106,10 @@ EOS
|
|
1034
1106
|
\\end{reviewimage}
|
1035
1107
|
EOS
|
1036
1108
|
assert_equal expected, actual
|
1109
|
+
|
1110
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1111
|
+
actual = compile_block("//indepimage[sampleimg][][scale=1.2]\n")
|
1112
|
+
assert_equal expected, actual
|
1037
1113
|
end
|
1038
1114
|
|
1039
1115
|
def test_table
|
@@ -1190,6 +1266,93 @@ EOS
|
|
1190
1266
|
\\reviewincludegraphics[width=\\maxwidth]{./images/chap1-sampleimg.png}
|
1191
1267
|
\\end{reviewimage}
|
1192
1268
|
\\end{table}
|
1269
|
+
EOS
|
1270
|
+
assert_equal expected, actual
|
1271
|
+
|
1272
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1273
|
+
actual = compile_block("//imgtable[sampleimg][test for imgtable]{\n//}\n")
|
1274
|
+
|
1275
|
+
expected = <<-EOS
|
1276
|
+
\\begin{table}[h]%%sampleimg
|
1277
|
+
\\reviewimgtablecaption{test for imgtable}
|
1278
|
+
\\label{table:chap1:sampleimg}
|
1279
|
+
\\begin{reviewimage}%%sampleimg
|
1280
|
+
\\reviewincludegraphics[ ]{./images/chap1-sampleimg.png}
|
1281
|
+
\\end{reviewimage}
|
1282
|
+
\\end{table}
|
1283
|
+
EOS
|
1284
|
+
assert_equal expected, actual
|
1285
|
+
|
1286
|
+
actual = compile_block("//imgtable[sampleimg][test for imgtable][]{\n//}\n")
|
1287
|
+
assert_equal expected, actual
|
1288
|
+
end
|
1289
|
+
|
1290
|
+
def test_imgtable_with_metrics
|
1291
|
+
def @chapter.image(_id)
|
1292
|
+
item = Book::Index::Item.new('sampleimg', 1, 'sample img')
|
1293
|
+
item.instance_eval { @path = './images/chap1-sampleimg.png' }
|
1294
|
+
item
|
1295
|
+
end
|
1296
|
+
|
1297
|
+
actual = compile_block("//imgtable[sampleimg][test for imgtable][scale=1.2]{\n//}\n")
|
1298
|
+
expected = <<-EOS
|
1299
|
+
\\begin{table}[h]%%sampleimg
|
1300
|
+
\\reviewimgtablecaption{test for imgtable}
|
1301
|
+
\\label{table:chap1:sampleimg}
|
1302
|
+
\\begin{reviewimage}%%sampleimg
|
1303
|
+
\\reviewincludegraphics[scale=1.2]{./images/chap1-sampleimg.png}
|
1304
|
+
\\end{reviewimage}
|
1305
|
+
\\end{table}
|
1306
|
+
EOS
|
1307
|
+
assert_equal expected, actual
|
1308
|
+
|
1309
|
+
@book.config['pdfmaker']['use_original_image_size'] = true
|
1310
|
+
actual = compile_block("//imgtable[sampleimg][test for imgtable][scale=1.2]{\n//}\n")
|
1311
|
+
assert_equal expected, actual
|
1312
|
+
end
|
1313
|
+
|
1314
|
+
def test_table_row_separator
|
1315
|
+
src = "//table{\n1\t2\t\t3 4| 5\n------------\na b\tc d |e\n//}\n"
|
1316
|
+
expected = <<-EOS
|
1317
|
+
\\begin{reviewtable}{|l|l|l|}
|
1318
|
+
\\hline
|
1319
|
+
\\reviewth{1} & \\reviewth{2} & \\reviewth{3 4\\textbar{} 5} \\\\ \\hline
|
1320
|
+
a b & c d \\textbar{}e & \\\\ \\hline
|
1321
|
+
\\end{reviewtable}
|
1322
|
+
EOS
|
1323
|
+
actual = compile_block(src)
|
1324
|
+
assert_equal expected, actual
|
1325
|
+
|
1326
|
+
@config['table_row_separator'] = 'singletab'
|
1327
|
+
actual = compile_block(src)
|
1328
|
+
expected = <<-EOS
|
1329
|
+
\\begin{reviewtable}{|l|l|l|l|}
|
1330
|
+
\\hline
|
1331
|
+
\\reviewth{1} & \\reviewth{2} & \\reviewth{} & \\reviewth{3 4\\textbar{} 5} \\\\ \\hline
|
1332
|
+
a b & c d \\textbar{}e & & \\\\ \\hline
|
1333
|
+
\\end{reviewtable}
|
1334
|
+
EOS
|
1335
|
+
assert_equal expected, actual
|
1336
|
+
|
1337
|
+
@config['table_row_separator'] = 'spaces'
|
1338
|
+
actual = compile_block(src)
|
1339
|
+
expected = <<-EOS
|
1340
|
+
\\begin{reviewtable}{|l|l|l|l|l|}
|
1341
|
+
\\hline
|
1342
|
+
\\reviewth{1} & \\reviewth{2} & \\reviewth{3} & \\reviewth{4\\textbar{}} & \\reviewth{5} \\\\ \\hline
|
1343
|
+
a & b & c & d & \\textbar{}e \\\\ \\hline
|
1344
|
+
\\end{reviewtable}
|
1345
|
+
EOS
|
1346
|
+
assert_equal expected, actual
|
1347
|
+
|
1348
|
+
@config['table_row_separator'] = 'verticalbar'
|
1349
|
+
actual = compile_block(src)
|
1350
|
+
expected = <<-EOS
|
1351
|
+
\\begin{reviewtable}{|l|l|}
|
1352
|
+
\\hline
|
1353
|
+
\\reviewth{1 2 3 4} & \\reviewth{5} \\\\ \\hline
|
1354
|
+
a b c d & e \\\\ \\hline
|
1355
|
+
\\end{reviewtable}
|
1193
1356
|
EOS
|
1194
1357
|
assert_equal expected, actual
|
1195
1358
|
end
|
@@ -14,10 +14,10 @@ class LATEXBuidlerV2Test < Test::Unit::TestCase
|
|
14
14
|
'secnolevel' => 2, # for IDGXMLBuilder, EPUBBuilder
|
15
15
|
'toclevel' => 2,
|
16
16
|
'stylesheet' => nil, # for EPUBBuilder
|
17
|
-
'image_scale2width' => false,
|
18
17
|
'texcommand' => 'uplatex',
|
19
18
|
'review_version' => '2.0'
|
20
19
|
)
|
20
|
+
@config['pdfmaker']['image_scale2width'] = nil
|
21
21
|
@book = Book::Base.new
|
22
22
|
@book.config = @config
|
23
23
|
@compiler = ReVIEW::Compiler.new(@builder)
|
@@ -221,8 +221,10 @@ EOS
|
|
221
221
|
|
222
222
|
def test_inline_hd_chap
|
223
223
|
def @chapter.headline_index
|
224
|
-
|
225
|
-
Book::HeadlineIndex.new(
|
224
|
+
item = Book::Index::Item.new('chap1|test', [1, 1], 'te_st')
|
225
|
+
idx = Book::HeadlineIndex.new(self)
|
226
|
+
idx.add_item(item)
|
227
|
+
idx
|
226
228
|
end
|
227
229
|
|
228
230
|
@config['secnolevel'] = 3
|
@@ -251,9 +253,9 @@ EOS
|
|
251
253
|
end
|
252
254
|
|
253
255
|
def test_inline_idx_yomi
|
256
|
+
require 'nkf'
|
254
257
|
begin
|
255
258
|
require 'MeCab'
|
256
|
-
require 'nkf'
|
257
259
|
rescue LoadError
|
258
260
|
$stderr.puts 'skip test_inline_idx_yomi (cannot find MeCab)'
|
259
261
|
return true
|
@@ -760,7 +762,7 @@ EOS
|
|
760
762
|
item
|
761
763
|
end
|
762
764
|
|
763
|
-
@config['image_scale2width'] = true
|
765
|
+
@config['pdfmaker']['image_scale2width'] = true
|
764
766
|
actual = compile_block("//image[sampleimg][sample photo][scale=1.2]{\n//}\n")
|
765
767
|
expected = <<-EOS
|
766
768
|
\\begin{reviewimage}%%sampleimg
|
@@ -797,7 +799,7 @@ EOS
|
|
797
799
|
item
|
798
800
|
end
|
799
801
|
|
800
|
-
@config['image_scale2width'] = true
|
802
|
+
@config['pdfmaker']['image_scale2width'] = true
|
801
803
|
actual = compile_block("//image[sampleimg][sample photo][scale=1.2,html::class=sample,latex::ignore=params]{\n//}\n")
|
802
804
|
expected = <<-EOS
|
803
805
|
\\begin{reviewimage}%%sampleimg
|
@@ -867,7 +869,7 @@ EOS
|
|
867
869
|
item
|
868
870
|
end
|
869
871
|
|
870
|
-
@config['image_scale2width'] = true
|
872
|
+
@config['pdfmaker']['image_scale2width'] = true
|
871
873
|
actual = compile_block("//indepimage[sampleimg][sample photo][scale=1.2]\n")
|
872
874
|
expected = <<-EOS
|
873
875
|
\\begin{reviewimage}%%sampleimg
|