diff options
Diffstat (limited to 'lib/generators')
-rw-r--r-- | lib/generators/json.js | 26 | ||||
-rw-r--r-- | lib/generators/website.js | 24 |
2 files changed, 30 insertions, 20 deletions
diff --git a/lib/generators/json.js b/lib/generators/json.js index a1202ad..f1af395 100644 --- a/lib/generators/json.js +++ b/lib/generators/json.js @@ -17,20 +17,24 @@ Generator.prototype.transferFile = function(input) { }; Generator.prototype.finish = function() { }; // Convert an input file -Generator.prototype.writeParsedFile = function(page) { +Generator.prototype.convertFile = function(input) { var that = this; - var json = { - progress: page.progress, - sections: page.sections - }; - var output = links.changeExtension(page.path, ".json"); - output = path.join(that.options.output, output); + return that.book.parsePage(input) + .then(function(page) { + var json = { + progress: page.progress, + sections: page.sections + }; - return fs.writeFile( - output, - JSON.stringify(json, null, 4) - ); + var output = links.changeExtension(page.path, ".json"); + output = path.join(that.options.output, output); + + return fs.writeFile( + output, + JSON.stringify(json, null, 4) + ); + }); }; // Generate languages index diff --git a/lib/generators/website.js b/lib/generators/website.js index ba1d2ce..08950c8 100644 --- a/lib/generators/website.js +++ b/lib/generators/website.js @@ -123,19 +123,25 @@ Generator.prototype.finish = function() { }; // Convert an input file -Generator.prototype.writeParsedFile = function(page) { +Generator.prototype.convertFile = function(input) { var that = this; - var relativeOutput = this.book.contentLink(page.path); - var output = path.join(that.options.output, relativeOutput); + return that.book.parsePage(input, { + interpolateTemplate: function(page) { + return that.callHook("page:before", page); + }, + interpolateContent: function(page) { + return that.callHook("page", page); + } + }) + .then(function(page) { + var relativeOutput = that.book.contentLink(page.path); + var output = path.join(that.options.output, relativeOutput); - var basePath = path.relative(path.dirname(output), this.options.output) || "."; - if (process.platform === 'win32') basePath = basePath.replace(/\\/g, '/'); + var basePath = path.relative(path.dirname(output), that.options.output) || "."; + if (process.platform === 'win32') basePath = basePath.replace(/\\/g, '/'); - that.book.log.info.ln("write parsed file", page.path, "to", relativeOutput); - return that.normalizePage(page) - .then(function(_page) { - page = _page; + that.book.log.info.ln("write parsed file", page.path, "to", relativeOutput); return that._writeTemplate(that.templates["page"], { progress: page.progress, |