summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Gruntfile.js6
-rw-r--r--lib/generate/site/index.js10
-rw-r--r--theme/README.md3
-rw-r--r--theme/assets/app.js (renamed from assets/static/app.js)0
-rw-r--r--theme/assets/fonts/fontawesome/FontAwesome.otf (renamed from assets/static/fonts/fontawesome/FontAwesome.otf)bin63008 -> 63008 bytes
-rwxr-xr-xtheme/assets/fonts/fontawesome/fontawesome-webfont.eot (renamed from assets/static/fonts/fontawesome/fontawesome-webfont.eot)bin38239 -> 38239 bytes
-rwxr-xr-xtheme/assets/fonts/fontawesome/fontawesome-webfont.svg (renamed from assets/static/fonts/fontawesome/fontawesome-webfont.svg)0
-rwxr-xr-xtheme/assets/fonts/fontawesome/fontawesome-webfont.ttf (renamed from assets/static/fonts/fontawesome/fontawesome-webfont.ttf)bin80776 -> 80776 bytes
-rwxr-xr-xtheme/assets/fonts/fontawesome/fontawesome-webfont.woff (renamed from assets/static/fonts/fontawesome/fontawesome-webfont.woff)bin44476 -> 44476 bytes
-rw-r--r--theme/assets/fonts/helvetica/normal.eot (renamed from assets/static/fonts/helvetica/normal.eot)bin50032 -> 50032 bytes
-rw-r--r--theme/assets/fonts/helvetica/normal.svg (renamed from assets/static/fonts/helvetica/normal.svg)0
-rw-r--r--theme/assets/fonts/helvetica/normal.ttf (renamed from assets/static/fonts/helvetica/normal.ttf)bin49832 -> 49832 bytes
-rw-r--r--theme/assets/fonts/helvetica/normal.woff (renamed from assets/static/fonts/helvetica/normal.woff)bin25784 -> 25784 bytes
-rw-r--r--theme/assets/fonts/helvetica/ultralight.eot (renamed from assets/static/fonts/helvetica/ultralight.eot)bin50360 -> 50360 bytes
-rw-r--r--theme/assets/fonts/helvetica/ultralight.svg (renamed from assets/static/fonts/helvetica/ultralight.svg)0
-rw-r--r--theme/assets/fonts/helvetica/ultralight.ttf (renamed from assets/static/fonts/helvetica/ultralight.ttf)bin50148 -> 50148 bytes
-rw-r--r--theme/assets/fonts/helvetica/ultralight.woff (renamed from assets/static/fonts/helvetica/ultralight.woff)bin26020 -> 26020 bytes
-rw-r--r--theme/assets/images/favicon.ico (renamed from assets/static/images/favicon.ico)bin1150 -> 1150 bytes
-rw-r--r--theme/assets/jsrepl/engines/javascript-default.js (renamed from assets/static/jsrepl/engines/javascript-default.js)0
-rw-r--r--theme/assets/jsrepl/jsrepl.js (renamed from assets/static/jsrepl/jsrepl.js)0
-rw-r--r--theme/assets/jsrepl/langs/javascript/jsrepl_js.js (renamed from assets/static/jsrepl/langs/javascript/jsrepl_js.js)0
-rw-r--r--theme/assets/jsrepl/sandbox.html (renamed from assets/static/jsrepl/sandbox.html)0
-rw-r--r--theme/assets/jsrepl/sandbox.js (renamed from assets/static/jsrepl/sandbox.js)0
-rw-r--r--theme/assets/style.css (renamed from assets/static/style.css)0
-rw-r--r--theme/javascript/app.js (renamed from assets/javascript/app.js)0
-rw-r--r--theme/javascript/core/exercise.js (renamed from assets/javascript/core/exercise.js)0
-rw-r--r--theme/javascript/core/keyboard.js (renamed from assets/javascript/core/keyboard.js)0
-rw-r--r--theme/javascript/core/navigation.js (renamed from assets/javascript/core/navigation.js)0
-rw-r--r--theme/javascript/core/progress.js (renamed from assets/javascript/core/progress.js)0
-rw-r--r--theme/javascript/core/sidebar.js (renamed from assets/javascript/core/sidebar.js)0
-rw-r--r--theme/javascript/core/state.js (renamed from assets/javascript/core/state.js)0
-rw-r--r--theme/javascript/utils/analytic.js (renamed from assets/javascript/utils/analytic.js)0
-rw-r--r--theme/javascript/utils/execute.js (renamed from assets/javascript/utils/execute.js)0
-rw-r--r--theme/javascript/utils/platform.js (renamed from assets/javascript/utils/platform.js)0
-rw-r--r--theme/javascript/utils/sharing.js (renamed from assets/javascript/utils/sharing.js)0
-rw-r--r--theme/javascript/utils/storage.js (renamed from assets/javascript/utils/storage.js)0
-rw-r--r--theme/javascript/vendors/jquery.js (renamed from assets/javascript/vendors/jquery.js)0
-rw-r--r--theme/javascript/vendors/lodash.js (renamed from assets/javascript/vendors/lodash.js)0
-rw-r--r--theme/javascript/vendors/mousetrap.js (renamed from assets/javascript/vendors/mousetrap.js)0
-rw-r--r--theme/javascript/vendors/require.js (renamed from assets/javascript/vendors/require.js)0
-rw-r--r--theme/stylesheets/book/body.less (renamed from assets/stylesheets/book/body.less)0
-rw-r--r--theme/stylesheets/book/exercise.less (renamed from assets/stylesheets/book/exercise.less)0
-rw-r--r--theme/stylesheets/book/footer.less (renamed from assets/stylesheets/book/footer.less)0
-rw-r--r--theme/stylesheets/book/header.less (renamed from assets/stylesheets/book/header.less)0
-rw-r--r--theme/stylesheets/book/markdown.less (renamed from assets/stylesheets/book/markdown.less)0
-rw-r--r--theme/stylesheets/book/progress.less (renamed from assets/stylesheets/book/progress.less)0
-rw-r--r--theme/stylesheets/book/summary.less (renamed from assets/stylesheets/book/summary.less)0
-rw-r--r--theme/stylesheets/fonts.less (renamed from assets/stylesheets/fonts.less)0
-rw-r--r--theme/stylesheets/highlight.less (renamed from assets/stylesheets/highlight.less)0
-rw-r--r--theme/stylesheets/main.less (renamed from assets/stylesheets/main.less)0
-rw-r--r--theme/stylesheets/mixins.less (renamed from assets/stylesheets/mixins.less)0
-rw-r--r--theme/stylesheets/variables.less (renamed from assets/stylesheets/variables.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/alerts.less (renamed from assets/stylesheets/vendors/bootstrap/alerts.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/badges.less (renamed from assets/stylesheets/vendors/bootstrap/badges.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/bootstrap.less (renamed from assets/stylesheets/vendors/bootstrap/bootstrap.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/breadcrumbs.less (renamed from assets/stylesheets/vendors/bootstrap/breadcrumbs.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/button-groups.less (renamed from assets/stylesheets/vendors/bootstrap/button-groups.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/buttons.less (renamed from assets/stylesheets/vendors/bootstrap/buttons.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/carousel.less (renamed from assets/stylesheets/vendors/bootstrap/carousel.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/close.less (renamed from assets/stylesheets/vendors/bootstrap/close.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/code.less (renamed from assets/stylesheets/vendors/bootstrap/code.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/component-animations.less (renamed from assets/stylesheets/vendors/bootstrap/component-animations.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/dropdowns.less (renamed from assets/stylesheets/vendors/bootstrap/dropdowns.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/forms.less (renamed from assets/stylesheets/vendors/bootstrap/forms.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/glyphicons.less (renamed from assets/stylesheets/vendors/bootstrap/glyphicons.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/grid.less (renamed from assets/stylesheets/vendors/bootstrap/grid.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/input-groups.less (renamed from assets/stylesheets/vendors/bootstrap/input-groups.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/jumbotron.less (renamed from assets/stylesheets/vendors/bootstrap/jumbotron.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/labels.less (renamed from assets/stylesheets/vendors/bootstrap/labels.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/list-group.less (renamed from assets/stylesheets/vendors/bootstrap/list-group.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/media.less (renamed from assets/stylesheets/vendors/bootstrap/media.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/mixins.less (renamed from assets/stylesheets/vendors/bootstrap/mixins.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/modals.less (renamed from assets/stylesheets/vendors/bootstrap/modals.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/navbar.less (renamed from assets/stylesheets/vendors/bootstrap/navbar.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/navs.less (renamed from assets/stylesheets/vendors/bootstrap/navs.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/normalize.less (renamed from assets/stylesheets/vendors/bootstrap/normalize.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/pager.less (renamed from assets/stylesheets/vendors/bootstrap/pager.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/pagination.less (renamed from assets/stylesheets/vendors/bootstrap/pagination.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/panels.less (renamed from assets/stylesheets/vendors/bootstrap/panels.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/popovers.less (renamed from assets/stylesheets/vendors/bootstrap/popovers.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/print.less (renamed from assets/stylesheets/vendors/bootstrap/print.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/progress-bars.less (renamed from assets/stylesheets/vendors/bootstrap/progress-bars.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/responsive-utilities.less (renamed from assets/stylesheets/vendors/bootstrap/responsive-utilities.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/scaffolding.less (renamed from assets/stylesheets/vendors/bootstrap/scaffolding.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/tables.less (renamed from assets/stylesheets/vendors/bootstrap/tables.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/theme.less (renamed from assets/stylesheets/vendors/bootstrap/theme.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/thumbnails.less (renamed from assets/stylesheets/vendors/bootstrap/thumbnails.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/tooltip.less (renamed from assets/stylesheets/vendors/bootstrap/tooltip.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/type.less (renamed from assets/stylesheets/vendors/bootstrap/type.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/utilities.less (renamed from assets/stylesheets/vendors/bootstrap/utilities.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/variables.less (renamed from assets/stylesheets/vendors/bootstrap/variables.less)0
-rwxr-xr-xtheme/stylesheets/vendors/bootstrap/wells.less (renamed from assets/stylesheets/vendors/bootstrap/wells.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/bordered-pulled.less (renamed from assets/stylesheets/vendors/fontawesome/bordered-pulled.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/core.less (renamed from assets/stylesheets/vendors/fontawesome/core.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/fixed-width.less (renamed from assets/stylesheets/vendors/fontawesome/fixed-width.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/font-awesome.less (renamed from assets/stylesheets/vendors/fontawesome/font-awesome.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/icons.less (renamed from assets/stylesheets/vendors/fontawesome/icons.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/larger.less (renamed from assets/stylesheets/vendors/fontawesome/larger.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/list.less (renamed from assets/stylesheets/vendors/fontawesome/list.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/mixins.less (renamed from assets/stylesheets/vendors/fontawesome/mixins.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/path.less (renamed from assets/stylesheets/vendors/fontawesome/path.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/rotated-flipped.less (renamed from assets/stylesheets/vendors/fontawesome/rotated-flipped.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/spinning.less (renamed from assets/stylesheets/vendors/fontawesome/spinning.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/stacked.less (renamed from assets/stylesheets/vendors/fontawesome/stacked.less)0
-rw-r--r--theme/stylesheets/vendors/fontawesome/variables.less (renamed from assets/stylesheets/vendors/fontawesome/variables.less)0
-rw-r--r--theme/templates/includes/book/exercise.html (renamed from templates/includes/book/exercise.html)0
-rw-r--r--theme/templates/includes/book/footer.html (renamed from templates/includes/book/footer.html)0
-rw-r--r--theme/templates/includes/book/header.html (renamed from templates/includes/book/header.html)0
-rw-r--r--theme/templates/includes/book/progress.html (renamed from templates/includes/book/progress.html)0
-rw-r--r--theme/templates/includes/book/summary.html (renamed from templates/includes/book/summary.html)0
-rw-r--r--theme/templates/layout.html (renamed from templates/layout.html)0
-rw-r--r--theme/templates/page.html (renamed from templates/page.html)0
112 files changed, 14 insertions, 5 deletions
diff --git a/Gruntfile.js b/Gruntfile.js
index 31cab30..112c0c1 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -16,7 +16,7 @@ module.exports = function (grunt) {
optimization: 2
},
files: {
- "assets/static/style.css": "assets/stylesheets/main.less"
+ "theme/assets/style.css": "theme/stylesheets/main.less"
}
}
},
@@ -24,8 +24,8 @@ module.exports = function (grunt) {
compile: {
options: {
name: "app",
- baseUrl: "assets/javascript/",
- out: "assets/static/app.js",
+ baseUrl: "theme/javascript/",
+ out: "theme/assets/app.js",
preserveLicenseComments: false,
optimize: "uglify",
include: ["requireLib"],
diff --git a/lib/generate/site/index.js b/lib/generate/site/index.js
index ac6ece6..13c7438 100644
--- a/lib/generate/site/index.js
+++ b/lib/generate/site/index.js
@@ -1,6 +1,7 @@
var util = require("util");
var path = require("path");
var Q = require("q");
+var _ = require("lodash");
var swig = require('swig');
var fs = require("../fs");
@@ -20,8 +21,13 @@ swig.setFilter('mdLink', function(link) {
var Generator = function() {
BaseGenerator.apply(this, arguments);
+ // Options
+ this.options = _.defaults(this.options, {
+ theme: path.resolve(__dirname, '../../../theme')
+ });
+
// Load base template
- this.template = swig.compileFile(path.resolve(__dirname, '../../templates/page.html'));
+ this.template = swig.compileFile(path.resolve(this.options.theme, 'templates/page.html'));
};
util.inherits(Generator, BaseGenerator);
@@ -82,7 +88,7 @@ Generator.prototype.finish = function() {
)
.then(function() {
return fs.copy(
- path.join(__dirname, "../../assets/static"),
+ path.join(that.options.theme, "assets"),
path.join(that.options.output, "gitbook")
);
});
diff --git a/theme/README.md b/theme/README.md
new file mode 100644
index 0000000..2e08b02
--- /dev/null
+++ b/theme/README.md
@@ -0,0 +1,3 @@
+# GitBook Theme
+
+For creating a theme for GitBook, just copy this folder. The theme folder should at least contains two folders: `assets` and `templates`.
diff --git a/assets/static/app.js b/theme/assets/app.js
index 84e3c03..84e3c03 100644
--- a/assets/static/app.js
+++ b/theme/assets/app.js
diff --git a/assets/static/fonts/fontawesome/FontAwesome.otf b/theme/assets/fonts/fontawesome/FontAwesome.otf
index 4dfe30a..4dfe30a 100644
--- a/assets/static/fonts/fontawesome/FontAwesome.otf
+++ b/theme/assets/fonts/fontawesome/FontAwesome.otf
Binary files differ
diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.eot b/theme/assets/fonts/fontawesome/fontawesome-webfont.eot
index e054c93..e054c93 100755
--- a/assets/static/fonts/fontawesome/fontawesome-webfont.eot
+++ b/theme/assets/fonts/fontawesome/fontawesome-webfont.eot
Binary files differ
diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.svg b/theme/assets/fonts/fontawesome/fontawesome-webfont.svg
index 36d43b8..36d43b8 100755
--- a/assets/static/fonts/fontawesome/fontawesome-webfont.svg
+++ b/theme/assets/fonts/fontawesome/fontawesome-webfont.svg
diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.ttf b/theme/assets/fonts/fontawesome/fontawesome-webfont.ttf
index 7ec2e1d..7ec2e1d 100755
--- a/assets/static/fonts/fontawesome/fontawesome-webfont.ttf
+++ b/theme/assets/fonts/fontawesome/fontawesome-webfont.ttf
Binary files differ
diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.woff b/theme/assets/fonts/fontawesome/fontawesome-webfont.woff
index 27d80b1..27d80b1 100755
--- a/assets/static/fonts/fontawesome/fontawesome-webfont.woff
+++ b/theme/assets/fonts/fontawesome/fontawesome-webfont.woff
Binary files differ
diff --git a/assets/static/fonts/helvetica/normal.eot b/theme/assets/fonts/helvetica/normal.eot
index d8252a8..d8252a8 100644
--- a/assets/static/fonts/helvetica/normal.eot
+++ b/theme/assets/fonts/helvetica/normal.eot
Binary files differ
diff --git a/assets/static/fonts/helvetica/normal.svg b/theme/assets/fonts/helvetica/normal.svg
index d956ef1..d956ef1 100644
--- a/assets/static/fonts/helvetica/normal.svg
+++ b/theme/assets/fonts/helvetica/normal.svg
diff --git a/assets/static/fonts/helvetica/normal.ttf b/theme/assets/fonts/helvetica/normal.ttf
index 78bbf81..78bbf81 100644
--- a/assets/static/fonts/helvetica/normal.ttf
+++ b/theme/assets/fonts/helvetica/normal.ttf
Binary files differ
diff --git a/assets/static/fonts/helvetica/normal.woff b/theme/assets/fonts/helvetica/normal.woff
index f39989a..f39989a 100644
--- a/assets/static/fonts/helvetica/normal.woff
+++ b/theme/assets/fonts/helvetica/normal.woff
Binary files differ
diff --git a/assets/static/fonts/helvetica/ultralight.eot b/theme/assets/fonts/helvetica/ultralight.eot
index 5e358e0..5e358e0 100644
--- a/assets/static/fonts/helvetica/ultralight.eot
+++ b/theme/assets/fonts/helvetica/ultralight.eot
Binary files differ
diff --git a/assets/static/fonts/helvetica/ultralight.svg b/theme/assets/fonts/helvetica/ultralight.svg
index 330d46c..330d46c 100644
--- a/assets/static/fonts/helvetica/ultralight.svg
+++ b/theme/assets/fonts/helvetica/ultralight.svg
diff --git a/assets/static/fonts/helvetica/ultralight.ttf b/theme/assets/fonts/helvetica/ultralight.ttf
index bf3c075..bf3c075 100644
--- a/assets/static/fonts/helvetica/ultralight.ttf
+++ b/theme/assets/fonts/helvetica/ultralight.ttf
Binary files differ
diff --git a/assets/static/fonts/helvetica/ultralight.woff b/theme/assets/fonts/helvetica/ultralight.woff
index 402eadc..402eadc 100644
--- a/assets/static/fonts/helvetica/ultralight.woff
+++ b/theme/assets/fonts/helvetica/ultralight.woff
Binary files differ
diff --git a/assets/static/images/favicon.ico b/theme/assets/images/favicon.ico
index cf2944e..cf2944e 100644
--- a/assets/static/images/favicon.ico
+++ b/theme/assets/images/favicon.ico
Binary files differ
diff --git a/assets/static/jsrepl/engines/javascript-default.js b/theme/assets/jsrepl/engines/javascript-default.js
index b26c5c0..b26c5c0 100644
--- a/assets/static/jsrepl/engines/javascript-default.js
+++ b/theme/assets/jsrepl/engines/javascript-default.js
diff --git a/assets/static/jsrepl/jsrepl.js b/theme/assets/jsrepl/jsrepl.js
index 0bea57f..0bea57f 100644
--- a/assets/static/jsrepl/jsrepl.js
+++ b/theme/assets/jsrepl/jsrepl.js
diff --git a/assets/static/jsrepl/langs/javascript/jsrepl_js.js b/theme/assets/jsrepl/langs/javascript/jsrepl_js.js
index 154baed..154baed 100644
--- a/assets/static/jsrepl/langs/javascript/jsrepl_js.js
+++ b/theme/assets/jsrepl/langs/javascript/jsrepl_js.js
diff --git a/assets/static/jsrepl/sandbox.html b/theme/assets/jsrepl/sandbox.html
index b04282e..b04282e 100644
--- a/assets/static/jsrepl/sandbox.html
+++ b/theme/assets/jsrepl/sandbox.html
diff --git a/assets/static/jsrepl/sandbox.js b/theme/assets/jsrepl/sandbox.js
index 48f7c74..48f7c74 100644
--- a/assets/static/jsrepl/sandbox.js
+++ b/theme/assets/jsrepl/sandbox.js
diff --git a/assets/static/style.css b/theme/assets/style.css
index 9f02786..9f02786 100644
--- a/assets/static/style.css
+++ b/theme/assets/style.css
diff --git a/assets/javascript/app.js b/theme/javascript/app.js
index d623e58..d623e58 100644
--- a/assets/javascript/app.js
+++ b/theme/javascript/app.js
diff --git a/assets/javascript/core/exercise.js b/theme/javascript/core/exercise.js
index 4163730..4163730 100644
--- a/assets/javascript/core/exercise.js
+++ b/theme/javascript/core/exercise.js
diff --git a/assets/javascript/core/keyboard.js b/theme/javascript/core/keyboard.js
index 05e939e..05e939e 100644
--- a/assets/javascript/core/keyboard.js
+++ b/theme/javascript/core/keyboard.js
diff --git a/assets/javascript/core/navigation.js b/theme/javascript/core/navigation.js
index bb3547c..bb3547c 100644
--- a/assets/javascript/core/navigation.js
+++ b/theme/javascript/core/navigation.js
diff --git a/assets/javascript/core/progress.js b/theme/javascript/core/progress.js
index 755f111..755f111 100644
--- a/assets/javascript/core/progress.js
+++ b/theme/javascript/core/progress.js
diff --git a/assets/javascript/core/sidebar.js b/theme/javascript/core/sidebar.js
index 717c2b7..717c2b7 100644
--- a/assets/javascript/core/sidebar.js
+++ b/theme/javascript/core/sidebar.js
diff --git a/assets/javascript/core/state.js b/theme/javascript/core/state.js
index fc67d7b..fc67d7b 100644
--- a/assets/javascript/core/state.js
+++ b/theme/javascript/core/state.js
diff --git a/assets/javascript/utils/analytic.js b/theme/javascript/utils/analytic.js
index 12c672a..12c672a 100644
--- a/assets/javascript/utils/analytic.js
+++ b/theme/javascript/utils/analytic.js
diff --git a/assets/javascript/utils/execute.js b/theme/javascript/utils/execute.js
index 61354b8..61354b8 100644
--- a/assets/javascript/utils/execute.js
+++ b/theme/javascript/utils/execute.js
diff --git a/assets/javascript/utils/platform.js b/theme/javascript/utils/platform.js
index ad5f3b4..ad5f3b4 100644
--- a/assets/javascript/utils/platform.js
+++ b/theme/javascript/utils/platform.js
diff --git a/assets/javascript/utils/sharing.js b/theme/javascript/utils/sharing.js
index f4354f1..f4354f1 100644
--- a/assets/javascript/utils/sharing.js
+++ b/theme/javascript/utils/sharing.js
diff --git a/assets/javascript/utils/storage.js b/theme/javascript/utils/storage.js
index 14275c6..14275c6 100644
--- a/assets/javascript/utils/storage.js
+++ b/theme/javascript/utils/storage.js
diff --git a/assets/javascript/vendors/jquery.js b/theme/javascript/vendors/jquery.js
index f7f4227..f7f4227 100644
--- a/assets/javascript/vendors/jquery.js
+++ b/theme/javascript/vendors/jquery.js
diff --git a/assets/javascript/vendors/lodash.js b/theme/javascript/vendors/lodash.js
index d653e5a..d653e5a 100644
--- a/assets/javascript/vendors/lodash.js
+++ b/theme/javascript/vendors/lodash.js
diff --git a/assets/javascript/vendors/mousetrap.js b/theme/javascript/vendors/mousetrap.js
index 66f2d5b..66f2d5b 100644
--- a/assets/javascript/vendors/mousetrap.js
+++ b/theme/javascript/vendors/mousetrap.js
diff --git a/assets/javascript/vendors/require.js b/theme/javascript/vendors/require.js
index d95c608..d95c608 100644
--- a/assets/javascript/vendors/require.js
+++ b/theme/javascript/vendors/require.js
diff --git a/assets/stylesheets/book/body.less b/theme/stylesheets/book/body.less
index bce8e9a..bce8e9a 100644
--- a/assets/stylesheets/book/body.less
+++ b/theme/stylesheets/book/body.less
diff --git a/assets/stylesheets/book/exercise.less b/theme/stylesheets/book/exercise.less
index a1cbb43..a1cbb43 100644
--- a/assets/stylesheets/book/exercise.less
+++ b/theme/stylesheets/book/exercise.less
diff --git a/assets/stylesheets/book/footer.less b/theme/stylesheets/book/footer.less
index fdbea10..fdbea10 100644
--- a/assets/stylesheets/book/footer.less
+++ b/theme/stylesheets/book/footer.less
diff --git a/assets/stylesheets/book/header.less b/theme/stylesheets/book/header.less
index 9986fa6..9986fa6 100644
--- a/assets/stylesheets/book/header.less
+++ b/theme/stylesheets/book/header.less
diff --git a/assets/stylesheets/book/markdown.less b/theme/stylesheets/book/markdown.less
index 2cd39e9..2cd39e9 100644
--- a/assets/stylesheets/book/markdown.less
+++ b/theme/stylesheets/book/markdown.less
diff --git a/assets/stylesheets/book/progress.less b/theme/stylesheets/book/progress.less
index 25cfd4c..25cfd4c 100644
--- a/assets/stylesheets/book/progress.less
+++ b/theme/stylesheets/book/progress.less
diff --git a/assets/stylesheets/book/summary.less b/theme/stylesheets/book/summary.less
index 06c43f7..06c43f7 100644
--- a/assets/stylesheets/book/summary.less
+++ b/theme/stylesheets/book/summary.less
diff --git a/assets/stylesheets/fonts.less b/theme/stylesheets/fonts.less
index a88849a..a88849a 100644
--- a/assets/stylesheets/fonts.less
+++ b/theme/stylesheets/fonts.less
diff --git a/assets/stylesheets/highlight.less b/theme/stylesheets/highlight.less
index ae9d1f8..ae9d1f8 100644
--- a/assets/stylesheets/highlight.less
+++ b/theme/stylesheets/highlight.less
diff --git a/assets/stylesheets/main.less b/theme/stylesheets/main.less
index 71757a0..71757a0 100644
--- a/assets/stylesheets/main.less
+++ b/theme/stylesheets/main.less
diff --git a/assets/stylesheets/mixins.less b/theme/stylesheets/mixins.less
index 0216ea4..0216ea4 100644
--- a/assets/stylesheets/mixins.less
+++ b/theme/stylesheets/mixins.less
diff --git a/assets/stylesheets/variables.less b/theme/stylesheets/variables.less
index 4cb9e56..4cb9e56 100644
--- a/assets/stylesheets/variables.less
+++ b/theme/stylesheets/variables.less
diff --git a/assets/stylesheets/vendors/bootstrap/alerts.less b/theme/stylesheets/vendors/bootstrap/alerts.less
index be09d18..be09d18 100755
--- a/assets/stylesheets/vendors/bootstrap/alerts.less
+++ b/theme/stylesheets/vendors/bootstrap/alerts.less
diff --git a/assets/stylesheets/vendors/bootstrap/badges.less b/theme/stylesheets/vendors/bootstrap/badges.less
index 0b69753..0b69753 100755
--- a/assets/stylesheets/vendors/bootstrap/badges.less
+++ b/theme/stylesheets/vendors/bootstrap/badges.less
diff --git a/assets/stylesheets/vendors/bootstrap/bootstrap.less b/theme/stylesheets/vendors/bootstrap/bootstrap.less
index 1344b46..1344b46 100755
--- a/assets/stylesheets/vendors/bootstrap/bootstrap.less
+++ b/theme/stylesheets/vendors/bootstrap/bootstrap.less
diff --git a/assets/stylesheets/vendors/bootstrap/breadcrumbs.less b/theme/stylesheets/vendors/bootstrap/breadcrumbs.less
index 92643d1..92643d1 100755
--- a/assets/stylesheets/vendors/bootstrap/breadcrumbs.less
+++ b/theme/stylesheets/vendors/bootstrap/breadcrumbs.less
diff --git a/assets/stylesheets/vendors/bootstrap/button-groups.less b/theme/stylesheets/vendors/bootstrap/button-groups.less
index 43ada11..43ada11 100755
--- a/assets/stylesheets/vendors/bootstrap/button-groups.less
+++ b/theme/stylesheets/vendors/bootstrap/button-groups.less
diff --git a/assets/stylesheets/vendors/bootstrap/buttons.less b/theme/stylesheets/vendors/bootstrap/buttons.less
index 5d60d39..5d60d39 100755
--- a/assets/stylesheets/vendors/bootstrap/buttons.less
+++ b/theme/stylesheets/vendors/bootstrap/buttons.less
diff --git a/assets/stylesheets/vendors/bootstrap/carousel.less b/theme/stylesheets/vendors/bootstrap/carousel.less
index c468d43..c468d43 100755
--- a/assets/stylesheets/vendors/bootstrap/carousel.less
+++ b/theme/stylesheets/vendors/bootstrap/carousel.less
diff --git a/assets/stylesheets/vendors/bootstrap/close.less b/theme/stylesheets/vendors/bootstrap/close.less
index 9b4e74f..9b4e74f 100755
--- a/assets/stylesheets/vendors/bootstrap/close.less
+++ b/theme/stylesheets/vendors/bootstrap/close.less
diff --git a/assets/stylesheets/vendors/bootstrap/code.less b/theme/stylesheets/vendors/bootstrap/code.less
index d6661d2..d6661d2 100755
--- a/assets/stylesheets/vendors/bootstrap/code.less
+++ b/theme/stylesheets/vendors/bootstrap/code.less
diff --git a/assets/stylesheets/vendors/bootstrap/component-animations.less b/theme/stylesheets/vendors/bootstrap/component-animations.less
index 1efe45e..1efe45e 100755
--- a/assets/stylesheets/vendors/bootstrap/component-animations.less
+++ b/theme/stylesheets/vendors/bootstrap/component-animations.less
diff --git a/assets/stylesheets/vendors/bootstrap/dropdowns.less b/theme/stylesheets/vendors/bootstrap/dropdowns.less
index 96af127..96af127 100755
--- a/assets/stylesheets/vendors/bootstrap/dropdowns.less
+++ b/theme/stylesheets/vendors/bootstrap/dropdowns.less
diff --git a/assets/stylesheets/vendors/bootstrap/forms.less b/theme/stylesheets/vendors/bootstrap/forms.less
index f87b602..f87b602 100755
--- a/assets/stylesheets/vendors/bootstrap/forms.less
+++ b/theme/stylesheets/vendors/bootstrap/forms.less
diff --git a/assets/stylesheets/vendors/bootstrap/glyphicons.less b/theme/stylesheets/vendors/bootstrap/glyphicons.less
index 0e0ba98..0e0ba98 100755
--- a/assets/stylesheets/vendors/bootstrap/glyphicons.less
+++ b/theme/stylesheets/vendors/bootstrap/glyphicons.less
diff --git a/assets/stylesheets/vendors/bootstrap/grid.less b/theme/stylesheets/vendors/bootstrap/grid.less
index 44e3899..44e3899 100755
--- a/assets/stylesheets/vendors/bootstrap/grid.less
+++ b/theme/stylesheets/vendors/bootstrap/grid.less
diff --git a/assets/stylesheets/vendors/bootstrap/input-groups.less b/theme/stylesheets/vendors/bootstrap/input-groups.less
index 570f03f..570f03f 100755
--- a/assets/stylesheets/vendors/bootstrap/input-groups.less
+++ b/theme/stylesheets/vendors/bootstrap/input-groups.less
diff --git a/assets/stylesheets/vendors/bootstrap/jumbotron.less b/theme/stylesheets/vendors/bootstrap/jumbotron.less
index 8f482af..8f482af 100755
--- a/assets/stylesheets/vendors/bootstrap/jumbotron.less
+++ b/theme/stylesheets/vendors/bootstrap/jumbotron.less
diff --git a/assets/stylesheets/vendors/bootstrap/labels.less b/theme/stylesheets/vendors/bootstrap/labels.less
index cad5ce5..cad5ce5 100755
--- a/assets/stylesheets/vendors/bootstrap/labels.less
+++ b/theme/stylesheets/vendors/bootstrap/labels.less
diff --git a/assets/stylesheets/vendors/bootstrap/list-group.less b/theme/stylesheets/vendors/bootstrap/list-group.less
index 46cda40..46cda40 100755
--- a/assets/stylesheets/vendors/bootstrap/list-group.less
+++ b/theme/stylesheets/vendors/bootstrap/list-group.less
diff --git a/assets/stylesheets/vendors/bootstrap/media.less b/theme/stylesheets/vendors/bootstrap/media.less
index 5ad22cd..5ad22cd 100755
--- a/assets/stylesheets/vendors/bootstrap/media.less
+++ b/theme/stylesheets/vendors/bootstrap/media.less
diff --git a/assets/stylesheets/vendors/bootstrap/mixins.less b/theme/stylesheets/vendors/bootstrap/mixins.less
index 3f23020..3f23020 100755
--- a/assets/stylesheets/vendors/bootstrap/mixins.less
+++ b/theme/stylesheets/vendors/bootstrap/mixins.less
diff --git a/assets/stylesheets/vendors/bootstrap/modals.less b/theme/stylesheets/vendors/bootstrap/modals.less
index 7bc6c31..7bc6c31 100755
--- a/assets/stylesheets/vendors/bootstrap/modals.less
+++ b/theme/stylesheets/vendors/bootstrap/modals.less
diff --git a/assets/stylesheets/vendors/bootstrap/navbar.less b/theme/stylesheets/vendors/bootstrap/navbar.less
index 351e204..351e204 100755
--- a/assets/stylesheets/vendors/bootstrap/navbar.less
+++ b/theme/stylesheets/vendors/bootstrap/navbar.less
diff --git a/assets/stylesheets/vendors/bootstrap/navs.less b/theme/stylesheets/vendors/bootstrap/navs.less
index 6002a8c..6002a8c 100755
--- a/assets/stylesheets/vendors/bootstrap/navs.less
+++ b/theme/stylesheets/vendors/bootstrap/navs.less
diff --git a/assets/stylesheets/vendors/bootstrap/normalize.less b/theme/stylesheets/vendors/bootstrap/normalize.less
index a2e9c64..a2e9c64 100755
--- a/assets/stylesheets/vendors/bootstrap/normalize.less
+++ b/theme/stylesheets/vendors/bootstrap/normalize.less
diff --git a/assets/stylesheets/vendors/bootstrap/pager.less b/theme/stylesheets/vendors/bootstrap/pager.less
index 16993dd..16993dd 100755
--- a/assets/stylesheets/vendors/bootstrap/pager.less
+++ b/theme/stylesheets/vendors/bootstrap/pager.less
diff --git a/assets/stylesheets/vendors/bootstrap/pagination.less b/theme/stylesheets/vendors/bootstrap/pagination.less
index b480b38..b480b38 100755
--- a/assets/stylesheets/vendors/bootstrap/pagination.less
+++ b/theme/stylesheets/vendors/bootstrap/pagination.less
diff --git a/assets/stylesheets/vendors/bootstrap/panels.less b/theme/stylesheets/vendors/bootstrap/panels.less
index 2343b25..2343b25 100755
--- a/assets/stylesheets/vendors/bootstrap/panels.less
+++ b/theme/stylesheets/vendors/bootstrap/panels.less
diff --git a/assets/stylesheets/vendors/bootstrap/popovers.less b/theme/stylesheets/vendors/bootstrap/popovers.less
index 345bb1a..345bb1a 100755
--- a/assets/stylesheets/vendors/bootstrap/popovers.less
+++ b/theme/stylesheets/vendors/bootstrap/popovers.less
diff --git a/assets/stylesheets/vendors/bootstrap/print.less b/theme/stylesheets/vendors/bootstrap/print.less
index 1e4bffe..1e4bffe 100755
--- a/assets/stylesheets/vendors/bootstrap/print.less
+++ b/theme/stylesheets/vendors/bootstrap/print.less
diff --git a/assets/stylesheets/vendors/bootstrap/progress-bars.less b/theme/stylesheets/vendors/bootstrap/progress-bars.less
index 49e5df8..49e5df8 100755
--- a/assets/stylesheets/vendors/bootstrap/progress-bars.less
+++ b/theme/stylesheets/vendors/bootstrap/progress-bars.less
diff --git a/assets/stylesheets/vendors/bootstrap/responsive-utilities.less b/theme/stylesheets/vendors/bootstrap/responsive-utilities.less
index c756b23..c756b23 100755
--- a/assets/stylesheets/vendors/bootstrap/responsive-utilities.less
+++ b/theme/stylesheets/vendors/bootstrap/responsive-utilities.less
diff --git a/assets/stylesheets/vendors/bootstrap/scaffolding.less b/theme/stylesheets/vendors/bootstrap/scaffolding.less
index 53e1be5..53e1be5 100755
--- a/assets/stylesheets/vendors/bootstrap/scaffolding.less
+++ b/theme/stylesheets/vendors/bootstrap/scaffolding.less
diff --git a/assets/stylesheets/vendors/bootstrap/tables.less b/theme/stylesheets/vendors/bootstrap/tables.less
index 7543b16..7543b16 100755
--- a/assets/stylesheets/vendors/bootstrap/tables.less
+++ b/theme/stylesheets/vendors/bootstrap/tables.less
diff --git a/assets/stylesheets/vendors/bootstrap/theme.less b/theme/stylesheets/vendors/bootstrap/theme.less
index 92469c4..92469c4 100755
--- a/assets/stylesheets/vendors/bootstrap/theme.less
+++ b/theme/stylesheets/vendors/bootstrap/theme.less
diff --git a/assets/stylesheets/vendors/bootstrap/thumbnails.less b/theme/stylesheets/vendors/bootstrap/thumbnails.less
index 1adee9e..1adee9e 100755
--- a/assets/stylesheets/vendors/bootstrap/thumbnails.less
+++ b/theme/stylesheets/vendors/bootstrap/thumbnails.less
diff --git a/assets/stylesheets/vendors/bootstrap/tooltip.less b/theme/stylesheets/vendors/bootstrap/tooltip.less
index 5a95b84..5a95b84 100755
--- a/assets/stylesheets/vendors/bootstrap/tooltip.less
+++ b/theme/stylesheets/vendors/bootstrap/tooltip.less
diff --git a/assets/stylesheets/vendors/bootstrap/type.less b/theme/stylesheets/vendors/bootstrap/type.less
index c40a891..c40a891 100755
--- a/assets/stylesheets/vendors/bootstrap/type.less
+++ b/theme/stylesheets/vendors/bootstrap/type.less
diff --git a/assets/stylesheets/vendors/bootstrap/utilities.less b/theme/stylesheets/vendors/bootstrap/utilities.less
index 3d310e6..3d310e6 100755
--- a/assets/stylesheets/vendors/bootstrap/utilities.less
+++ b/theme/stylesheets/vendors/bootstrap/utilities.less
diff --git a/assets/stylesheets/vendors/bootstrap/variables.less b/theme/stylesheets/vendors/bootstrap/variables.less
index fa623e2..fa623e2 100755
--- a/assets/stylesheets/vendors/bootstrap/variables.less
+++ b/theme/stylesheets/vendors/bootstrap/variables.less
diff --git a/assets/stylesheets/vendors/bootstrap/wells.less b/theme/stylesheets/vendors/bootstrap/wells.less
index 865abc2..865abc2 100755
--- a/assets/stylesheets/vendors/bootstrap/wells.less
+++ b/theme/stylesheets/vendors/bootstrap/wells.less
diff --git a/assets/stylesheets/vendors/fontawesome/bordered-pulled.less b/theme/stylesheets/vendors/fontawesome/bordered-pulled.less
index 0c90eb5..0c90eb5 100644
--- a/assets/stylesheets/vendors/fontawesome/bordered-pulled.less
+++ b/theme/stylesheets/vendors/fontawesome/bordered-pulled.less
diff --git a/assets/stylesheets/vendors/fontawesome/core.less b/theme/stylesheets/vendors/fontawesome/core.less
index 6d223bc..6d223bc 100644
--- a/assets/stylesheets/vendors/fontawesome/core.less
+++ b/theme/stylesheets/vendors/fontawesome/core.less
diff --git a/assets/stylesheets/vendors/fontawesome/fixed-width.less b/theme/stylesheets/vendors/fontawesome/fixed-width.less
index 110289f..110289f 100644
--- a/assets/stylesheets/vendors/fontawesome/fixed-width.less
+++ b/theme/stylesheets/vendors/fontawesome/fixed-width.less
diff --git a/assets/stylesheets/vendors/fontawesome/font-awesome.less b/theme/stylesheets/vendors/fontawesome/font-awesome.less
index a853e0c..a853e0c 100644
--- a/assets/stylesheets/vendors/fontawesome/font-awesome.less
+++ b/theme/stylesheets/vendors/fontawesome/font-awesome.less
diff --git a/assets/stylesheets/vendors/fontawesome/icons.less b/theme/stylesheets/vendors/fontawesome/icons.less
index 948903a..948903a 100644
--- a/assets/stylesheets/vendors/fontawesome/icons.less
+++ b/theme/stylesheets/vendors/fontawesome/icons.less
diff --git a/assets/stylesheets/vendors/fontawesome/larger.less b/theme/stylesheets/vendors/fontawesome/larger.less
index c9d6467..c9d6467 100644
--- a/assets/stylesheets/vendors/fontawesome/larger.less
+++ b/theme/stylesheets/vendors/fontawesome/larger.less
diff --git a/assets/stylesheets/vendors/fontawesome/list.less b/theme/stylesheets/vendors/fontawesome/list.less
index eed9340..eed9340 100644
--- a/assets/stylesheets/vendors/fontawesome/list.less
+++ b/theme/stylesheets/vendors/fontawesome/list.less
diff --git a/assets/stylesheets/vendors/fontawesome/mixins.less b/theme/stylesheets/vendors/fontawesome/mixins.less
index 19e5a64..19e5a64 100644
--- a/assets/stylesheets/vendors/fontawesome/mixins.less
+++ b/theme/stylesheets/vendors/fontawesome/mixins.less
diff --git a/assets/stylesheets/vendors/fontawesome/path.less b/theme/stylesheets/vendors/fontawesome/path.less
index ba09126..ba09126 100644
--- a/assets/stylesheets/vendors/fontawesome/path.less
+++ b/theme/stylesheets/vendors/fontawesome/path.less
diff --git a/assets/stylesheets/vendors/fontawesome/rotated-flipped.less b/theme/stylesheets/vendors/fontawesome/rotated-flipped.less
index 8fff3a6..8fff3a6 100644
--- a/assets/stylesheets/vendors/fontawesome/rotated-flipped.less
+++ b/theme/stylesheets/vendors/fontawesome/rotated-flipped.less
diff --git a/assets/stylesheets/vendors/fontawesome/spinning.less b/theme/stylesheets/vendors/fontawesome/spinning.less
index 60828fe..60828fe 100644
--- a/assets/stylesheets/vendors/fontawesome/spinning.less
+++ b/theme/stylesheets/vendors/fontawesome/spinning.less
diff --git a/assets/stylesheets/vendors/fontawesome/stacked.less b/theme/stylesheets/vendors/fontawesome/stacked.less
index fc53fb0..fc53fb0 100644
--- a/assets/stylesheets/vendors/fontawesome/stacked.less
+++ b/theme/stylesheets/vendors/fontawesome/stacked.less
diff --git a/assets/stylesheets/vendors/fontawesome/variables.less b/theme/stylesheets/vendors/fontawesome/variables.less
index 364b4dc..364b4dc 100644
--- a/assets/stylesheets/vendors/fontawesome/variables.less
+++ b/theme/stylesheets/vendors/fontawesome/variables.less
diff --git a/templates/includes/book/exercise.html b/theme/templates/includes/book/exercise.html
index 1acbe79..1acbe79 100644
--- a/templates/includes/book/exercise.html
+++ b/theme/templates/includes/book/exercise.html
diff --git a/templates/includes/book/footer.html b/theme/templates/includes/book/footer.html
index 1112b14..1112b14 100644
--- a/templates/includes/book/footer.html
+++ b/theme/templates/includes/book/footer.html
diff --git a/templates/includes/book/header.html b/theme/templates/includes/book/header.html
index d3baf1d..d3baf1d 100644
--- a/templates/includes/book/header.html
+++ b/theme/templates/includes/book/header.html
diff --git a/templates/includes/book/progress.html b/theme/templates/includes/book/progress.html
index 176c95f..176c95f 100644
--- a/templates/includes/book/progress.html
+++ b/theme/templates/includes/book/progress.html
diff --git a/templates/includes/book/summary.html b/theme/templates/includes/book/summary.html
index 996ff3d..996ff3d 100644
--- a/templates/includes/book/summary.html
+++ b/theme/templates/includes/book/summary.html
diff --git a/templates/layout.html b/theme/templates/layout.html
index 47184b3..47184b3 100644
--- a/templates/layout.html
+++ b/theme/templates/layout.html
diff --git a/templates/page.html b/theme/templates/page.html
index b5595f0..b5595f0 100644
--- a/templates/page.html
+++ b/theme/templates/page.html