Document metadata - iamgio/quarkdown GitHub Wiki

Information about the document can be set via functions. These functions should conventionally be called at the beginning of a Quarkdown source.

Name Accepts Default
.docname The name of the document. Untitled Quarkdown Document
.docauthors The authors of the document. (empty)
.doctype Type of output document: plain, slides, paged. plain
.doclang Language of the document: either a case-insensitive English full name (e.g. English, Italian, French (Canada)) or a IETF BCP 47 language tag (e.g. en, it, fr-CA).
This defines the target locale to localize strings to, and also sets HTML's lang attribute, which enables syllables-based word wrapping (hyphens) and enhances accessibility.
See Localization for more.
(none)

All these functions have a 'modify or echo' behavior: if the value is not passed as an argument, then they return the previously set value. Example:

.docname {Quarkdown}

This document is called **.docname**!

This document is called Quarkdown!

Authors

.docauthors take a Dictionary as its value, where each key is the author's name, while values are nested dictionaries with represent the author's information. No constraints are set and any information entry can be used.

.docauthors
  - John Doe
    - email: [email protected]
    - website: example.com
  - Jane Doe
    - email: [email protected]
    - company: GitHub

The same function with no arguments returns the dictionary itself, which may for example be iterated on to automatically display the authors according to a certain layout. The following example takes advantage of pair destructuring:

.foreach {.docauthors} 
    name info:
    .row gap:{1cm}
        **.name**

        .get {email} from:{.info}
Authors layout

Single author

If the document has just one author and no further information is needed, the .docauthor {name} function is a valid shorthand.

Be the author defined via .docauthors or .docauthor, calling .docauthor with no arguments returns the only author's name.

⚠️ **GitHub.com Fallback** ⚠️