summaryrefslogtreecommitdiff
path: root/riki.md
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2022-07-03 16:55:08 +0300
committerLars Wirzenius <liw@liw.fi>2022-07-03 16:55:32 +0300
commit141f1ea6609d8ad9686f76aaea0a669fc04ba7e1 (patch)
treeb18f53302331355a5ce9ccfc47a1eea76244d902 /riki.md
parent867fe49385d89177bf84af40cee3663b23a7aefc (diff)
downloadriki-141f1ea6609d8ad9686f76aaea0a669fc04ba7e1.tar.gz
chore: rename project to riki
It's a subset of ikiwiki and r for rust. Thank you, Daniel Silverstone, for the inspiration for the name. Sponsored-by: author
Diffstat (limited to 'riki.md')
-rw-r--r--riki.md199
1 files changed, 199 insertions, 0 deletions
diff --git a/riki.md b/riki.md
new file mode 100644
index 0000000..1725109
--- /dev/null
+++ b/riki.md
@@ -0,0 +1,199 @@
+---
+title: riki statis site generator
+subtitle: Subset of ikiwiki rewritten in Rust
+bindings:
+- subplot/riki.yaml
+- lib/files.yaml
+- lib/runcmd.yaml
+impls:
+ rust:
+ - subplot/riki.rs
+...
+
+[ikiwiki]: http://ikiwiki.info/
+
+# Introduction
+
+`riki` is a small subset of [ikiwiki][] rewritten in Rust, for
+speed.
+
+# Verification scenarios
+
+## Markdown features
+
+### Empty Markdown file
+
+_Requirement: Given an empty input Markdown file, the output must
+be an empty HTML file._
+
+~~~scenario
+given an installed riki
+given file site/empty.mdwn from empty
+when I run riki site output
+then AST of site/empty.mdwn matches that of output/empty.html
+~~~
+
+
+~~~{#empty .file}
+~~~
+
+### Plain text
+
+_Requirement: Given a Markdown file with plain text, the output must
+be an HTML file with the same text, without extra elements._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from para
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#para .file}
+Hello, world.
+
+There are two paragraphs.
+~~~
+
+
+### Indented code block
+
+_Requirement: Given a Markdown file with an indented code block, the
+output must have a pre element.
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from indented-code
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#indented-code .file}
+ This is indented by four spaces.
+~~~
+
+
+### Fenced code block
+
+_Requirement: Given a Markdown file with a fenced code block, the
+output must have a pre element.
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from fenced-code
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#fenced-code .file}
+```
+This is a fenced code block.
+```
+~~~
+
+
+
+### Image link
+
+_Requirement: Given a Markdown file linking to an image, the output
+must have an img element.
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from image-link
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#image-link .file}
+![my kitten](cat.jpg)
+~~~
+
+### Emphasised text
+
+_Requirement: Inline markup for emphasis must result in an em element
+in HTML output._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from emph
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#emph .file}
+There is *emphasized*, and so is _this_.
+~~~
+
+### Strongly emphasised text
+
+_Requirement: Inline markup for strong emphasis must result in a
+strong element in HTML output._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from strong
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#strong .file}
+There is **emphasized**, and so is __this__.
+~~~
+
+### Strike through in text
+
+_Requirement: Inline markup for strike through must result in a del
+element in HTML output._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from strike
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#strike .file}
+There is ~~struck through~~.
+~~~
+
+### Top level heading
+
+_Requirement: Given a Markdown file with top level heading, the output must
+be an HTML file with one h1 element, without extra elements._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from h1
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#h1 .file}
+# Heading
+~~~
+
+### Inline code
+
+_Requirement: Inline code markup with backticks must result in a code
+element in HTML output._
+
+~~~scenario
+given an installed riki
+given file site/page.mdwn from backticks
+when I run riki site output
+then AST of site/page.mdwn matches that of output/page.html
+~~~
+
+
+~~~{#backticks .file}
+There is `code` lurking here.
+~~~