diff options
Diffstat (limited to 'lib/output.js')
-rw-r--r-- | lib/output.js | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/output.js b/lib/output.js index c22e8de..89233da 100644 --- a/lib/output.js +++ b/lib/output.js @@ -1,6 +1,9 @@ +var _ = require('lodash'); +var fs = require('fs'); var Ignore = require('ignore'); var Promise = require('./utils/promise'); +var pathUtil = require('./utils/path'); var generators = require('./generators'); var PluginsManager = require('./plugins'); @@ -24,9 +27,16 @@ function Output(book, type) { ]); } -// Write a file to the output folder -Output.prototype.writeFile = function(filename, buf) { +// Resolve a file in the output directory +Output.prototype.resolve = function(filename) { + return pathUtil.resolveInRoot.apply(null, [this.book.config.get('output')].concat(_.toArray(arguments))); +}; + +// Write a file/buffer to the output folder +Output.prototype.writeFile = function(filename, buf) { + filename = this.resolve(filename); + return Promise.nfcall(fs.writeFileSync, filename, buf); }; // Start the generation, for a parsed book |