diff options
author | Samy Pessé <samypesse@gmail.com> | 2014-04-06 21:46:11 -0700 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2014-04-06 21:46:11 -0700 |
commit | 9fe80b878e94cef08d89b3af3aa60907bae45f56 (patch) | |
tree | 606a9f712290515222f8f592be9f75045425d614 /lib/generate/ebook/index.js | |
parent | 4b64c8701144906a09f4f39447641139afdbc763 (diff) | |
download | gitbook-9fe80b878e94cef08d89b3af3aa60907bae45f56.zip gitbook-9fe80b878e94cef08d89b3af3aa60907bae45f56.tar.gz gitbook-9fe80b878e94cef08d89b3af3aa60907bae45f56.tar.bz2 |
Add option cover for ebook generation
Diffstat (limited to 'lib/generate/ebook/index.js')
-rw-r--r-- | lib/generate/ebook/index.js | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/lib/generate/ebook/index.js b/lib/generate/ebook/index.js index 8d81bfc..4a69ca6 100644 --- a/lib/generate/ebook/index.js +++ b/lib/generate/ebook/index.js @@ -4,7 +4,7 @@ var Q = require("q"); var _ = require("lodash"); var exec = require('child_process').exec; -var fs = require("../fs"); +var fs = require("fs"); var parse = require("../../parse"); var BaseGenerator = require("../page"); @@ -19,6 +19,10 @@ var Generator = function() { this.options = _.defaults(this.options, { extension: "epub" }); + + if (!this.options.cover && fs.existsSync(path.join(this.options.input, "cover.png"))) { + this.options.cover = path.join(this.options.input, "cover.png") + } }; util.inherits(Generator, BaseGenerator); @@ -29,10 +33,22 @@ Generator.prototype.finish = function() { .then(function() { var d = Q.defer(); + var _options = { + "--cover": that.options.cover + }; + var command = [ "ebook-convert", path.join(that.options.output, "index.html"), - path.join(that.options.output, "index."+that.options.extension) + path.join(that.options.output, "index."+that.options.extension), + _.chain(_options) + .map(function(value, key) { + if (value == null) return null; + return key+"="+value; + }) + .compact() + .value() + .join(" ") ].join(" "); exec(command, function (error, stdout, stderr) { |