Files
dimension-sh-nikdoof-web/content/notes/kiln.md
2021-06-29 14:01:34 +01:00

1.4 KiB

title
title
Kiln

Kiln is a simple static site generator aimed at Gemini use foremost, but it can be configured to support HTML and potentially Gopher. It supports using external tools as pre/post processors, allowing you to manipulate any file format int something it can use.

Documentation

Kiln Man Page Introduction kiln-discuss mailing list

Iterating Subfolders on Templates

Not described too much in the documentation, but you can use the .Dirs value passed to index templates to iterate down into the folders and list pages within the folders.

{{ range .Dirs }}## {{.Title }}
{{ range .Pages }}=>  {{ .Permalink }} {{ if not .Date.IsZero -}}
{{.Date.Format "2006-01-02"}} {{end}}{{.Title}}
{{ end }}
{{ end -}}

Produces

## Logs
=> /~nikdoof/logs/2021/06/29/first-post/ 2021-06-29 First Post

## Notes
=> /~nikdoof/notes/kiln/ Kiln

Calls to .Title require a _index.md to exist with title in the frontmatter, otherwise you'll hit an error.

Handling Markdown

Adding preprocess.md value to your tasks and adding .md to the input formats allows you to use Markdown files for generating out Gemini.

[[tasks]]
input = [".gmi", ".md"]
output = ".gmi"
template = ".gmi"
static_dir = "static"
output_dir = "public"
preprocess.md = "md2gmn"