diff options
author | Samy Pessé <samypesse@gmail.com> | 2014-06-06 20:00:38 +0200 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2014-06-06 20:00:38 +0200 |
commit | 57491e3a8bbd20672fe80198f2bf8325c1f3e149 (patch) | |
tree | 82a923ce48ccb40a5060c1adb3be8df2ac4dd659 /lib/generate | |
parent | f7a442d297d3914b9e2bfea7709fd38e41a40e2a (diff) | |
download | gitbook-57491e3a8bbd20672fe80198f2bf8325c1f3e149.zip gitbook-57491e3a8bbd20672fe80198f2bf8325c1f3e149.tar.gz gitbook-57491e3a8bbd20672fe80198f2bf8325c1f3e149.tar.bz2 |
Improve meta tags for books
Diffstat (limited to 'lib/generate')
-rw-r--r-- | lib/generate/index.js | 2 | ||||
-rw-r--r-- | lib/generate/page/index.js | 22 | ||||
-rw-r--r-- | lib/generate/site/index.js | 14 | ||||
-rw-r--r-- | lib/generate/template.js | 47 |
4 files changed, 51 insertions, 34 deletions
diff --git a/lib/generate/index.js b/lib/generate/index.js index adbcf26..6a319e8 100644 --- a/lib/generate/index.js +++ b/lib/generate/index.js @@ -1,9 +1,9 @@ var Q = require("q"); var _ = require("lodash"); var path = require("path"); -var swig = require('swig'); var tmp = require('tmp'); +var swig = require('./template'); var fs = require("./fs"); var parse = require("../parse"); var Plugin = require("./plugin"); diff --git a/lib/generate/page/index.js b/lib/generate/page/index.js index d71229b..68fd334 100644 --- a/lib/generate/page/index.js +++ b/lib/generate/page/index.js @@ -2,32 +2,12 @@ var _ = require("lodash"); var util = require("util"); var path = require("path"); var Q = require("q"); -var swig = require('swig'); -var hljs = require('highlight.js'); +var swig = require("../template"); var fs = require("../fs"); var parse = require("../../parse"); var BaseGenerator = require("../site"); -// Swig filter: highlight coloration -swig.setFilter('code', function(code, lang) { - try { - return hljs.highlight(lang, code).value; - } catch(e) { - return hljs.highlightAuto(code).value; - } -}); - -// Convert a level into a deep level -swig.setFilter('lvl', function(lvl) { - return lvl.split(".").length; -}); - -// Join path -swig.setFilter('pathJoin', function(base, _path) { - return path.join(base, _path); -}); - /* * This generator will generate a simple index.html which can be converted as a PDF diff --git a/lib/generate/site/index.js b/lib/generate/site/index.js index abbb9f0..51f8cae 100644 --- a/lib/generate/site/index.js +++ b/lib/generate/site/index.js @@ -2,7 +2,7 @@ var util = require("util"); var path = require("path"); var Q = require("q"); var _ = require("lodash"); -var swig = require('swig'); +var swig = require("../template"); var fs = require("../fs"); var parse = require("../../parse"); @@ -11,17 +11,7 @@ var links = require("../../utils/links"); var indexer = require('./search_indexer'); var Manifest = require('../manifest'); -// Swig filter for returning the count of lines in a code section -swig.setFilter('lines', function(content) { - return content.split('\n').length; -}); - -// Swig filter for returning a link to the associated html file of a markdown file -swig.setFilter('mdLink', function(link) { - var link = link.replace(".md", ".html"); - if (link == "README.html") link = "index.html"; - return link; -}); + var Generator = function() { BaseGenerator.apply(this, arguments); diff --git a/lib/generate/template.js b/lib/generate/template.js new file mode 100644 index 0000000..a4ac4fd --- /dev/null +++ b/lib/generate/template.js @@ -0,0 +1,47 @@ +var path = require("path"); +var swig = require('swig'); +var hljs = require('highlight.js'); + +var pkg = require('../../package.json'); + +swig.setDefaults({ + locals: { + gitbook: { + version: pkg.version + } + } +}); + +// Swig filter for returning the count of lines in a code section +swig.setFilter('lines', function(content) { + return content.split('\n').length; +}); + +// Swig filter for returning a link to the associated html file of a markdown file +swig.setFilter('mdLink', function(link) { + var link = link.replace(".md", ".html"); + if (link == "README.html") link = "index.html"; + return link; +}); + + +// Swig filter: highlight coloration +swig.setFilter('code', function(code, lang) { + try { + return hljs.highlight(lang, code).value; + } catch(e) { + return hljs.highlightAuto(code).value; + } +}); + +// Convert a level into a deep level +swig.setFilter('lvl', function(lvl) { + return lvl.split(".").length; +}); + +// Join path +swig.setFilter('pathJoin', function(base, _path) { + return path.join(base, _path); +}); + +module.exports = swig; |