review 1.2.0 → 1.3.0

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 (78) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +36 -0
  3. data/.rubocop.yml +1 -0
  4. data/ChangeLog +102 -0
  5. data/README.rdoc +2 -2
  6. data/bin/review-check +18 -16
  7. data/bin/review-compile +49 -42
  8. data/bin/review-epubmaker +23 -993
  9. data/bin/review-epubmaker-legacy +1024 -0
  10. data/bin/review-index +17 -15
  11. data/bin/review-init +39 -9
  12. data/bin/review-pdfmaker +124 -89
  13. data/bin/review-preproc +16 -14
  14. data/bin/review-vol +17 -15
  15. data/debian/docs +1 -1
  16. data/doc/catalog.rdoc +34 -0
  17. data/doc/format.rdoc +16 -2
  18. data/doc/libepubmaker/{config.yaml → config.yml} +63 -19
  19. data/doc/quickstart.rdoc +1 -1
  20. data/doc/{sample.yaml → sample.yml} +0 -0
  21. data/lib/epubmaker.rb +1 -1
  22. data/lib/epubmaker/content.rb +9 -1
  23. data/lib/epubmaker/epubv2.rb +59 -7
  24. data/lib/epubmaker/epubv3.rb +14 -9
  25. data/lib/epubmaker/producer.rb +68 -27
  26. data/lib/epubmaker/resource.rb +3 -1
  27. data/lib/lineinput.rb +2 -2
  28. data/lib/review/book/base.rb +125 -24
  29. data/lib/review/book/chapter.rb +42 -0
  30. data/lib/review/book/compilable.rb +23 -4
  31. data/lib/review/book/image_finder.rb +64 -0
  32. data/lib/review/book/index.rb +64 -50
  33. data/lib/review/book/page_metric.rb +1 -1
  34. data/lib/review/builder.rb +19 -12
  35. data/lib/review/catalog.rb +47 -0
  36. data/lib/review/compiler.rb +3 -2
  37. data/lib/review/configure.rb +5 -3
  38. data/lib/review/epubmaker.rb +130 -46
  39. data/lib/review/ewbbuilder.rb +27 -31
  40. data/lib/review/extentions/string.rb +4 -4
  41. data/lib/review/htmlbuilder.rb +140 -79
  42. data/lib/review/htmllayout.rb +26 -4
  43. data/lib/review/htmlutils.rb +20 -1
  44. data/lib/review/i18n.rb +5 -2
  45. data/lib/review/{i18n.yaml → i18n.yml} +4 -2
  46. data/lib/review/idgxmlbuilder.rb +65 -39
  47. data/lib/review/latexbuilder.rb +72 -24
  48. data/lib/review/latexutils.rb +3 -1
  49. data/lib/review/makerhelper.rb +8 -2
  50. data/lib/review/preprocessor.rb +20 -20
  51. data/lib/review/review.tex.erb +4 -0
  52. data/lib/review/sec_counter.rb +9 -11
  53. data/lib/review/tocparser.rb +2 -2
  54. data/lib/review/tocprinter.rb +12 -12
  55. data/lib/review/topbuilder.rb +15 -15
  56. data/lib/review/version.rb +1 -1
  57. data/lib/uuid.rb +7 -7
  58. data/review.gemspec +2 -2
  59. data/rubocop-todo.yml +443 -0
  60. data/test/sample-book/src/config.yml +2 -2
  61. data/test/sample-book/src/{main.css → style.css} +0 -0
  62. data/test/test_book.rb +46 -48
  63. data/test/test_book_chapter.rb +25 -13
  64. data/test/test_builder.rb +3 -3
  65. data/test/test_catalog.rb +107 -0
  66. data/test/test_epubmaker.rb +6 -6
  67. data/test/test_htmlbuilder.rb +160 -39
  68. data/test/test_htmlutils.rb +22 -0
  69. data/test/test_i18n.rb +2 -2
  70. data/test/test_idgxmlbuilder.rb +33 -47
  71. data/test/test_image_finder.rb +82 -0
  72. data/test/test_inaobuilder.rb +1 -1
  73. data/test/test_latexbuilder.rb +35 -39
  74. data/test/test_lineinput.rb +2 -2
  75. data/test/test_markdownbuilder.rb +2 -2
  76. data/test/test_topbuilder.rb +39 -23
  77. metadata +23 -14
  78. data/bin/review-epubmaker-ng +0 -23
@@ -183,10 +183,10 @@ class LineInputTest < Test::Unit::TestCase
183
183
  data = ''
184
184
  li.until_terminator(%r<\A//\}>) {|l| data << l }
185
185
  assert_equal "jkl\nmno", data
186
- assert_equal 7, li.lineno
186
+ assert_equal 8, li.lineno
187
187
  end
188
188
 
189
- def test_until_terminator
189
+ def test_until_terminator2
190
190
  io = StringIO.new("abc\ndef\n//}\nghi\n//}")
191
191
  li = LineInput.new(io)
192
192
 
@@ -11,13 +11,13 @@ class MARKDOWNBuilderTest < Test::Unit::TestCase
11
11
 
12
12
  def setup
13
13
  @builder = MARKDOWNBuilder.new()
14
- @param = {
14
+ @config = {
15
15
  "secnolevel" => 2, # for IDGXMLBuilder, HTMLBuilder
16
16
  "inencoding" => "UTF-8",
17
17
  "outencoding" => "UTF-8",
18
18
  "stylesheet" => nil, # for HTMLBuilder
19
19
  }
20
- ReVIEW.book.param = @param
20
+ ReVIEW.book.config = @config
21
21
  @compiler = ReVIEW::Compiler.new(@builder)
22
22
  @chapter = Book::Chapter.new(Book::Base.new(nil), 1, '-', nil, StringIO.new)
23
23
  location = Location.new(nil, nil)
@@ -11,12 +11,12 @@ class TOPBuidlerTest < Test::Unit::TestCase
11
11
 
12
12
  def setup
13
13
  @builder = TOPBuilder.new()
14
- @param = {
14
+ @config = {
15
15
  "secnolevel" => 2,
16
16
  "inencoding" => "UTF-8",
17
17
  "outencoding" => "UTF-8"
18
18
  }
19
- ReVIEW.book.param = @param
19
+ ReVIEW.book.config = @config
20
20
  @compiler = ReVIEW::Compiler.new(@builder)
21
21
  @chapter = Book::Chapter.new(nil, 1, '-', nil, StringIO.new)
22
22
  location = Location.new(nil, nil)
@@ -36,7 +36,7 @@ class TOPBuidlerTest < Test::Unit::TestCase
36
36
  end
37
37
 
38
38
  def test_headline_level1_without_secno
39
- @param["secnolevel"] = 0
39
+ @config["secnolevel"] = 0
40
40
  @builder.headline(1,"test","this is test.")
41
41
  assert_equal %Q|■H1■this is test.\n|, @builder.raw_result
42
42
  end
@@ -52,7 +52,7 @@ class TOPBuidlerTest < Test::Unit::TestCase
52
52
  end
53
53
 
54
54
  def test_headline_level3_with_secno
55
- @param["secnolevel"] = 3
55
+ @config["secnolevel"] = 3
56
56
  @builder.headline(3,"test","this is test.")
57
57
  assert_equal %Q|■H3■1.0.1 this is test.\n|, @builder.raw_result
58
58
  end
@@ -185,7 +185,7 @@ class TOPBuidlerTest < Test::Unit::TestCase
185
185
  def test_image
186
186
  def @chapter.image(id)
187
187
  item = Book::ImageIndex::Item.new("sampleimg",1)
188
- item.instance_eval{@pathes=["./images/chap1-sampleimg.png"]}
188
+ item.instance_eval{@path="./images/chap1-sampleimg.png"}
189
189
  item
190
190
  end
191
191
 
@@ -196,7 +196,7 @@ class TOPBuidlerTest < Test::Unit::TestCase
196
196
  def test_image_with_metric
197
197
  def @chapter.image(id)
198
198
  item = Book::ImageIndex::Item.new("sampleimg",1)
199
- item.instance_eval{@pathes=["./images/chap1-sampleimg.png"]}
199
+ item.instance_eval{@path="./images/chap1-sampleimg.png"}
200
200
  item
201
201
  end
202
202
 
@@ -235,45 +235,61 @@ class TOPBuidlerTest < Test::Unit::TestCase
235
235
 
236
236
  def test_block_raw0
237
237
  @builder.raw("<>!\"\\n& ")
238
- expect =<<-EOS
239
- <>!"
240
- &
241
- EOS
238
+ expect = %Q(<>!\"\n& )
242
239
  assert_equal expect.chomp, @builder.raw_result
243
240
  end
244
241
 
245
242
  def test_block_raw1
246
243
  @builder.raw("|top|<>!\"\\n& ")
247
- expect =<<-EOS
248
- <>!"
249
- &
250
- EOS
244
+ expect = %Q(<>!\"\n& )
251
245
  assert_equal expect.chomp, @builder.raw_result
252
246
  end
253
247
 
254
248
  def test_block_raw2
255
249
  @builder.raw("|top, latex|<>!\"\\n& ")
256
- expect =<<-EOS
257
- <>!\"
258
- &
259
- EOS
250
+ expect = %Q(<>!\"\n& )
260
251
  assert_equal expect.chomp, @builder.raw_result
261
252
  end
262
253
 
263
254
  def test_block_raw3
264
255
  @builder.raw("|latex, idgxml|<>!\"\\n& ")
265
- expect =<<-EOS
266
- EOS
256
+ expect = ''
267
257
  assert_equal expect.chomp, @builder.raw_result
268
258
  end
269
259
 
270
260
  def test_block_raw4
271
261
  @builder.raw("|top <>!\"\\n& ")
262
+ expect = %Q(|top <>!\"\n& )
263
+ assert_equal expect.chomp, @builder.raw_result
264
+ end
265
+
266
+ def column_helper(review)
267
+ chap_singleton = class << @chapter; self; end
268
+ chap_singleton.send(:define_method, :content) { review }
269
+ @compiler.compile(@chapter)
270
+ end
271
+
272
+ def test_column_ref
273
+ review =<<-EOS
274
+ ===[column]{foo} test
275
+
276
+ inside column
277
+
278
+ === next level
279
+
280
+ this is @<column>{foo}.
281
+ EOS
272
282
  expect =<<-EOS
273
- |top <>!\"
274
- &
283
+ ◆→開始:コラム←◆
284
+ ■test
285
+ inside column
286
+ ◆→終了:コラム←◆
287
+
288
+ ■H3■next level
289
+ this is test.
275
290
  EOS
276
- assert_equal expect.chomp, @builder.raw_result
291
+
292
+ assert_equal expect, column_helper(review)
277
293
  end
278
294
 
279
295
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: review
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - kmuto
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-04-02 00:00:00.000000000 Z
12
+ date: 2014-06-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: 0.8.7
20
+ version: '0'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: 0.8.7
27
+ version: '0'
28
28
  description: Re:VIEW is a digital publishing system for books and ebooks. It supports
29
29
  InDesign, EPUB and LaTeX.
30
30
  email: kmuto@debian.org
@@ -33,7 +33,7 @@ executables:
33
33
  - review-checkdep
34
34
  - review-compile
35
35
  - review-epubmaker
36
- - review-epubmaker-ng
36
+ - review-epubmaker-legacy
37
37
  - review-index
38
38
  - review-init
39
39
  - review-pdfmaker
@@ -45,6 +45,8 @@ extra_rdoc_files:
45
45
  - ChangeLog
46
46
  - README.rdoc
47
47
  files:
48
+ - ".gitignore"
49
+ - ".rubocop.yml"
48
50
  - ".travis.yml"
49
51
  - COPYING
50
52
  - ChangeLog
@@ -55,7 +57,7 @@ files:
55
57
  - bin/review-checkdep
56
58
  - bin/review-compile
57
59
  - bin/review-epubmaker
58
- - bin/review-epubmaker-ng
60
+ - bin/review-epubmaker-legacy
59
61
  - bin/review-index
60
62
  - bin/review-init
61
63
  - bin/review-pdfmaker
@@ -76,14 +78,15 @@ files:
76
78
  - debian/review.links
77
79
  - debian/rules
78
80
  - debian/source/format
81
+ - doc/catalog.rdoc
79
82
  - doc/format.rdoc
80
83
  - doc/format_idg.rdoc
81
- - doc/libepubmaker/config.yaml
84
+ - doc/libepubmaker/config.yml
82
85
  - doc/quickstart.rdoc
83
86
  - doc/ruby-uuid/README
84
87
  - doc/ruby-uuid/README.ja
85
88
  - doc/sample.css
86
- - doc/sample.yaml
89
+ - doc/sample.yml
87
90
  - lib/epubmaker.rb
88
91
  - lib/epubmaker/content.rb
89
92
  - lib/epubmaker/epubv2.rb
@@ -96,12 +99,14 @@ files:
96
99
  - lib/review/book/base.rb
97
100
  - lib/review/book/chapter.rb
98
101
  - lib/review/book/compilable.rb
102
+ - lib/review/book/image_finder.rb
99
103
  - lib/review/book/index.rb
100
104
  - lib/review/book/page_metric.rb
101
105
  - lib/review/book/parameters.rb
102
106
  - lib/review/book/part.rb
103
107
  - lib/review/book/volume.rb
104
108
  - lib/review/builder.rb
109
+ - lib/review/catalog.rb
105
110
  - lib/review/compiler.rb
106
111
  - lib/review/configure.rb
107
112
  - lib/review/epubbuilder.rb
@@ -115,7 +120,7 @@ files:
115
120
  - lib/review/htmllayout.rb
116
121
  - lib/review/htmlutils.rb
117
122
  - lib/review/i18n.rb
118
- - lib/review/i18n.yaml
123
+ - lib/review/i18n.yml
119
124
  - lib/review/idgxmlbuilder.rb
120
125
  - lib/review/inaobuilder.rb
121
126
  - lib/review/latexbuilder.rb
@@ -135,6 +140,7 @@ files:
135
140
  - lib/review/version.rb
136
141
  - lib/uuid.rb
137
142
  - review.gemspec
143
+ - rubocop-todo.yml
138
144
  - test/CHAPS
139
145
  - test/bib.re
140
146
  - test/book_test_helper.rb
@@ -148,10 +154,10 @@ files:
148
154
  - test/sample-book/src/config.yml
149
155
  - test/sample-book/src/images/ch01-imgsample.jpg
150
156
  - test/sample-book/src/images/cover.jpg
151
- - test/sample-book/src/main.css
152
157
  - test/sample-book/src/preface.re
153
158
  - test/sample-book/src/sty/jumoline.sty
154
159
  - test/sample-book/src/sty/reviewmacro.sty
160
+ - test/sample-book/src/style.css
155
161
  - test/sample-book/src/vendor/jumoline/README
156
162
  - test/sample-book/src/vendor/jumoline/jumoline.dtx
157
163
  - test/sample-book/src/vendor/jumoline/jumoline.ins
@@ -161,6 +167,7 @@ files:
161
167
  - test/test_book_parameter.rb
162
168
  - test/test_book_part.rb
163
169
  - test/test_builder.rb
170
+ - test/test_catalog.rb
164
171
  - test/test_compiler.rb
165
172
  - test/test_epubmaker.rb
166
173
  - test/test_epubmaker_cmd.rb
@@ -169,6 +176,7 @@ files:
169
176
  - test/test_htmlutils.rb
170
177
  - test/test_i18n.rb
171
178
  - test/test_idgxmlbuilder.rb
179
+ - test/test_image_finder.rb
172
180
  - test/test_inaobuilder.rb
173
181
  - test/test_index.rb
174
182
  - test/test_latexbuilder.rb
@@ -218,10 +226,10 @@ test_files:
218
226
  - test/sample-book/src/config.yml
219
227
  - test/sample-book/src/images/ch01-imgsample.jpg
220
228
  - test/sample-book/src/images/cover.jpg
221
- - test/sample-book/src/main.css
222
229
  - test/sample-book/src/preface.re
223
230
  - test/sample-book/src/sty/jumoline.sty
224
231
  - test/sample-book/src/sty/reviewmacro.sty
232
+ - test/sample-book/src/style.css
225
233
  - test/sample-book/src/vendor/jumoline/README
226
234
  - test/sample-book/src/vendor/jumoline/jumoline.dtx
227
235
  - test/sample-book/src/vendor/jumoline/jumoline.ins
@@ -231,6 +239,7 @@ test_files:
231
239
  - test/test_book_parameter.rb
232
240
  - test/test_book_part.rb
233
241
  - test/test_builder.rb
242
+ - test/test_catalog.rb
234
243
  - test/test_compiler.rb
235
244
  - test/test_epubmaker.rb
236
245
  - test/test_epubmaker_cmd.rb
@@ -239,6 +248,7 @@ test_files:
239
248
  - test/test_htmlutils.rb
240
249
  - test/test_i18n.rb
241
250
  - test/test_idgxmlbuilder.rb
251
+ - test/test_image_finder.rb
242
252
  - test/test_inaobuilder.rb
243
253
  - test/test_index.rb
244
254
  - test/test_latexbuilder.rb
@@ -250,4 +260,3 @@ test_files:
250
260
  - test/test_textutils.rb
251
261
  - test/test_topbuilder.rb
252
262
  - test/test_uuid.rb
253
- has_rdoc:
@@ -1,23 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- #
4
- # Copyright (c) 2010-2013 Kenshi Muto and Masayoshi Takahashi
5
- #
6
- # This program is free software.
7
- # You can distribute or modify this program under the terms of
8
- # the GNU LGPL, Lesser General Public License version 2.1.
9
- # For details of the GNU LGPL, see the file "COPYING".
10
- #
11
- require 'pathname'
12
- bindir = Pathname.new(__FILE__).realpath.dirname
13
- $LOAD_PATH.unshift((bindir + '../lib').realpath)
14
- require 'review/epubmaker'
15
-
16
- rv = ReVIEW::EPUBMaker.new
17
- if ARGV.size < 1 || !File.exist?(ARGV[0])
18
- STDERR.puts "Usage: #{$0} YAML_filename [export_filename]"
19
- exit 0
20
- end
21
-
22
- bookname = (ARGV.size > 1) ? ARGV[1] : nil
23
- rv.produce(ARGV[0], bookname)