zola/README.md

98 lines
4.6 KiB
Markdown
Raw Normal View History

# Gutenberg
[![Build Status](https://travis-ci.org/Keats/gutenberg.svg?branch=master)](https://travis-ci.org/Keats/gutenberg)
[![Build status](https://ci.appveyor.com/api/projects/status/h4t9r6h5gom839q0/branch/master?svg=true)](https://ci.appveyor.com/project/Keats/gutenberg/branch/master)
2018-03-09 11:53:13 +00:00
A fast static site generator in a single binary with everything built-in.
2017-10-19 13:10:31 +00:00
Documentation is available on [its site](https://www.getgutenberg.io/documentation/getting-started/installation/) or
in the `docs/content` folder of the repository.
2017-03-30 04:15:55 +00:00
2018-03-07 16:52:33 +00:00
## Comparisons with other static site generators
| | Gutenberg | Cobalt | Hugo | Pelican |
|--------------------------|-----------|--------|------|---------|
| Single binary | ✔ | ✔ | ✔ | ✕ |
| Language | Rust | Rust | Go | Python |
| Syntax highlighting | ✔ | ✔ | ✔ | ✔ |
2018-07-31 13:32:32 +00:00
| Sass compilation | ✔ | ✔ | ✔ | ✔ |
2018-03-12 16:55:59 +00:00
| Assets co-location | ✔ | ✔ | ✔ | ✔ |
2018-03-07 16:52:33 +00:00
| i18n | ✕ | ✕ | ✔ | ✔ |
2018-06-25 17:13:21 +00:00
| Image processing | ✔ | ✕ | ✔ | ✔ |
2018-03-07 16:52:33 +00:00
| Sane template engine | ✔ | ✔ | ✕✕✕ | ✔ |
| Themes | ✔ | ✕ | ✔ | ✔ |
| Shortcodes | ✔ | ✕ | ✔ | ✔ |
| Internal links | ✔ | ✕ | ✔ | ✔ |
2018-07-31 14:48:52 +00:00
| Link checker | ✔ | ✕ | ✕ | ✔ |
2018-03-07 16:52:33 +00:00
| Table of contents | ✔ | ✕ | ✔ | ✔ |
| Automatic header anchors | ✔ | ✕ | ✔ | ✔ |
2018-03-12 15:39:53 +00:00
| Aliases | ✔ | ✕ | ✔ | ✔ |
| Pagination | ✔ | ✕ | ✔ | ✔ |
| Custom taxonomies | ✔ | ✕ | ✔ | ✕ |
2018-04-07 07:59:37 +00:00
| Search | ✔ | ✕ | ✕ | ✔ |
2018-03-12 16:55:59 +00:00
| Data files | ✕ | ✔ | ✔ | ✕ |
2018-07-31 14:48:52 +00:00
| LiveReload | ✔ | ✕ | ✔ | ✔ |
| Netlify support | ✔ | ✕ | ✔ | ✕ |
2018-03-07 16:52:33 +00:00
Supported content formats:
- Gutenberg: markdown
- Cobalt: markdown
- Hugo: markdown, asciidoc, org-mode
- Pelican: reStructuredText, markdown, asciidoc, org-mode, whatever-you-want
Note that many features of Pelican are coming from plugins, which might be tricky
2018-07-31 15:10:46 +00:00
to use because of version mismatch or lacking documentation. Netlify supports Python
and Pipenv but you still need to install your dependencies manually.
2018-03-07 16:52:33 +00:00
## Contributing
As the documentation site is automatically built on commits to master, all development
should happen on the `next` branch, unless it is fixing the current documentation.
2017-05-30 10:23:07 +00:00
If you want a feature added or modified, please open an issue to discuss it before doing a PR.
### Adding syntax highlighting languages and themes
#### Adding a syntax
Syntax highlighting depends on submodules so ensure you load them first:
2017-10-03 15:21:18 +00:00
```bash
2018-05-06 20:58:39 +00:00
$ git submodule update --init
```
2017-10-03 15:21:18 +00:00
Gutenberg only works with syntaxes in the `.sublime-syntax` format. If your syntax
is in `.tmLanguage` format, open it in Sublime Text and convert it to `sublime-syntax` by clicking on
Tools > Developer > New Syntax from ... and put it at the root of `sublime_syntaxes`.
You can also add a submodule to the repository of the wanted syntax:
```bash
$ cd sublime_syntaxes
2018-01-29 18:10:18 +00:00
$ git submodule add https://github.com/elm-community/SublimeElmLanguageSupport
```
Note that you can also only copy manually the updated syntax definition file but this means
Gutenberg won't be able to automatically update it.
You can check for any updates to the current packages by running:
```bash
$ git submodule update --remote --merge
```
2018-05-06 20:58:39 +00:00
And finally from the root of the components/highlighting crate run the following command:
```bash
2017-08-10 00:14:48 +00:00
$ cargo run --example generate_sublime synpack ../../sublime_syntaxes ../../sublime_syntaxes/newlines.packdump ../../sublime_syntaxes/nonewlines.packdump
```
#### Adding a theme
2017-10-20 05:42:01 +00:00
A gallery containing lots of themes is located at https://tmtheme-editor.herokuapp.com/#!/editor/theme/Agola%20Dark.
More themes can be easily added to gutenberg, just make a PR with the wanted theme added in the `sublime_themes` directory
2017-08-10 00:14:48 +00:00
and run the following command from the root of the components/rendering:
```bash
2017-08-10 00:14:48 +00:00
$ cargo run --example generate_sublime themepack ../../sublime_themes ../../sublime_themes/all.themedump
```
You should see the list of themes being added.