diff options
author | Samy Pessé <samypesse@gmail.com> | 2015-03-14 23:23:28 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2015-03-14 23:23:28 +0100 |
commit | 94485621560152cf197dc8bd603774c46de2f0ef (patch) | |
tree | 189aa8349423187a807dd2c2a4b3639d1a752213 /lib/index.js | |
parent | 8320484b88f2481dad276b1912831110fdf75bcd (diff) | |
download | gitbook-94485621560152cf197dc8bd603774c46de2f0ef.zip gitbook-94485621560152cf197dc8bd603774c46de2f0ef.tar.gz gitbook-94485621560152cf197dc8bd603774c46de2f0ef.tar.bz2 |
Add editorconfig and normalize indent
Diffstat (limited to 'lib/index.js')
-rw-r--r-- | lib/index.js | 378 |
1 files changed, 189 insertions, 189 deletions
diff --git a/lib/index.js b/lib/index.js index 95abd43..7a54793 100644 --- a/lib/index.js +++ b/lib/index.js @@ -12,199 +12,199 @@ var watch = require("./utils/watch"); var logger = require("./utils/logger"); var LOG_OPTION = { - name: "log", - description: "Minimum log level to display", - values: _.chain(logger.LEVELS).keys().map(stringUtils.toLowerCase).value(), - defaults: "info" + name: "log", + description: "Minimum log level to display", + values: _.chain(logger.LEVELS).keys().map(stringUtils.toLowerCase).value(), + defaults: "info" }; var FORMAT_OPTION = { - name: "format", - description: "Format to build to", - values: ["website", "json", "ebook"], - defaults: "website" + name: "format", + description: "Format to build to", + values: ["website", "json", "ebook"], + defaults: "website" }; module.exports = { - Book: Book, - LOG_LEVELS: logger.LEVELS, - - commands: _.flatten([ - { - name: "build [book] [output]", - description: "build a book", - options: [ - FORMAT_OPTION, - LOG_OPTION - ], - exec: function(args, kwargs) { - var input = args[0] || process.cwd(); - var output = args[1] || path.join(input, "_book"); - - var book = new Book(input, _.extend({}, { - 'config': { - 'output': output - }, - 'logLevel': kwargs.log - })); - - return book.parse() - .then(function() { - return book.generate(kwargs.format); - }) - .then(function(){ - console.log(""); - console.log(color.green("Done, without error")); - }); - } - }, - - _.map(["pdf", "epub", "mobi"], function(ebookType) { - return { - name: ebookType+" [book] [output]", - description: "build a book to "+ebookType, - options: [ - LOG_OPTION - ], - exec: function(args, kwargs) { - var input = args[0] || process.cwd(); - var output = args[1]; - - var book = new Book(input, _.extend({}, { - 'logLevel': kwargs.log - })); - - return book.parse() - .then(function() { - return book.generateFile(output, { - ebookFormat: ebookType - }); - }) - .then(function(){ - console.log(""); - console.log(color.green("Done, without error")); - }); - } - }; - }), - - { - name: "serve [book]", - description: "Build then serve a gitbook from a directory", - options: [ - { - name: "port", - description: "Port for server to listen on", - defaults: 4000 - }, - { - name: "lrport", - description: "Port for livereload server to listen on", - defaults: 35729 - }, - { - name: "watch", - description: "Enable/disable file watcher", - defaults: true - }, - FORMAT_OPTION, - LOG_OPTION - ], - exec: function(args, kwargs) { - var input = args[0] || process.cwd(); - var server = new Server(); - - // Init livereload server - var lrServer = tinylr({}); - var lrPath = undefined; - - var generate = function() { - if (server.isRunning()) console.log("Stopping server"); - - return server.stop() - .then(function() { - var book = new Book(input, _.extend({}, { - 'config': { - 'defaultsPlugins': ["livereload"] - }, - 'logLevel': kwargs.log - })); - - return book.parse() - .then(function() { - return book.generate(kwargs.format); - }) - .thenResolve(book); - }) - .then(function(book) { - console.log(); - console.log('Starting server ...'); - return server.start(book.options.output, kwargs.port) - .then(function() { - console.log('Serving book on http://localhost:'+kwargs.port); - - if (lrPath) { - // trigger livereload - lrServer.changed({ - body: { - files: [lrPath] - } - }); - } - - if (!kwargs.watch) return; - - return watch(book.root) - .then(function(filepath) { - // set livereload path - lrPath = filepath; - console.log("Restart after change in files"); - console.log(''); - return generate(); - }) - }) - }); - }; - - return Q.nfcall(lrServer.listen.bind(lrServer), kwargs.lrport) - .then(function() { - console.log('Live reload server started on port:', kwargs.lrport); - console.log('Press CTRL+C to quit ...'); - console.log('') - return generate(); - }); - } - }, - - { - name: "install [book]", - description: "install plugins dependencies", - exec: function(args, kwargs) { - var input = args[0] || process.cwd(); - - var book = new Book(input); - - return book.config.load() - .then(function() { - return book.plugins.install(); - }) - .then(function(){ - console.log(""); - console.log(color.green("Done, without error")); - }); - } - }, - - { - name: "init [directory]", - description: "create files and folders based on contents of SUMMARY.md", - exec: function(args, kwargs) { - return Book.init(args[0] || process.cwd()) - .then(function(){ - console.log(""); - console.log(color.green("Done, without error")); - }); - } - } - ]) + Book: Book, + LOG_LEVELS: logger.LEVELS, + + commands: _.flatten([ + { + name: "build [book] [output]", + description: "build a book", + options: [ + FORMAT_OPTION, + LOG_OPTION + ], + exec: function(args, kwargs) { + var input = args[0] || process.cwd(); + var output = args[1] || path.join(input, "_book"); + + var book = new Book(input, _.extend({}, { + 'config': { + 'output': output + }, + 'logLevel': kwargs.log + })); + + return book.parse() + .then(function() { + return book.generate(kwargs.format); + }) + .then(function(){ + console.log(""); + console.log(color.green("Done, without error")); + }); + } + }, + + _.map(["pdf", "epub", "mobi"], function(ebookType) { + return { + name: ebookType+" [book] [output]", + description: "build a book to "+ebookType, + options: [ + LOG_OPTION + ], + exec: function(args, kwargs) { + var input = args[0] || process.cwd(); + var output = args[1]; + + var book = new Book(input, _.extend({}, { + 'logLevel': kwargs.log + })); + + return book.parse() + .then(function() { + return book.generateFile(output, { + ebookFormat: ebookType + }); + }) + .then(function(){ + console.log(""); + console.log(color.green("Done, without error")); + }); + } + }; + }), + + { + name: "serve [book]", + description: "Build then serve a gitbook from a directory", + options: [ + { + name: "port", + description: "Port for server to listen on", + defaults: 4000 + }, + { + name: "lrport", + description: "Port for livereload server to listen on", + defaults: 35729 + }, + { + name: "watch", + description: "Enable/disable file watcher", + defaults: true + }, + FORMAT_OPTION, + LOG_OPTION + ], + exec: function(args, kwargs) { + var input = args[0] || process.cwd(); + var server = new Server(); + + // Init livereload server + var lrServer = tinylr({}); + var lrPath = undefined; + + var generate = function() { + if (server.isRunning()) console.log("Stopping server"); + + return server.stop() + .then(function() { + var book = new Book(input, _.extend({}, { + 'config': { + 'defaultsPlugins': ["livereload"] + }, + 'logLevel': kwargs.log + })); + + return book.parse() + .then(function() { + return book.generate(kwargs.format); + }) + .thenResolve(book); + }) + .then(function(book) { + console.log(); + console.log('Starting server ...'); + return server.start(book.options.output, kwargs.port) + .then(function() { + console.log('Serving book on http://localhost:'+kwargs.port); + + if (lrPath) { + // trigger livereload + lrServer.changed({ + body: { + files: [lrPath] + } + }); + } + + if (!kwargs.watch) return; + + return watch(book.root) + .then(function(filepath) { + // set livereload path + lrPath = filepath; + console.log("Restart after change in files"); + console.log(''); + return generate(); + }) + }) + }); + }; + + return Q.nfcall(lrServer.listen.bind(lrServer), kwargs.lrport) + .then(function() { + console.log('Live reload server started on port:', kwargs.lrport); + console.log('Press CTRL+C to quit ...'); + console.log('') + return generate(); + }); + } + }, + + { + name: "install [book]", + description: "install plugins dependencies", + exec: function(args, kwargs) { + var input = args[0] || process.cwd(); + + var book = new Book(input); + + return book.config.load() + .then(function() { + return book.plugins.install(); + }) + .then(function(){ + console.log(""); + console.log(color.green("Done, without error")); + }); + } + }, + + { + name: "init [directory]", + description: "create files and folders based on contents of SUMMARY.md", + exec: function(args, kwargs) { + return Book.init(args[0] || process.cwd()) + .then(function(){ + console.log(""); + console.log(color.green("Done, without error")); + }); + } + } + ]) }; |