kauderwelsch
@previewAn organic, multilingual dummy text and document generator inspired by the LaTeX blindtext package. Supports English, German, French, and Latin with structured layouts.
kauderwelsch
An organic, multilingual dummy text and document generator for Typst, heavily inspired by the classic LaTeX blindtext package.
Unlike static "Lorem Ipsum" generators, kauderwelsch provides meaningful, flowing public-domain literature across multiple languages, realistic asymmetrical section nesting, and automated distribution of advanced document features (like multi-level lists, tables, mathematical formulas, and raw code blocks).
Features
- Puristic & Organic: No forced pagebreaks. Layout flow is entirely organic, allowing you to test your custom show-rules and document structures precisely.
- Multilingual Support: Switch seamlessly between English ("en" - The 39 Steps), German ("de" - Winnetou), French ("fr" - Arsène Lupin), and classical Latin ("la" - Ovid's Metamorphoses).
- Deterministic Smart Distribution: Even in a small document layout, the package guarantees that all activated features (code snippets, tables, nested lists) are rendered at least once and distributed evenly across your headings.
- Strict Validation: Integrated assertions safeguard your compilation against invalid arguments.
Usage
Basic Text Generation
Generate quick paragraphs with optional math formulas:
#import "@local/kauderwelsch:0.1.0": *
// Generate 3 medium-sized paragraphs in German
#blindtext(paragraphs: 3, length: "medium", lang: "de")
// Generate short paragraphs with inline math formulas embedded every 2 paragraphs
#blindtext(paragraphs: 5, length: "short", lang: "en", math: true, math-frequency: 2)
Full Document Mocking
Test complex templates, styling, headers, and outlines with a deeply structured document:
#import "@local/kauderwelsch:0.1.0": *
// Generate a massive 10+ page document to test complex document constraints
#blinddocument(
size: "large",
length: "long",
lang: "de",
math: true,
lists: true,
tables: true,
figures: true,
code: true
)
Function Reference
blindtext
paragraphs(int): Number of paragraphs to generate. Default is 3.length(string): Length of each paragraph ("short", "medium", "long"). Default is "long".lang(string): Language identifier ("en", "de", "fr", "la"). Default is "en".math(boolean): Whether to scatter mathematical formulas into the text. Default is false.math-frequency(int): Density of formulas. Default is 1.offset(int): Shifts the starting index within the text arrays. Default is 0.
blinddocument
size(string): Overall structure size ("small", "medium", "large"). Default is "medium".length(string): Individual paragraph length inside the sections. Default is "long".lang(string): Language identifier ("en", "de", "fr", "la"). Default is "en".math(boolean): Scatters math formulas into the document text blocks. Default is false.lists(boolean): Includes simple, nested, and definition lists. Default is true.tables(boolean): Includes standard and large matrix data tables. Default is true.figures(boolean): Includes grey layout rects wrapped in captioned figures. Default is false.code(boolean): Includes highlighted raw programming snippets (Python / R). Default is false.
License
This project is licensed under the MIT License.