mirror of
https://github.com/GitbookIO/gitbook.git
synced 2026-09-12 05:48:57 +00:00
80 lines
2.1 KiB
JavaScript
80 lines
2.1 KiB
JavaScript
var options = require('./options');
|
|
var getBook = require('./getBook');
|
|
|
|
var Parse = require('../parse');
|
|
|
|
function printBook(book) {
|
|
var logger = book.getLogger();
|
|
|
|
var config = book.getConfig();
|
|
var configFile = config.getFile();
|
|
|
|
var summary = book.getSummary();
|
|
var summaryFile = summary.getFile();
|
|
|
|
var readme = book.getReadme();
|
|
var readmeFile = readme.getFile();
|
|
|
|
var glossary = book.getGlossary();
|
|
var glossaryFile = glossary.getFile();
|
|
|
|
if (configFile.exists()) {
|
|
logger.info.ln('Configuration file is', configFile.getPath());
|
|
}
|
|
|
|
if (readmeFile.exists()) {
|
|
logger.info.ln('Introduction file is', readmeFile.getPath());
|
|
}
|
|
|
|
if (glossaryFile.exists()) {
|
|
logger.info.ln('Glossary file is', glossaryFile.getPath());
|
|
}
|
|
|
|
if (summaryFile.exists()) {
|
|
logger.info.ln('Table of Contents file is', summaryFile.getPath());
|
|
}
|
|
}
|
|
|
|
function printMultingualBook(book) {
|
|
var logger = book.getLogger();
|
|
var languages = book.getLanguages();
|
|
var books = book.getBooks();
|
|
|
|
logger.info.ln(languages.size + ' languages');
|
|
|
|
languages.forEach(function(lang) {
|
|
logger.info.ln('Language:', lang.getTitle());
|
|
printBook(books.get(lang.getID()));
|
|
logger.info.ln('');
|
|
});
|
|
}
|
|
|
|
module.exports = {
|
|
name: 'parse [book]',
|
|
description: 'parse and print debug information about a book',
|
|
options: [
|
|
options.log
|
|
],
|
|
exec: function(args, kwargs) {
|
|
var book = getBook(args, kwargs);
|
|
var logger = book.getLogger();
|
|
|
|
return Parse.parseBook(book)
|
|
.then(function(resultBook) {
|
|
var rootFolder = book.getRoot();
|
|
var contentFolder = book.getContentRoot();
|
|
|
|
logger.info.ln('Book located in:', rootFolder);
|
|
if (contentFolder != rootFolder) {
|
|
logger.info.ln('Content located in:', contentFolder);
|
|
}
|
|
|
|
if (resultBook.isMultilingual()) {
|
|
printMultingualBook(resultBook);
|
|
} else {
|
|
printBook(resultBook);
|
|
}
|
|
});
|
|
}
|
|
};
|