diff options
-rw-r--r-- | .build.yml | 13 | ||||
-rw-r--r-- | errors.md | 4 | ||||
-rw-r--r-- | etc/md.yml | 23 | ||||
-rw-r--r-- | etc/pdf.yml | 20 | ||||
-rw-r--r-- | index.md | 4 | ||||
-rw-r--r-- | safety.md | 4 | ||||
-rw-r--r-- | syntax.md | 4 | ||||
-rw-r--r-- | tagged-unions.md | 4 | ||||
-rw-r--r-- | types.md | 4 | ||||
-rw-r--r-- | vs-c.md | 4 |
10 files changed, 81 insertions, 3 deletions
@@ -1,15 +1,22 @@ -image: debian/stable +image: debian/testing packages: - pandoc - - wkhtmltopdf + - weasyprint - poppler-utils sources: - https://git.sr.ht/~boringcactus/crowbar-spec tasks: - page-count: | cd crowbar-spec - pandoc -s -o ../spec.pdf -t html -M "title=Crowbar Specification" *.md + files="index vs-c tagged-unions types safety errors syntax" + for file in $files + do + pandoc --defaults=etc/md.yml -o $file.html $file.md + done + pandoc --defaults=etc/pdf.yml -o ../spec.pdf *.html cd .. pdfinfo spec.pdf | grep Pages + tar czvf spec-html.tar.gz crowbar-spec/*.html artifacts: - spec.pdf + - spec-html.tar.gz @@ -1 +1,5 @@ +--- +title: Error Handling +--- + TODO diff --git a/etc/md.yml b/etc/md.yml new file mode 100644 index 0000000..aece004 --- /dev/null +++ b/etc/md.yml @@ -0,0 +1,23 @@ +from: markdown +to: html5 + +standalone: true + +verbosity: INFO + +top-level-division: chapter + +pdf-engine: weasyprint + +table-of-contents: false +number-sections: true +shift-heading-level-by: 1 +title-prefix: "Crowbar Specification: " +eol: lf + +# syntax-definition: + +fail-if-warnings: true +dump-args: false +ignore-args: false +trace: false diff --git a/etc/pdf.yml b/etc/pdf.yml new file mode 100644 index 0000000..5ef3857 --- /dev/null +++ b/etc/pdf.yml @@ -0,0 +1,20 @@ +from: html +to: pdf + +standalone: true + +metadata: + title: "Crowbar Specification" + +verbosity: INFO + +top-level-division: chapter + +pdf-engine: weasyprint + +table-of-contents: true + +fail-if-warnings: true +dump-args: false +ignore-args: false +trace: false @@ -1,3 +1,7 @@ +--- +title: Introduction +--- + Crowbar: the good parts of C, with a little bit extra. **This is entirely a work-in-progress, and should not be relied upon to be stable (or even true) in any way.** @@ -1,3 +1,7 @@ +--- +title: Memory Safety +--- + Each item in Wikipedia's [list of types of memory errors](https://en.wikipedia.org/wiki/Memory_safety#Types_of_memory_errors) and what Crowbar does to prevent them. In general, Crowbar does its best to ensure that code will not exhibit any of the following memory errors. @@ -1,3 +1,7 @@ +--- +title: Syntax +--- + The syntax of Crowbar mostly matches the syntax of C, with fewer obscure/advanced/edge case features. # Source Files diff --git a/tagged-unions.md b/tagged-unions.md index 1333ed7..0083fff 100644 --- a/tagged-unions.md +++ b/tagged-unions.md @@ -1 +1,5 @@ +--- +title: Tagged Unions +--- + TODO @@ -1 +1,5 @@ +--- +title: Types +--- + TODO @@ -1,3 +1,7 @@ +--- +title: Comparison to C +--- + What differentiates Crowbar from C? # Removals |