diff options
author | Samy Pessé <samypesse@gmail.com> | 2015-01-19 09:47:36 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2015-01-19 09:47:36 +0100 |
commit | ec586dd3cdf06e9567f5d3e4961022ddc3c94778 (patch) | |
tree | cc7825ab73110b4e6fbedee404427b052edffa17 /README.md | |
parent | 80432161708357bdcf0e00533d9e6d327636dab6 (diff) | |
download | gitbook-ec586dd3cdf06e9567f5d3e4961022ddc3c94778.zip gitbook-ec586dd3cdf06e9567f5d3e4961022ddc3c94778.tar.gz gitbook-ec586dd3cdf06e9567f5d3e4961022ddc3c94778.tar.bz2 |
Clear folder
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 263 |
1 files changed, 1 insertions, 262 deletions
@@ -1,265 +1,4 @@ GitBook ======= -[](https://travis-ci.org/GitbookIO/gitbook) -[](http://badge.fury.io/js/gitbook) - -GitBook is a command line tool (and Node.js library) for building beautiful books using GitHub/Git and Markdown. Here is an example: [Learn Javascript](https://www.gitbook.com/book/GitBookIO/javascript). You can publish book easily online using [gitbook.com](https://www.gitbook.com) and an [editor](https://github.com/GitbookIO/editor) is available for Windows, Mac and Linux. You can follow [@GitBookIO](https://twitter.com/GitBookIO) on Twitter. Complete documentation is available at [help.gitbook.io](http://help.gitbook.io/). - - - -## How to use it: - -GitBook can be installed from **NPM** using: - -``` -$ npm install gitbook -g -``` - -Create the directories and files for a book from its [SUMMARY.md](https://github.com/GitbookIO/gitbook#book-format) file using -``` -$ gitbook init -``` - -You can serve a repository as a book using: - -``` -$ gitbook serve ./repository -``` - -Or simply build the static website using: - -``` -$ gitbook build ./repository --output=./outputFolder -``` - -Options for commands `build` and `serve` are: - -``` --o, --output <directory> Path to output directory, defaults to ./_book --f, --format <name> Change generation format, defaults to site, availables are: site, page, ebook, json ---config <config file> Configuration file to use, defaults to book.js or book.json -``` - -GitBook loads the default configuration from a `book.json` file in the repository if it exists. - -Here are the options that can be stored in this file: - -```js -{ - // Folders to use for output - // Caution: it overrides the value from the command line - // It's not advised this option in the book.json - "output": null, - - // Generator to use for building - // Caution: it overrides the value from the command line - // It's not advised this option in the book.json - "generator": "site", - - // Book metadats (somes are extracted from the README by default) - "title": null, - "description": null, - "isbn": null, - - // For ebook format, the extension to use for generation (default is detected from output extension) - // "epub", "pdf", "mobi" - // Caution: it overrides the value from the command line - // It's not advised this option in the book.json - "extension": null, - - // Plugins list, can contain "-name" for removing default plugins - "plugins": [], - - // Global configuration for plugins - "pluginsConfig": { - "fontSettings": { - "theme": "sepia", "night" or "white", - "family": "serif" or "sans", - "size": 1 to 4 - } - }, - - // Variables for templating - "variables": {}, - - // Links in template (null: default, false: remove, string: new value) - "links": { - // Custom links at top of sidebar - "sidebar": { - "Custom link name": "https://customlink.com" - }, - - // Sharing links - "sharing": { - "google": null, - "facebook": null, - "twitter": null, - "weibo": null, - "all": null - } - }, - - - // Options for PDF generation - "pdf": { - // Add page numbers to the bottom of every page - "pageNumbers": false, - - // Font size for the fiel content - "fontSize": 12, - - // Paper size for the pdf - // Choices are [u’a0’, u’a1’, u’a2’, u’a3’, u’a4’, u’a5’, u’a6’, u’b0’, u’b1’, u’b2’, u’b3’, u’b4’, u’b5’, u’b6’, u’legal’, u’letter’] - "paperSize": "a4", - - // Margin (in pts) - // Note: 72 pts equals 1 inch - "margin": { - "right": 62, - "left": 62, - "top": 36, - "bottom": 36 - }, - - //Header HTML template. Available variables: _PAGENUM_, _TITLE_, _AUTHOR_ and _SECTION_. - "headerTemplate": null, - - //Footer HTML template. Available variables: _PAGENUM_, _TITLE_, _AUTHOR_ and _SECTION_. - "footerTemplate": null - } -} -``` - -You can publish your books to our index by visiting [GitBook.com](http://www.gitbook.com) - -## Output Formats - -GitBook can generate your book in the following formats: - -* **Static Website**: This is the default format. It generates a complete interactive static website that can be, for example, hosted on GitHub Pages. -* **eBook**: A complete eBook with exercise solutions at the end of the book. You need to have [ebook-convert](http://manual.calibre-ebook.com/cli/ebook-convert.html) installed. You can specify the eBook filename with the `-o` option, otherwise `book` will be used. - * Generate a **PDF** using: `gitbook pdf ./myrepo` - * Generate a **ePub** using: `gitbook epub ./myrepo` - * Generate a **MOBI** using: `gitbook mobi ./myrepo` -* **JSON**: This format is used for debugging or extracting metadata from a book. Generate this format using: ```gitbook build ./myrepo -f json```. - -## Book Format - -A book is a Git repository containing at least 2 files: `README.md` and `SUMMARY.md`. - -#### README.md - -Typically, this should be the introduction for your book. It will be automatically added to the final summary. - -#### SUMMARY.md - -The `SUMMARY.md` defines your book's structure. It should contain a list of chapters, linking to their respective pages. - -Example: - -```markdown -# Summary - -This is the summary of my book. - -* [section 1](section1/README.md) - * [example 1](section1/example1.md) - * [example 2](section1/example2.md) -* [section 2](section2/README.md) - * [example 1](section2/example1.md) -``` - -Files that are not included in `SUMMARY.md` will not be processed by `gitbook`. - -#### Multi-Languages - -GitBook supports building books written in multiple languages. Each language should be a sub-directory following the normal GitBook format, and a file named `LANGS.md` should be present at the root of the repository with the following format: - -```markdown -* [English](en/) -* [French](fr/) -* [Español](es/) -``` - -You can see a complete example with the [Learn Git](https://github.com/GitbookIO/git) book. - -#### Glossary - -Allows you to specify terms and their respective definitions to be displayed in the glossary. Based on those terms, `gitbook` will automatically build an index and highlight those terms in pages. - -The `GLOSSARY.md` format is very simple : - -```markdown -# term -Definition for this term - -# Another term -With it's definition, this can contain bold text and all other kinds of inline markup ... - -``` - -#### Ignoring files & folders - -GitBook will read the `.gitignore`, `.bookignore` and `.ignore` files to get a list of files and folders to skip. (The format inside those files follows the same convention as `.gitignore`). - -Best practices for the `.gitignore` is to ignore build files from **node.js** (`node_modules`, ...) and build files from GitBook: `_book`, `*.epub`, `*.mobi` and `*.pdf` ([Download GitBook.gitignore](https://github.com/github/gitignore/blob/master/GitBook.gitignore)). - -#### Cover - -A cover image can be set by creating a file: **/cover.jpg**. -The best resolution is **1800x2360**. The generation of the cover can be done automatically using the plugin [autocover](https://github.com/GitbookIO/plugin-autocover). - -A small version of the cover can also be set by creating a file: **/cover_small.jpg**. - -#### Custom Styles - -You can use your own custom stylesheet to change the style of the website or ebooks (pdf, epub, mobi). Create a `styles/website.css` (only for website output), `styles/ebook.css` (for all ebook outputs), `styles/pdf.css` (only for pdf output), `styles/epub.css` (for epub output) or `styles/mobi.css` (for mobi output). These paths can be changed in the `book.json`. - -#### Publish your book - -The platform [GitBook.com](https://www.gitbook.com/) is like an "Heroku for books": you can create a book on it (public, paid, or private) and update it using **git push**. - -#### Plugins - -Plugins can be used to extend your book's functionality. Read [GitbookIO/plugin](https://github.com/GitbookIO/plugin) for more information about how to build a plugin for GitBook. - -Plugins needed to build a book can be installed using: `gitbook install ./`. - -##### Official plugins: - -| Name | Description | -| ----- | ---- | -| [exercises](https://github.com/GitbookIO/plugin-exercises) | Add interactive exercises to your book. | -| [quizzes](https://github.com/GitbookIO/plugin-quizzes) | Add interactive quizzes to your book. | -| [mathjax](https://github.com/GitbookIO/plugin-mathjax) | Displays mathematical notation in the book. | -| [mixpanel](https://github.com/GitbookIO/plugin-mixpanel) | Mixpanel tracking for your book | -| [infinitescroll](https://github.com/GitbookIO/gitbook-plugin-infinitescroll) | Infinite Scrolling | - -##### Other plugins: - -| Name | Description | -| ----- | ---- | -| [Google Analytics](https://github.com/GitbookIO/plugin-ga) | Google Analytics tracking for your book | -| [Disqus](https://github.com/GitbookIO/plugin-disqus) | Disqus comments integration in your book | -| [Autocover](https://github.com/GitbookIO/plugin-autocover) | Generate a cover for your book | -| [Transform annoted quotes to notes](https://github.com/erixtekila/gitbook-plugin-richquotes) | Allow extra markdown markup to render blockquotes as nice notes | -| [Send code to console](https://github.com/erixtekila/gitbook-plugin-toconsole) | Evaluate javascript block in the browser inspector's console | -| [Revealable sections](https://github.com/mrpotes/gitbook-plugin-reveal) | Reveal sections of the page using buttons made from the first title in each section | -| [Markdown within HTML](https://github.com/mrpotes/gitbook-plugin-nestedmd) | Process markdown within HTML blocks - allows custom layout options for individual pages | -| [Bootstrap JavaScript plugins](https://github.com/mrpotes/gitbook-plugin-bootstrapjs) | Use the [Bootstrap JavaScript plugins](http://getbootstrap.com/javascript) in your online GitBook | -| [Piwik Open Analytics](https://github.com/emmanuel-keller/gitbook-plugin-piwik) | Piwik Open Analytics tracking for your book | -| [Heading Anchors](https://github.com/rlmv/gitbook-plugin-anchors) | Add linkable Github-style anchors to headings | -| [JSBin](https://github.com/jcouyang/gitbook-plugin-jsbin) | Embedded jsbin frame into your book | -| [GrVis](https://github.com/romanlytkin/gitbook-grvis) | Gitbook GrViz plugin is used to select from markdown dot and converting it into a picture format svg | -| [PlantUml](https://github.com/romanlytkin/gitbook-plantuml) | Gitbook PlantUml plugin is used to select from markdown uml and converting it into a picture format svg | -| [Mermaid](https://github.com/JozoVilcek/gitbook-plugin-mermaid) | Adds diagrams and flowcharts rendered by [mermaid](https://github.com/knsv/mermaid) | - -#### Debugging - -You can use the environment variable `DEBUG=true` to get better error messages (with stack trace). For example: - -``` -$ export DEBUG=true -$ gitbook build ./ -``` +:warning: This branch contains some test for a version 2.0. |