@@ -4,7 +4,7 @@ services: docker | |||
env: | |||
global: | |||
- CRATE_NAME=gutenberg | |||
- CRATE_NAME=zola | |||
matrix: | |||
include: | |||
@@ -4,7 +4,7 @@ | |||
### Breaking | |||
- Gutenberg has changed name to REPLACE_ME! | |||
- Gutenberg has changed name to `zola`! | |||
- The `pagers` variable of Paginator objects has been removed | |||
- `section.subsections` is now an array of paths to be used with the `get_section` | |||
Tera function | |||
@@ -810,28 +810,6 @@ dependencies = [ | |||
"regex 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "gutenberg" | |||
version = "0.5.0" | |||
dependencies = [ | |||
"actix-web 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"notify 4.0.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rebuild 0.1.0", | |||
"site 0.1.0", | |||
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
"ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "h2" | |||
version = "0.1.13" | |||
@@ -2873,6 +2851,28 @@ dependencies = [ | |||
"linked-hash-map 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[[package]] | |||
name = "zola" | |||
version = "0.5.0" | |||
dependencies = [ | |||
"actix-web 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"errors 0.1.0", | |||
"front_matter 0.1.0", | |||
"lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"notify 4.0.6 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"rebuild 0.1.0", | |||
"site 0.1.0", | |||
"termcolor 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"toml 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", | |||
"utils 0.1.0", | |||
"ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", | |||
] | |||
[metadata] | |||
"checksum actix 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "710e449bb7720ad245a7101f3698ebc743588e0f4ba2b07fe9d74323e348b835" | |||
"checksum actix-net 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6681a31050ab951f09050f08c5ddb4189659b8bca93b629b26547208861d1401" | |||
@@ -1,12 +1,12 @@ | |||
[package] | |||
name = "gutenberg" | |||
name = "zola" | |||
version = "0.5.0" | |||
authors = ["Vincent Prouillet <prouillet.vincent@gmail.com>"] | |||
license = "MIT" | |||
readme = "README.md" | |||
description = "A fast static site generator with everything built-in" | |||
homepage = "https://github.com/Keats/gutenberg" | |||
repository = "https://github.com/Keats/gutenberg" | |||
homepage = "https://www.getzola.org" | |||
repository = "https://github.com/getzola/zola" | |||
keywords = ["static", "site", "generator", "blog"] | |||
# build = "build.rs" | |||
@@ -14,7 +14,7 @@ keywords = ["static", "site", "generator", "blog"] | |||
clap = "2" | |||
[[bin]] | |||
name = "gutenberg" | |||
name = "zola" | |||
[dependencies] | |||
atty = "0.2.11" | |||
@@ -1,15 +1,15 @@ | |||
# Gutenberg | |||
# zola (né 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) | |||
A fast static site generator in a single binary with everything built-in. | |||
Documentation is available on [its site](https://www.getgutenberg.io/documentation/getting-started/installation/) or | |||
Documentation is available on [its site](https://www.getzola.org/documentation/getting-started/installation/) or | |||
in the `docs/content` folder of the repository. | |||
## Comparisons with other static site generators | |||
| | Gutenberg | Cobalt | Hugo | Pelican | | |||
| | Zola | Cobalt | Hugo | Pelican | | |||
|:-------------------------------:|:---------:|--------|------|---------| | |||
| Single binary | âś” | âś” | âś” | âś• | | |||
| Language | Rust | Rust | Go | Python | | |||
@@ -31,12 +31,13 @@ in the `docs/content` folder of the repository. | |||
| Search | âś” | âś• | âś• | âś” | | |||
| Data files | âś” | âś” | âś” | âś• | | |||
| LiveReload | âś” | âś• | âś” | âś” | | |||
| Netlify support | âś” | âś• | âś” | âś• | | |||
| Netlify support | ~ | âś• | âś” | âś• | | |||
| Breadcrumbds | âś” | âś• | âś• | âś” | | |||
### Supported content formats | |||
- Gutenberg: markdown | |||
- Zola: markdown | |||
- Cobalt: markdown | |||
- Hugo: markdown, asciidoc, org-mode | |||
- Pelican: reStructuredText, markdown, asciidoc, org-mode, whatever-you-want | |||
@@ -67,7 +68,7 @@ Syntax highlighting depends on submodules so ensure you load them first: | |||
$ git submodule update --init | |||
``` | |||
Gutenberg only works with syntaxes in the `.sublime-syntax` format. If your syntax | |||
Zola 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`. | |||
@@ -79,7 +80,7 @@ $ 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. | |||
Zola won't be able to automatically update it. | |||
You can check for any updates to the current packages by running: | |||
@@ -95,7 +96,7 @@ $ cargo run --example generate_sublime synpack ../../sublime_syntaxes ../../subl | |||
#### Adding a theme | |||
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 | |||
More themes can be easily added to Zola, just make a PR with the wanted theme added in the `sublime_themes` directory | |||
and run the following command from the root of the components/rendering: | |||
```bash | |||
@@ -6,7 +6,7 @@ os: Visual Studio 2017 | |||
environment: | |||
global: | |||
RUST_VERSION: stable | |||
CRATE_NAME: gutenberg | |||
CRATE_NAME: zola | |||
matrix: | |||
- target: x86_64-pc-windows-msvc | |||
@@ -29,7 +29,7 @@ test_script: | |||
) | |||
before_deploy: | |||
- cargo rustc --target %TARGET% --release --bin gutenberg -- -C lto | |||
- cargo rustc --target %TARGET% --release --bin zola -- -C lto | |||
- ps: ci\before_deploy.ps1 | |||
deploy: | |||
@@ -8,8 +8,8 @@ include!("src/cli.rs"); | |||
fn main() { | |||
// disabled below as it fails in CI | |||
// let mut app = build_cli(); | |||
// app.gen_completions("gutenberg", Shell::Bash, "completions/"); | |||
// app.gen_completions("gutenberg", Shell::Fish, "completions/"); | |||
// app.gen_completions("gutenberg", Shell::Zsh, "completions/"); | |||
// app.gen_completions("gutenberg", Shell::PowerShell, "completions/"); | |||
// app.gen_completions("zola", Shell::Bash, "completions/"); | |||
// app.gen_completions("zola", Shell::Fish, "completions/"); | |||
// app.gen_completions("zola", Shell::Zsh, "completions/"); | |||
// app.gen_completions("zola", Shell::PowerShell, "completions/"); | |||
} |
@@ -10,8 +10,7 @@ Set-Location $STAGE | |||
$ZIP = "$SRC_DIR\$($Env:CRATE_NAME)-$($Env:APPVEYOR_REPO_TAG_NAME)-$($Env:TARGET).zip" | |||
# TODO Update this to package the right artifacts | |||
Copy-Item "$SRC_DIR\target\$($Env:TARGET)\release\gutenberg.exe" '.\' | |||
Copy-Item "$SRC_DIR\target\$($Env:TARGET)\release\zola.exe" '.\' | |||
7z a "$ZIP" * | |||
@@ -17,11 +17,9 @@ main() { | |||
test -f Cargo.lock || cargo generate-lockfile | |||
# TODO Update this to build the artifacts that matter to you | |||
cross rustc --bin gutenberg --target $TARGET --release -- -C lto | |||
cross rustc --bin zola --target $TARGET --release -- -C lto | |||
# TODO Update this to package the right artifacts | |||
cp target/$TARGET/release/gutenberg $stage/ | |||
cp target/$TARGET/release/zola $stage/ | |||
cd $stage | |||
tar czf $src/$CRATE_NAME-$TRAVIS_TAG-$TARGET.tar.gz * | |||
@@ -1,8 +1,8 @@ | |||
#compdef gutenberg | |||
#compdef zola | |||
autoload -U is-at-least | |||
_gutenberg() { | |||
_zola() { | |||
typeset -A opt_args | |||
typeset -a _arguments_options | |||
local ret=1 | |||
@@ -21,14 +21,14 @@ _gutenberg() { | |||
'--help[Prints help information]' \ | |||
'-V[Prints version information]' \ | |||
'--version[Prints version information]' \ | |||
":: :_gutenberg_commands" \ | |||
"*::: :->gutenberg" \ | |||
":: :_zola_commands" \ | |||
"*::: :->zola" \ | |||
&& ret=0 | |||
case $state in | |||
(gutenberg) | |||
(zola) | |||
words=($line[1] "${words[@]}") | |||
(( CURRENT += 1 )) | |||
curcontext="${curcontext%:*:*}:gutenberg-command-$line[1]:" | |||
curcontext="${curcontext%:*:*}:zola-command-$line[1]:" | |||
case $line[1] in | |||
(init) | |||
_arguments "${_arguments_options[@]}" \ | |||
@@ -80,43 +80,43 @@ _arguments "${_arguments_options[@]}" \ | |||
esac | |||
} | |||
(( $+functions[_gutenberg_commands] )) || | |||
_gutenberg_commands() { | |||
(( $+functions[_zola_commands] )) || | |||
_zola_commands() { | |||
local commands; commands=( | |||
"init:Create a new Gutenberg project" \ | |||
"init:Create a new Zola project" \ | |||
"build:Builds the site" \ | |||
"serve:Serve the site. Rebuild and reload on change automatically" \ | |||
"help:Prints this message or the help of the given subcommand(s)" \ | |||
) | |||
_describe -t commands 'gutenberg commands' commands "$@" | |||
_describe -t commands 'zola commands' commands "$@" | |||
} | |||
(( $+functions[_gutenberg__build_commands] )) || | |||
_gutenberg__build_commands() { | |||
(( $+functions[_zola__build_commands] )) || | |||
_zola__build_commands() { | |||
local commands; commands=( | |||
) | |||
_describe -t commands 'gutenberg build commands' commands "$@" | |||
_describe -t commands 'zola build commands' commands "$@" | |||
} | |||
(( $+functions[_gutenberg__help_commands] )) || | |||
_gutenberg__help_commands() { | |||
(( $+functions[_zola__help_commands] )) || | |||
_zola__help_commands() { | |||
local commands; commands=( | |||
) | |||
_describe -t commands 'gutenberg help commands' commands "$@" | |||
_describe -t commands 'zola help commands' commands "$@" | |||
} | |||
(( $+functions[_gutenberg__init_commands] )) || | |||
_gutenberg__init_commands() { | |||
(( $+functions[_zola__init_commands] )) || | |||
_zola__init_commands() { | |||
local commands; commands=( | |||
) | |||
_describe -t commands 'gutenberg init commands' commands "$@" | |||
_describe -t commands 'zola init commands' commands "$@" | |||
} | |||
(( $+functions[_gutenberg__serve_commands] )) || | |||
_gutenberg__serve_commands() { | |||
(( $+functions[_zola__serve_commands] )) || | |||
_zola__serve_commands() { | |||
local commands; commands=( | |||
) | |||
_describe -t commands 'gutenberg serve commands' commands "$@" | |||
_describe -t commands 'zola serve commands' commands "$@" | |||
} | |||
_gutenberg "$@" | |||
_zola "$@" |
@@ -2,12 +2,12 @@ | |||
using namespace System.Management.Automation | |||
using namespace System.Management.Automation.Language | |||
Register-ArgumentCompleter -Native -CommandName 'gutenberg' -ScriptBlock { | |||
Register-ArgumentCompleter -Native -CommandName 'zola' -ScriptBlock { | |||
param($wordToComplete, $commandAst, $cursorPosition) | |||
$commandElements = $commandAst.CommandElements | |||
$command = @( | |||
'gutenberg' | |||
'zola' | |||
for ($i = 1; $i -lt $commandElements.Count; $i++) { | |||
$element = $commandElements[$i] | |||
if ($element -isnot [StringConstantExpressionAst] -or | |||
@@ -19,27 +19,27 @@ Register-ArgumentCompleter -Native -CommandName 'gutenberg' -ScriptBlock { | |||
}) -join ';' | |||
$completions = @(switch ($command) { | |||
'gutenberg' { | |||
'zola' { | |||
[CompletionResult]::new('-c', 'c', [CompletionResultType]::ParameterName, 'Path to a config file other than config.toml') | |||
[CompletionResult]::new('--config', 'config', [CompletionResultType]::ParameterName, 'Path to a config file other than config.toml') | |||
[CompletionResult]::new('-h', 'h', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('--help', 'help', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('-V', 'V', [CompletionResultType]::ParameterName, 'Prints version information') | |||
[CompletionResult]::new('--version', 'version', [CompletionResultType]::ParameterName, 'Prints version information') | |||
[CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Create a new Gutenberg project') | |||
[CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Create a new Zola project') | |||
[CompletionResult]::new('build', 'build', [CompletionResultType]::ParameterValue, 'Builds the site') | |||
[CompletionResult]::new('serve', 'serve', [CompletionResultType]::ParameterValue, 'Serve the site. Rebuild and reload on change automatically') | |||
[CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Prints this message or the help of the given subcommand(s)') | |||
break | |||
} | |||
'gutenberg;init' { | |||
'zola;init' { | |||
[CompletionResult]::new('-h', 'h', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('--help', 'help', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('-V', 'V', [CompletionResultType]::ParameterName, 'Prints version information') | |||
[CompletionResult]::new('--version', 'version', [CompletionResultType]::ParameterName, 'Prints version information') | |||
break | |||
} | |||
'gutenberg;build' { | |||
'zola;build' { | |||
[CompletionResult]::new('-u', 'u', [CompletionResultType]::ParameterName, 'Force the base URL to be that value (default to the one in config.toml)') | |||
[CompletionResult]::new('--base-url', 'base-url', [CompletionResultType]::ParameterName, 'Force the base URL to be that value (default to the one in config.toml)') | |||
[CompletionResult]::new('-o', 'o', [CompletionResultType]::ParameterName, 'Outputs the generated site in the given path') | |||
@@ -50,7 +50,7 @@ Register-ArgumentCompleter -Native -CommandName 'gutenberg' -ScriptBlock { | |||
[CompletionResult]::new('--version', 'version', [CompletionResultType]::ParameterName, 'Prints version information') | |||
break | |||
} | |||
'gutenberg;serve' { | |||
'zola;serve' { | |||
[CompletionResult]::new('-i', 'i', [CompletionResultType]::ParameterName, 'Interface to bind on') | |||
[CompletionResult]::new('--interface', 'interface', [CompletionResultType]::ParameterName, 'Interface to bind on') | |||
[CompletionResult]::new('-p', 'p', [CompletionResultType]::ParameterName, 'Which port to use') | |||
@@ -65,7 +65,7 @@ Register-ArgumentCompleter -Native -CommandName 'gutenberg' -ScriptBlock { | |||
[CompletionResult]::new('--version', 'version', [CompletionResultType]::ParameterName, 'Prints version information') | |||
break | |||
} | |||
'gutenberg;help' { | |||
'zola;help' { | |||
[CompletionResult]::new('-h', 'h', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('--help', 'help', [CompletionResultType]::ParameterName, 'Prints help information') | |||
[CompletionResult]::new('-V', 'V', [CompletionResultType]::ParameterName, 'Prints version information') |
@@ -1,137 +0,0 @@ | |||
_gutenberg() { | |||
local i cur prev opts cmds | |||
COMPREPLY=() | |||
cur="${COMP_WORDS[COMP_CWORD]}" | |||
prev="${COMP_WORDS[COMP_CWORD-1]}" | |||
cmd="" | |||
opts="" | |||
for i in ${COMP_WORDS[@]} | |||
do | |||
case "${i}" in | |||
gutenberg) | |||
cmd="gutenberg" | |||
;; | |||
build) | |||
cmd+="__build" | |||
;; | |||
help) | |||
cmd+="__help" | |||
;; | |||
init) | |||
cmd+="__init" | |||
;; | |||
serve) | |||
cmd+="__serve" | |||
;; | |||
*) | |||
;; | |||
esac | |||
done | |||
case "${cmd}" in | |||
gutenberg) | |||
opts=" -c -h -V --config --help --version init build serve help" | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
fi | |||
case "${prev}" in | |||
*) | |||
COMPREPLY=() | |||
;; | |||
esac | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__build) | |||
opts=" -h -V -u --help --version --base-url " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
fi | |||
case "${prev}" in | |||
--base-url) | |||
COMPREPLY=("<base_url>") | |||
return 0 | |||
;; | |||
-u) | |||
COMPREPLY=("<base_url>") | |||
return 0 | |||
;; | |||
*) | |||
COMPREPLY=() | |||
;; | |||
esac | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__help) | |||
opts=" -h -V --help --version " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
fi | |||
case "${prev}" in | |||
*) | |||
COMPREPLY=() | |||
;; | |||
esac | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__init) | |||
opts=" -h -V --help --version <name> " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
fi | |||
case "${prev}" in | |||
*) | |||
COMPREPLY=() | |||
;; | |||
esac | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__serve) | |||
opts=" -h -V -i -p --help --version --interface --port " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
fi | |||
case "${prev}" in | |||
--interface) | |||
COMPREPLY=("<interface>") | |||
return 0 | |||
;; | |||
-i) | |||
COMPREPLY=("<interface>") | |||
return 0 | |||
;; | |||
--port) | |||
COMPREPLY=("<port>") | |||
return 0 | |||
;; | |||
-p) | |||
COMPREPLY=("<port>") | |||
return 0 | |||
;; | |||
*) | |||
COMPREPLY=() | |||
;; | |||
esac | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
esac | |||
} | |||
complete -F _gutenberg -o bashdefault -o default gutenberg |
@@ -1,34 +0,0 @@ | |||
function __fish_using_command | |||
set cmd (commandline -opc) | |||
if [ (count $cmd) -eq (count $argv) ] | |||
for i in (seq (count $argv)) | |||
if [ $cmd[$i] != $argv[$i] ] | |||
return 1 | |||
end | |||
end | |||
return 0 | |||
end | |||
return 1 | |||
end | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -s c -l config -d 'Path to a config file other than config.toml' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -s h -l help -d 'Prints help information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -s V -l version -d 'Prints version information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -f -a "init" -d 'Create a new Gutenberg project' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -f -a "build" -d 'Builds the site' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -f -a "serve" -d 'Serve the site. Rebuild and reload on change automatically' | |||
complete -c gutenberg -n "__fish_using_command gutenberg" -f -a "help" -d 'Prints this message or the help of the given subcommand(s)' | |||
complete -c gutenberg -n "__fish_using_command gutenberg init" -s h -l help -d 'Prints help information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg init" -s V -l version -d 'Prints version information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg build" -s u -l base-url -d 'Force the base URL to be that value (default to the one in config.toml)' | |||
complete -c gutenberg -n "__fish_using_command gutenberg build" -s o -l output-dir -d 'Outputs the generated site in the given path' | |||
complete -c gutenberg -n "__fish_using_command gutenberg build" -s h -l help -d 'Prints help information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg build" -s V -l version -d 'Prints version information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s i -l interface -d 'Interface to bind on' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s p -l port -d 'Which port to use' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s o -l output-dir -d 'Outputs the generated site in the given path' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s u -l base-url -d 'Changes the base_url' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s h -l help -d 'Prints help information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg serve" -s V -l version -d 'Prints version information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg help" -s h -l help -d 'Prints help information' | |||
complete -c gutenberg -n "__fish_using_command gutenberg help" -s V -l version -d 'Prints version information' |
@@ -1,4 +1,4 @@ | |||
_gutenberg() { | |||
_zola() { | |||
local i cur prev opts cmds | |||
COMPREPLY=() | |||
cur="${COMP_WORDS[COMP_CWORD]}" | |||
@@ -9,8 +9,8 @@ _gutenberg() { | |||
for i in ${COMP_WORDS[@]} | |||
do | |||
case "${i}" in | |||
gutenberg) | |||
cmd="gutenberg" | |||
zola) | |||
cmd="zola" | |||
;; | |||
build) | |||
@@ -31,7 +31,7 @@ _gutenberg() { | |||
done | |||
case "${cmd}" in | |||
gutenberg) | |||
zola) | |||
opts=" -h -V -c --help --version --config init build serve help" | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
@@ -55,7 +55,7 @@ _gutenberg() { | |||
return 0 | |||
;; | |||
gutenberg__build) | |||
zola__build) | |||
opts=" -h -V -u -o --help --version --base-url --output-dir " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
@@ -86,7 +86,7 @@ _gutenberg() { | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__help) | |||
zola__help) | |||
opts=" -h -V --help --version " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
@@ -101,7 +101,7 @@ _gutenberg() { | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__init) | |||
zola__init) | |||
opts=" -h -V --help --version <name> " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
@@ -116,7 +116,7 @@ _gutenberg() { | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
return 0 | |||
;; | |||
gutenberg__serve) | |||
zola__serve) | |||
opts=" -h -V -i -p -o -u --help --version --interface --port --output-dir --base-url " | |||
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then | |||
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) | |||
@@ -166,4 +166,4 @@ _gutenberg() { | |||
esac | |||
} | |||
complete -F _gutenberg -o bashdefault -o default gutenberg | |||
complete -F _zola -o bashdefault -o default zola |
@@ -0,0 +1,21 @@ | |||
complete -c zola -n "__fish_use_subcommand" -s c -l config -d 'Path to a config file other than config.toml' | |||
complete -c zola -n "__fish_use_subcommand" -s h -l help -d 'Prints help information' | |||
complete -c zola -n "__fish_use_subcommand" -s V -l version -d 'Prints version information' | |||
complete -c zola -n "__fish_use_subcommand" -f -a "init" -d 'Create a new Zola project' | |||
complete -c zola -n "__fish_use_subcommand" -f -a "build" -d 'Builds the site' | |||
complete -c zola -n "__fish_use_subcommand" -f -a "serve" -d 'Serve the site. Rebuild and reload on change automatically' | |||
complete -c zola -n "__fish_use_subcommand" -f -a "help" -d 'Prints this message or the help of the given subcommand(s)' | |||
complete -c zola -n "__fish_seen_subcommand_from init" -s h -l help -d 'Prints help information' | |||
complete -c zola -n "__fish_seen_subcommand_from init" -s V -l version -d 'Prints version information' | |||
complete -c zola -n "__fish_seen_subcommand_from build" -s u -l base-url -d 'Force the base URL to be that value (default to the one in config.toml)' | |||
complete -c zola -n "__fish_seen_subcommand_from build" -s o -l output-dir -d 'Outputs the generated site in the given path' | |||
complete -c zola -n "__fish_seen_subcommand_from build" -s h -l help -d 'Prints help information' | |||
complete -c zola -n "__fish_seen_subcommand_from build" -s V -l version -d 'Prints version information' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s i -l interface -d 'Interface to bind on' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s p -l port -d 'Which port to use' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s o -l output-dir -d 'Outputs the generated site in the given path' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s u -l base-url -d 'Changes the base_url' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s h -l help -d 'Prints help information' | |||
complete -c zola -n "__fish_seen_subcommand_from serve" -s V -l version -d 'Prints version information' | |||
complete -c zola -n "__fish_seen_subcommand_from help" -s h -l help -d 'Prints help information' | |||
complete -c zola -n "__fish_seen_subcommand_from help" -s V -l version -d 'Prints version information' |
@@ -14,7 +14,7 @@ fn usage_and_exit() -> ! { | |||
::std::process::exit(2); | |||
} | |||
// Not an example of Gutenberg but is used to generate the theme and syntax dump | |||
// Not an example of zola but is used to generate the theme and syntax dump | |||
// used for syntax highlighting. | |||
// Check README for more details | |||
fn main() { | |||
@@ -92,7 +92,7 @@ pub struct PageFrontMatter { | |||
pub order: Option<usize>, | |||
/// Integer to use to order content. Highest is at the bottom, lowest first | |||
pub weight: Option<usize>, | |||
/// All aliases for that page. Gutenberg will create HTML templates that will | |||
/// All aliases for that page. Zola will create HTML templates that will | |||
/// redirect to this | |||
#[serde(skip_serializing)] | |||
pub aliases: Vec<String>, | |||
@@ -36,7 +36,7 @@ ident = @{ | |||
all_chars* | |||
} | |||
/// Now specific to Gutenberg | |||
/// Now specific to Zola | |||
// shortcode is abbreviated to sc to keep things short | |||
@@ -5,7 +5,7 @@ use front_matter::InsertAnchor; | |||
use config::Config; | |||
/// All the information from the gutenberg site that is needed to render HTML from markdown | |||
/// All the information from the zola site that is needed to render HTML from markdown | |||
#[derive(Debug)] | |||
pub struct RenderContext<'a> { | |||
pub tera: &'a Tera, | |||
@@ -10,7 +10,7 @@ use tera::Tera; | |||
use config::Config; | |||
use front_matter::InsertAnchor; | |||
use templates::GUTENBERG_TERA; | |||
use templates::ZOLA_TERA; | |||
use rendering::{RenderContext, render_content}; | |||
@@ -85,7 +85,7 @@ fn can_higlight_code_block_with_unknown_lang() { | |||
fn can_render_shortcode() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content(r#" | |||
Hello | |||
@@ -99,7 +99,7 @@ Hello | |||
fn can_render_shortcode_with_markdown_char_in_args_name() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let input = vec![ | |||
"name", | |||
"na_me", | |||
@@ -116,7 +116,7 @@ fn can_render_shortcode_with_markdown_char_in_args_name() { | |||
fn can_render_shortcode_with_markdown_char_in_args_value() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let input = vec![ | |||
"ub36ffWAqgQ-hey", | |||
"ub36ffWAqgQ_hey", | |||
@@ -134,7 +134,7 @@ fn can_render_shortcode_with_markdown_char_in_args_value() { | |||
fn can_render_body_shortcode_with_markdown_char_in_name() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut tera = Tera::default(); | |||
tera.extend(&GUTENBERG_TERA).unwrap(); | |||
tera.extend(&ZOLA_TERA).unwrap(); | |||
let input = vec![ | |||
"quo_te", | |||
"qu_o_te", | |||
@@ -155,7 +155,7 @@ fn can_render_body_shortcode_with_markdown_char_in_name() { | |||
fn can_render_body_shortcode_and_paragraph_after() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut tera = Tera::default(); | |||
tera.extend(&GUTENBERG_TERA).unwrap(); | |||
tera.extend(&ZOLA_TERA).unwrap(); | |||
let shortcode = "<p>{{ body }}</p>"; | |||
let markdown_string = r#" | |||
@@ -183,7 +183,7 @@ Here is another paragraph. | |||
fn can_render_two_body_shortcode_and_paragraph_after_with_line_break_between() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut tera = Tera::default(); | |||
tera.extend(&GUTENBERG_TERA).unwrap(); | |||
tera.extend(&ZOLA_TERA).unwrap(); | |||
let shortcode = "<p>{{ body }}</p>"; | |||
let markdown_string = r#" | |||
@@ -216,7 +216,7 @@ Here is another paragraph. | |||
fn can_render_several_shortcode_in_row() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content(r#" | |||
Hello | |||
@@ -243,7 +243,7 @@ fn doesnt_render_ignored_shortcodes() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut config = Config::default(); | |||
config.highlight_code = false; | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content(r#"```{{/* youtube(id="w7Ft2ymGmfc") */}}```"#, &context).unwrap(); | |||
assert_eq!(res.body, "<p><code>{{ youtube(id="w7Ft2ymGmfc") }}</code></p>\n"); | |||
} | |||
@@ -251,7 +251,7 @@ fn doesnt_render_ignored_shortcodes() { | |||
#[test] | |||
fn can_render_shortcode_with_body() { | |||
let mut tera = Tera::default(); | |||
tera.extend(&GUTENBERG_TERA).unwrap(); | |||
tera.extend(&ZOLA_TERA).unwrap(); | |||
tera.add_raw_template("shortcodes/quote.html", "<blockquote>{{ body }} - {{ author }}</blockquote>").unwrap(); | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
@@ -341,11 +341,11 @@ fn can_add_id_to_headers_same_slug() { | |||
fn can_insert_anchor_left() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = render_content("# Hello", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
"<h1 id=\"hello\"><a class=\"gutenberg-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello</h1>\n" | |||
"<h1 id=\"hello\"><a class=\"zola-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello</h1>\n" | |||
); | |||
} | |||
@@ -353,11 +353,11 @@ fn can_insert_anchor_left() { | |||
fn can_insert_anchor_right() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::Right); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Right); | |||
let res = render_content("# Hello", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
"<h1 id=\"hello\">Hello<a class=\"gutenberg-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\n</h1>\n" | |||
"<h1 id=\"hello\">Hello<a class=\"zola-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\n</h1>\n" | |||
); | |||
} | |||
@@ -366,11 +366,11 @@ fn can_insert_anchor_right() { | |||
fn can_insert_anchor_with_exclamation_mark() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = render_content("# Hello!", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
"<h1 id=\"hello\"><a class=\"gutenberg-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello!</h1>\n" | |||
"<h1 id=\"hello\"><a class=\"zola-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello!</h1>\n" | |||
); | |||
} | |||
@@ -379,11 +379,11 @@ fn can_insert_anchor_with_exclamation_mark() { | |||
fn can_insert_anchor_with_link() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = render_content("## [Rust](https://rust-lang.org)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
"<h2 id=\"rust\"><a class=\"gutenberg-anchor\" href=\"#rust\" aria-label=\"Anchor link for: rust\">đź”—</a>\n<a href=\"https://rust-lang.org\">Rust</a></h2>\n" | |||
"<h2 id=\"rust\"><a class=\"zola-anchor\" href=\"#rust\" aria-label=\"Anchor link for: rust\">đź”—</a>\n<a href=\"https://rust-lang.org\">Rust</a></h2>\n" | |||
); | |||
} | |||
@@ -391,11 +391,11 @@ fn can_insert_anchor_with_link() { | |||
fn can_insert_anchor_with_other_special_chars() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::Left); | |||
let res = render_content("# Hello*_()", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
"<h1 id=\"hello\"><a class=\"gutenberg-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello*_()</h1>\n" | |||
"<h1 id=\"hello\"><a class=\"zola-anchor\" href=\"#hello\" aria-label=\"Anchor link for: hello\">đź”—</a>\nHello*_()</h1>\n" | |||
); | |||
} | |||
@@ -404,7 +404,7 @@ fn can_make_toc() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new( | |||
&GUTENBERG_TERA, | |||
&ZOLA_TERA, | |||
&config, | |||
"https://mysite.com/something", | |||
&permalinks_ctx, | |||
@@ -432,7 +432,7 @@ fn can_ignore_tags_in_toc() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new( | |||
&GUTENBERG_TERA, | |||
&ZOLA_TERA, | |||
&config, | |||
"https://mysite.com/something", | |||
&permalinks_ctx, | |||
@@ -463,7 +463,7 @@ fn can_ignore_tags_in_toc() { | |||
fn can_understand_backtick_in_titles() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("# `Hello`", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -475,7 +475,7 @@ fn can_understand_backtick_in_titles() { | |||
fn can_understand_backtick_in_paragraphs() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("Hello `world`", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -488,7 +488,7 @@ fn can_understand_backtick_in_paragraphs() { | |||
fn can_understand_links_in_header() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("# [Rust](https://rust-lang.org)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -500,7 +500,7 @@ fn can_understand_links_in_header() { | |||
fn can_understand_link_with_title_in_header() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("# [Rust](https://rust-lang.org \"Rust homepage\")", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -530,7 +530,7 @@ fn can_make_valid_relative_link_in_header() { | |||
fn can_make_permalinks_with_colocated_assets_for_link() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("[an image](image.jpg)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -542,7 +542,7 @@ fn can_make_permalinks_with_colocated_assets_for_link() { | |||
fn can_make_permalinks_with_colocated_assets_for_image() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("![alt text](image.jpg)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -554,7 +554,7 @@ fn can_make_permalinks_with_colocated_assets_for_image() { | |||
fn markdown_doesnt_wrap_html_in_paragraph() { | |||
let permalinks_ctx = HashMap::new(); | |||
let config = Config::default(); | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content(r#" | |||
Some text | |||
@@ -577,7 +577,7 @@ fn can_validate_valid_external_links() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut config = Config::default(); | |||
config.check_external_links = true; | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("[a link](http://google.com)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -590,7 +590,7 @@ fn can_show_error_message_for_invalid_external_links() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut config = Config::default(); | |||
config.check_external_links = true; | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("[a link](http://google.comy)", &context); | |||
assert!(res.is_err()); | |||
let err = res.unwrap_err(); | |||
@@ -602,7 +602,7 @@ fn doesnt_try_to_validate_email_links_mailto() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut config = Config::default(); | |||
config.check_external_links = true; | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("Email: [foo@bar.baz](mailto:foo@bar.baz)", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -615,7 +615,7 @@ fn doesnt_try_to_validate_email_links_angled_brackets() { | |||
let permalinks_ctx = HashMap::new(); | |||
let mut config = Config::default(); | |||
config.check_external_links = true; | |||
let context = RenderContext::new(&GUTENBERG_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let context = RenderContext::new(&ZOLA_TERA, &config, "https://vincent.is/about/", &permalinks_ctx, InsertAnchor::None); | |||
let res = render_content("Email: <foo@bar.baz>", &context).unwrap(); | |||
assert_eq!( | |||
res.body, | |||
@@ -54,7 +54,7 @@ sit submisso coniuge tristis ubi! | |||
```rs | |||
#[derive(Debug)] | |||
pub struct Site { | |||
/// The base path of the gutenberg site | |||
/// The base path of the zola site | |||
pub base_path: PathBuf, | |||
/// The parsed config for the site | |||
pub config: Config, | |||
@@ -34,7 +34,7 @@ use config::{Config, get_config}; | |||
use utils::fs::{create_file, copy_directory, create_directory, ensure_directory_exists}; | |||
use utils::templates::{render_template, rewrite_theme_paths}; | |||
use utils::net::get_available_port; | |||
use templates::{GUTENBERG_TERA, global_fns, render_redirect_template}; | |||
use templates::{ZOLA_TERA, global_fns, render_redirect_template}; | |||
use front_matter::{InsertAnchor}; | |||
use library::{Page, Section, sort_actual_pages_by_date, Library, Taxonomy, find_taxonomies, Paginator}; | |||
@@ -54,7 +54,7 @@ impl SitemapEntry { | |||
#[derive(Debug)] | |||
pub struct Site { | |||
/// The base path of the gutenberg site | |||
/// The base path of the zola site | |||
pub base_path: PathBuf, | |||
/// The parsed config for the site | |||
pub config: Config, | |||
@@ -109,7 +109,7 @@ impl Site { | |||
tera_theme.build_inheritance_chains()?; | |||
tera.extend(&tera_theme)?; | |||
} | |||
tera.extend(&GUTENBERG_TERA)?; | |||
tera.extend(&ZOLA_TERA)?; | |||
// the `extend` above already does it but hey | |||
tera.build_inheritance_chains()?; | |||
@@ -189,7 +189,7 @@ fn can_build_site_without_live_reload() { | |||
assert!(!file_contains!(public, "sitemap.xml", "draft")); | |||
// robots.txt has been rendered from the template | |||
assert!(file_contains!(public, "robots.txt", "User-agent: gutenberg")); | |||
assert!(file_contains!(public, "robots.txt", "User-agent: zola")); | |||
assert!(file_contains!(public, "robots.txt", "Sitemap: https://replace-this-with-your-url.com/sitemap.xml")); | |||
} | |||
@@ -303,7 +303,7 @@ fn can_build_site_and_insert_anchor_links() { | |||
assert!(Path::new(&public).exists()); | |||
// anchor link inserted | |||
assert!(file_contains!(public, "posts/something-else/index.html", "<h1 id=\"title\"><a class=\"gutenberg-anchor\" href=\"#title\"")); | |||
assert!(file_contains!(public, "posts/something-else/index.html", "<h1 id=\"title\"><a class=\"zola-anchor\" href=\"#title\"")); | |||
} | |||
#[test] | |||
@@ -1 +1 @@ | |||
<a class="gutenberg-anchor" href="#{{ id }}" aria-label="Anchor link for: {{ id }}">đź”—</a> | |||
<a class="zola-anchor" href="#{{ id }}" aria-label="Anchor link for: {{ id }}">đź”—</a> |
@@ -3,7 +3,7 @@ | |||
<title>{{ config.title }}</title> | |||
<link>{{ config.base_url | safe }}</link> | |||
<description>{{ config.description }}</description> | |||
<generator>Gutenberg</generator> | |||
<generator>Zola</generator> | |||
<language>{{ config.default_language }}</language> | |||
<atom:link href="{{ feed_url | safe }}" rel="self" type="application/rss+xml"/> | |||
<lastBuildDate>{{ last_build_date | date(format="%a, %d %b %Y %H:%M:%S %z") }}</lastBuildDate> | |||
@@ -26,7 +26,7 @@ use tera::{Tera, Context}; | |||
use errors::{Result, ResultExt}; | |||
lazy_static! { | |||
pub static ref GUTENBERG_TERA: Tera = { | |||
pub static ref ZOLA_TERA: Tera = { | |||
let mut tera = Tera::default(); | |||
tera.add_raw_templates(vec![ | |||
("404.html", include_str!("builtins/404.html")), | |||
@@ -1,22 +1,22 @@ | |||
<html> | |||
<head> | |||
<title>Gutenberg</title> | |||
<title>Zola</title> | |||
</head> | |||
<body> | |||
<div class="container"> | |||
<h1>Welcome to Gutenberg!</h1> | |||
<h1>Welcome to Zola!</h1> | |||
<p> | |||
You're seeing this page because we couldn't find a template to render. | |||
</p> | |||
<p> | |||
To modify this page, create a <b>{{filename}}</b> file in the templates directory or | |||
<a href="https://www.getgutenberg.io/documentation/themes/installing-and-using-themes/" target="_blank">install a theme</a>. | |||
<a href="https://www.getzola.org/documentation/themes/installing-and-using-themes/" target="_blank">install a theme</a>. | |||
<br> | |||
You can find what variables are available in this template in the <a href="{{url}}" target="_blank">documentation</a>. | |||
</p> | |||
</div> | |||
<footer> | |||
<a href="https://www.getgutenberg.io/documentation/getting-started/cli-usage/" target="_blank">Get started with Gutenberg</a> | |||
<a href="https://www.getzola.org/documentation/getting-started/cli-usage/" target="_blank">Get started with Zola</a> | |||
</footer> | |||
<style> | |||
html { | |||
@@ -14,7 +14,7 @@ pub fn get_reading_analytics(content: &str) -> (usize, usize) { | |||
/// Resolves an internal link (of the `./posts/something.md#hey` sort) to its absolute link | |||
pub fn resolve_internal_link(link: &str, permalinks: &HashMap<String, String>) -> Result<String> { | |||
// First we remove the ./ since that's gutenberg specific | |||
// First we remove the ./ since that's zola specific | |||
let clean_link = link.replacen("./", "", 1); | |||
// Then we remove any potential anchor | |||
// parts[0] will be the file path and parts[1] the anchor if present | |||
@@ -38,13 +38,13 @@ pub fn render_template(name: &str, tera: &Tera, context: &Context, theme: &Optio | |||
// maybe it's a default one? | |||
match name { | |||
"index.html" | "section.html" => { | |||
render_default_tpl!(name, "https://www.getgutenberg.io/documentation/templates/pages-sections/#section-variables") | |||
render_default_tpl!(name, "https://www.getzola.org/documentation/templates/pages-sections/#section-variables") | |||
} | |||
"page.html" => { | |||
render_default_tpl!(name, "https://www.getgutenberg.io/documentation/templates/pages-sections/#page-variables") | |||
render_default_tpl!(name, "https://www.getzola.org/documentation/templates/pages-sections/#page-variables") | |||
} | |||
"single.html" | "list.html" => { | |||
render_default_tpl!(name, "https://www.getgutenberg.io/documentation/templates/taxonomies/") | |||
render_default_tpl!(name, "https://www.getzola.org/documentation/templates/taxonomies/") | |||
} | |||
_ => bail!("Tried to render `{}` but the template wasn't found", name) | |||
} | |||
@@ -1,10 +1,10 @@ | |||
[build] | |||
base = "docs" | |||
publish = "docs/public" | |||
command = "gutenberg build" | |||
command = "zola build" | |||
[build.environment] | |||
GUTENBERG_VERSION = "0.4.0" | |||
ZOLA_VERSION = "0.5.0" | |||
[context.deploy-preview] | |||
command = "gutenberg build --base-url $DEPLOY_PRIME_URL" | |||
command = "zola build --base-url $DEPLOY_PRIME_URL" |
@@ -1,16 +1,16 @@ | |||
name: gutenberg # you probably want to 'snapcraft register <name>' | |||
version: '0.3.3+git' # just for humans, typically '1.2+git' or '1.3.2' | |||
name: zola # you probably want to 'snapcraft register <name>' | |||
version: '0.5.0+git' # just for humans, typically '1.2+git' or '1.3.2' | |||
summary: A fast static site generator in a single binary with everything built-in. | |||
description: | | |||
A fast static site generator in a single binary with everything built-in. | |||
https://www.getgutenberg.io | |||
https://www.getzola.org | |||
grade: devel # must be 'stable' to release into candidate/stable channels | |||
confinement: strict # use 'strict' once you have the right plugs and slots | |||
apps: | |||
gutenberg: | |||
command: gutenberg | |||
command: zola | |||
plugs: | |||
- network | |||
- network-bind | |||
@@ -1,7 +1,7 @@ | |||
use clap::{App, AppSettings, Arg, SubCommand}; | |||
pub fn build_cli() -> App<'static, 'static> { | |||
App::new("gutenberg") | |||
App::new("zola") | |||
.version(crate_version!()) | |||
.author(crate_authors!()) | |||
.about(crate_description!()) | |||
@@ -16,7 +16,7 @@ pub fn build_cli() -> App<'static, 'static> { | |||
) | |||
.subcommands(vec![ | |||
SubCommand::with_name("init") | |||
.about("Create a new Gutenberg project") | |||
.about("Create a new Zola project") | |||
.arg( | |||
Arg::with_name("name") | |||
.required(true) | |||
@@ -16,7 +16,7 @@ base_url = "%BASE_URL%" | |||
compile_sass = %COMPILE_SASS% | |||
# Whether to do syntax highlighting | |||
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Gutenberg | |||
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola | |||
highlight_code = %HIGHLIGHT% | |||
# Whether to build a search index to be used later on by a JavaScript library | |||
@@ -35,7 +35,7 @@ pub fn create_new_project(name: &str) -> Result<()> { | |||
} | |||
create_dir(path)?; | |||
console::info("Welcome to Gutenberg!"); | |||
console::info("Welcome to Zola!"); | |||
let base_url = ask_url("> What is the URL of your site?", "https://example.com")?; | |||
let compile_sass = ask_bool("> Do you want to enable Sass compilation?", true)?; | |||
@@ -62,7 +62,7 @@ pub fn create_new_project(name: &str) -> Result<()> { | |||
println!(); | |||
console::success(&format!("Done! Your site was created in {:?}", canonicalize(path).unwrap())); | |||
println!(); | |||
console::info("Get started by moving into the directory and using the built-in server: `gutenberg serve`"); | |||
println!("Visit https://www.getgutenberg.io for the full documentation."); | |||
console::info("Get started by moving into the directory and using the built-in server: `zola serve`"); | |||
println!("Visit https://www.getzola.org for the full documentation."); | |||
Ok(()) | |||
} |
@@ -212,7 +212,7 @@ pub fn serve(interface: &str, port: &str, output_dir: &str, base_url: &str, conf | |||
{ | |||
"command": "hello", | |||
"protocols": [ "http://livereload.com/protocols/official-7" ], | |||
"serverName": "Gutenberg" | |||
"serverName": "Zola" | |||
} | |||
"#)); | |||
} | |||
@@ -1,3 +1,3 @@ | |||
User-agent: gutenberg | |||
User-agent: zola | |||
Allow: / | |||
Sitemap: {{config.base_url}}/sitemap.xml |