summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/generate/fs.js2
-rw-r--r--lib/generate/page/index.js3
-rw-r--r--lib/generate/site/index.js3
-rw-r--r--lib/parse/renderer.js24
4 files changed, 28 insertions, 4 deletions
diff --git a/lib/generate/fs.js b/lib/generate/fs.js
index 3338781..e06976b 100644
--- a/lib/generate/fs.js
+++ b/lib/generate/fs.js
@@ -11,7 +11,7 @@ var getFiles = function(path) {
var ig = Ignore({
path: path,
- ignoreFiles: ['.ignore', '.gitignore']
+ ignoreFiles: ['.ignore', '.gitignore', '.bookignore']
});
// Add extra rules to ignore common folders
diff --git a/lib/generate/page/index.js b/lib/generate/page/index.js
index 5be40c4..3ee368f 100644
--- a/lib/generate/page/index.js
+++ b/lib/generate/page/index.js
@@ -44,7 +44,8 @@ Generator.prototype.convertFile = function(content, input) {
.then(function() {
return parse.page(content, {
repo: that.options.githubId,
- dir: path.dirname(input) || '/'
+ dir: path.dirname(input) || '/',
+ outdir: './',
});
})
.then(function(sections) {
diff --git a/lib/generate/site/index.js b/lib/generate/site/index.js
index 8b080f2..1cd63ff 100644
--- a/lib/generate/site/index.js
+++ b/lib/generate/site/index.js
@@ -94,7 +94,8 @@ Generator.prototype.convertFile = function(content, _input) {
// Get HTML generated sections
return parse.page(lexed, {
repo: that.options.githubId,
- dir: path.dirname(input) || '/'
+ dir: path.dirname(_input) || '/',
+ outdir: path.dirname(_input) || '/',
});
})
.then(function(sections) {
diff --git a/lib/parse/renderer.js b/lib/parse/renderer.js
index 64c5602..848f6e3 100644
--- a/lib/parse/renderer.js
+++ b/lib/parse/renderer.js
@@ -45,7 +45,7 @@ GitBookRenderer.prototype.link = function(href, title, text) {
var o = this._extra_options;
// Relative link, rewrite it to point to github repo
- if(parsed.path[0] != '/' && o && o.repo && o.dir) {
+ if(!parsed.protocol && parsed.path[0] != '/' && o && o.repo && o.dir) {
href = 'https://github.com/' + o.repo + '/blob' + path.normalize(path.join(
'/',
o.dir,
@@ -68,5 +68,27 @@ GitBookRenderer.prototype.link = function(href, title, text) {
return out;
};
+GitBookRenderer.prototype.image = function(href, title, text) {
+ // Our "fixed" href
+ var _href = href;
+
+ // Parsed version of the url
+ var parsed = url.parse(href);
+
+ // Options
+ var o = this._extra_options;
+
+ // Relative image, rewrite it depending output
+ if(!parsed.protocol && parsed.path[0] != '/' && o && o.dir && o.outdir) {
+ _href = path.relative(o.outdir, path.normalize(path.join(
+ o.dir,
+ href
+ )));
+ }
+
+ return GitBookRenderer.super_.prototype.image.call(this, _href, title, text);
+};
+
+
// Exports
module.exports = GitBookRenderer;