author 1.1.3.alpha → 1.1.4.alpha
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/author/commands/builder.rb +8 -0
- data/lib/author/exporters/mobi.rb +29 -0
- data/lib/author/version.rb +1 -1
- data/test/commands/builder_test.rb +4 -0
- data/test/exporters/mobi_test.rb +37 -0
- metadata +4 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YTU2OWU2NjFkNmU1YWRlYmUyMDQ0NDFkYjUwOWY3NzBkZmYyZTdiYw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NjE3MTA2NjVjOGI5OTZmODI0YTA1NjUxZmYxNTYyZWU3Njc3MTMxMA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OTY2Zjc1NTQ4YmRmYmJjZjk1M2ZhMmQxZGVmNzIxYjkwZjRiNzRiNzhiNmI1
|
10
|
+
NGUxNzdkYjI3NzdiYmRhYzk4ODIxMjU4MzUzNmU2MGJlMWI5Mjg3MzQwNGU5
|
11
|
+
MjUyZGE0N2E4ZjdjODM3MTc5YzVjNzA4ZWIwM2Y4YjViZGFiOTY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MTEzZGMwNGRkZDMxMzI5ZGI1ZDZhZTAyNjY5YmRjMTYzYWQ4ZWIwZWQwNzZl
|
14
|
+
NTkzMmE4MzE1Y2Q0YmI2YTM2MDNkOTY4MDNiNDgxMjMzNWYzMzg2YzE2NTg2
|
15
|
+
MTFmZDY0ZWUzYTgwZTFiOWZhZDkyMWYwNDFkOWNhMzFhNTc0YTg=
|
@@ -18,6 +18,14 @@ module Author
|
|
18
18
|
Author::Exporters::PDF.export
|
19
19
|
end
|
20
20
|
|
21
|
+
desc "mobi", "Build .mobi format"
|
22
|
+
def mobi
|
23
|
+
say "Building the XHTML site"
|
24
|
+
Author::Exporters::XHTML.export
|
25
|
+
say "Building the .mobi file"
|
26
|
+
Author::Exporters::Mobi.export
|
27
|
+
end
|
28
|
+
|
21
29
|
end
|
22
30
|
end
|
23
31
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Author
|
2
|
+
module Exporters
|
3
|
+
class Mobi < Base
|
4
|
+
# 1. check that kindlegen is installed
|
5
|
+
# 2. check that xhtml file exists
|
6
|
+
# 4. run kindlegen command
|
7
|
+
|
8
|
+
def self.export
|
9
|
+
exporter = new
|
10
|
+
exporter.kindlegen_installed?
|
11
|
+
exporter.xhtml_exists?
|
12
|
+
exporter.export
|
13
|
+
end
|
14
|
+
|
15
|
+
def xhtml_exists?
|
16
|
+
raise "No book.xhtml file found" unless File.file?(output_path)
|
17
|
+
end
|
18
|
+
|
19
|
+
def kindlegen_installed?
|
20
|
+
raise "KindleGen is not installed. This is required to build .mobi files." unless `which kindlegen` && $?.success?
|
21
|
+
end
|
22
|
+
|
23
|
+
def export
|
24
|
+
system("kindlegen #{output_path}")
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
data/lib/author/version.rb
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
require_relative '../helper'
|
2
|
+
require 'author/exporters/base'
|
3
|
+
require 'author/exporters/mobi'
|
4
|
+
|
5
|
+
describe Author::Exporters::Mobi do
|
6
|
+
|
7
|
+
let(:exporter) { Author::Exporters::Mobi }
|
8
|
+
|
9
|
+
it "should respond to #export" do
|
10
|
+
expect(exporter).to_respond_to :export
|
11
|
+
end
|
12
|
+
|
13
|
+
it "should raise error if no book.xhtml file exists" do
|
14
|
+
expect { exporter.export }.to_raise RuntimeError
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should raise error if no book.css file exists" do
|
18
|
+
expect { exporter.export }.to_raise RuntimeError
|
19
|
+
end
|
20
|
+
|
21
|
+
context "an instance" do
|
22
|
+
let(:exporter) { Author::Exporters::Mobi.new }
|
23
|
+
|
24
|
+
it "should respond to #kindlegen_installed?" do
|
25
|
+
expect(exporter).to_respond_to :kindlegen_installed?
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should respond to #xhtml_exists?" do
|
29
|
+
expect(exporter).to_respond_to :xhtml_exists?
|
30
|
+
end
|
31
|
+
|
32
|
+
it "should respond to #export" do
|
33
|
+
expect(exporter).to_respond_to :export
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: author
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.4.alpha
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Terry Schmidt
|
@@ -145,6 +145,7 @@ files:
|
|
145
145
|
- lib/author/commands/generator.rb
|
146
146
|
- lib/author/commands/version.rb
|
147
147
|
- lib/author/exporters/base.rb
|
148
|
+
- lib/author/exporters/mobi.rb
|
148
149
|
- lib/author/exporters/pdf.rb
|
149
150
|
- lib/author/exporters/xhtml.rb
|
150
151
|
- lib/author/plugins/awesome_codeblock.rb
|
@@ -159,6 +160,7 @@ files:
|
|
159
160
|
- test/commands/cli_test.rb
|
160
161
|
- test/commands/generator_test.rb
|
161
162
|
- test/commands/version_test.rb
|
163
|
+
- test/exporters/mobi_test.rb
|
162
164
|
- test/exporters/pdf_test.rb
|
163
165
|
- test/exporters/xhtml_test.rb
|
164
166
|
- test/helper.rb
|
@@ -210,6 +212,7 @@ test_files:
|
|
210
212
|
- test/commands/cli_test.rb
|
211
213
|
- test/commands/generator_test.rb
|
212
214
|
- test/commands/version_test.rb
|
215
|
+
- test/exporters/mobi_test.rb
|
213
216
|
- test/exporters/pdf_test.rb
|
214
217
|
- test/exporters/xhtml_test.rb
|
215
218
|
- test/helper.rb
|