diff --git a/lib/book.js b/lib/book.js index 417af37d5..9795bc890 100644 --- a/lib/book.js +++ b/lib/book.js @@ -348,6 +348,9 @@ Book.prototype.parsePlugins = function() { return Plugin.normalize(pluginsList) .then(function(_plugins) { that.plugins = _plugins; + + // Add filters + that.template.addFilters(that.plugins.filters); }); }; diff --git a/lib/configuration.js b/lib/configuration.js index 1d7493ad4..678bfe7a5 100644 --- a/lib/configuration.js +++ b/lib/configuration.js @@ -6,7 +6,7 @@ var npmi = require('npmi'); var fs = require("./utils/fs"); // Default plugins added to each books -var defaultsPlugins = ["mathjax"]; +var defaultsPlugins = []; // Normalize a list of plugins to use function normalizePluginsList(plugins) { diff --git a/lib/template.js b/lib/template.js index d04deee3f..32c46de64 100644 --- a/lib/template.js +++ b/lib/template.js @@ -66,6 +66,14 @@ var TemplateEngine = function(book) { ); }; +// Add filters +TemplateEngine.prototype.addFilters = function(filters) { + _.each(filters, function(func, key) { + this.book.log.debug.ln("add filter '"+key+"'"); + this.env.addFilter(key, func); + }, this); +}; + // Render a string from the book TemplateEngine.prototype.renderString = function(content, context, options) { var context = _.extend({}, context, {