Files
typst-collection/rfc-vibe/README.md
T

101 lines
2.8 KiB
Markdown

# `rfc-vibe` package
Bring that RFC lingo to your everyday documents.
A [Typst](https://typst.app/) package that makes it easy to use the exact
keywords, boilerplate, and definitions provided by BCP 14, RFC2119, and RFC8174.
See the end of this README for an example of the output.
In the future, this package may include other RFC-related patterns which are
applicable to a wide variety of everyday documents.
## Usage
Import the package in your Typst document:
```typst
#import "@preview/rfc-vibe:0.1.0": *
```
### Keywords
Use the keywords according to these examples:
```typst
#must // renders as: MUST
#must-not // renders as: MUST NOT
#required // renders as: REQUIRED
#shall // renders as: SHALL
#shall-not // renders as: SHALL NOT
#should // renders as: SHOULD
#should-not // renders as: SHOULD NOT
#recommended // renders as: RECOMMENDED
#not-recommended // renders as: NOT RECOMMENDED
#may // renders as: MAY
#optional // renders as: OPTIONAL
```
For the rare situation when you want the keywords included in quotation marks,
use the `-quoted` versions:
```typst
#must-quoted // renders as: "MUST"
#must-not-quoted // renders as: "MUST NOT"
#required-quoted // renders as: "REQUIRED"
#shall-quoted // renders as: "SHALL"
#shall-not-quoted // renders as: "SHALL NOT"
#should-quoted // renders as: "SHOULD"
#should-not-quoted // renders as: "SHOULD NOT"
#recommended-quoted // renders as: "RECOMMENDED"
#not-recommended-quoted // renders as: "NOT RECOMMENDED"
#may-quoted // renders as: "MAY"
#optional-quoted // renders as: "OPTIONAL"
```
### Boilerplate
According to RFC8174, _authors who follow these guidelines should incorporate a
specific phrase near the beginning of their document_. Include this boilerplate
text with:
```typst
#rfc-keyword-boilerplate
```
This will render as:
```text
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
"SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when,
and only when, they appear in all capitals, as shown here.
```
### Definitions
Although not required (and maybe discouraged), you can include definitions of
individual keywords in your document:
```typst
#rfc-keyword-must-definition
#rfc-keyword-must-not-definition
#rfc-keyword-should-definition
#rfc-keyword-should-not-definition
#rfc-keyword-may-definition
```
Or include all keyword definitions at once with:
```typst
#rfc-keyword-definitions
```
## Example Output
![Example output](thumbnail.png)
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file
for details.