v1.3 Features Reference
LATESTA single, up-to-date reference for everything supported in OmniScript v1.3.0 — regardless of when it was introduced.
Spec: v1.2 (current stable) • Release: v1.3.0
Core Blocks
@meta
Document metadata (title, author, date, theme).
@meta {
title: "My First Document";
author: "Your Name";
date: "2025-10-16";
theme: corporate;
}@doc
Markdown-style narrative content.
@doc {
# Heading
This is **bold**, *italic*, and ~~strikethrough~~.
}@slide
Presentation slides with layouts and bullets.
@slide {
title: "Key Metrics";
layout: TitleAndBullets;
bullets {
"Revenue up 20%";
"Churn down to 2%";
}
}@sheet
Spreadsheet-style data with formulas.
@sheet {
name: "Budget";
cols: [Item, Cost, Qty, Total];
A2 = "Hosting"; B2 = 120; C2 = 12; D2 = =B2*C2;
}Advanced Blocks
@chart
Bar/line/pie/area charts.
@chart {
type: "bar";
title: "Sales";
data: [
{ label: "Q1"; values: [100]; }
];
}@diagram
Mermaid or Graphviz diagrams.
@diagram {
type: "flowchart";
engine: "mermaid";
code: "graph TD; A-->B;";
}@code
Formatted code blocks.
@code {
language: "ts";
code: "const x = 1;";
}Tables & Modular Includes
@table
Markdown tables with caption, style, and alignment.
@table {
caption: "Regional Performance";
style: "bordered";
alignment: ["left", "right", "right", "center"];
| Region | Q3 | Q4 | Growth |
| --- | --- | --- | --- |
| NA | $975K | $1.15M | +18% |
}@include
Compose documents from multiple files.
@include { path: "./sections/intro.osf"; }
@include { path: "./sections/body.osf"; }Includes support depth up to 10 and block path traversal for safety.
Formatting & Inline Syntax
- Headings:
#,##,### - Bold:
**text**• Italic:*text* - Strikethrough:
~~text~~ - Inline code:
`code`• Code blocks:```lang - Lists:
-,*, ordered lists1. - Blockquotes:
> quoted text - Links:
[text](url)• Images: - Unicode escapes:
\uXXXXand\xXX
Export Targets (v1.3)
v1.3 aligns table and blockquote rendering across all exporters.
- DOCX
- PPTX
- XLSX
- HTML
- JSON (AST)
Security & Safety
- HTML escaping for all rendered content
- Path traversal protection for @include
- Strict input validation (tables, numbers, alignments)
- ReDoS protection with bounded regex usage