コンテンツにスキップ

書式マニュアルとプロジェクト設定

対象:0.1.0テスト版、c657e568。ugas-labsのWworPoint構文資料(AGPL-3.0-only)に基づく説明です。全規則・診断・完全な作例を保持した英語リファレンスも利用できます。

入口は document.md、設定は .wworpoint/project.json、CSSは design/theme.css。Initが生成する AGENTS.md と、このマニュアル、確認済みのソースを外部AIに渡します。VS Codeを使うこと、実行手順はコマンドパレットで案内してほしいことも伝えてください。生成ガイドには任意のCLIの説明が含まれる場合があります。

CommonMarkとGFMの表・打ち消し線・自動リンク・静的なチェックボックス・GFM脚注記法によるセクション末尾の注に対応します。数式、コードの色分け、絵文字ショートコードは未対応です。絵文字はUnicodeで書きます。CJK文字に接するソフト改行は除去し、それ以外は空白になります。強制改行は行末のバックスラッシュを使います。

YAML front matterは入口ファイルの先頭だけで使えます。

キー 値
title 文字列。PDFタイトルにも使用
subtitle 文字列
author 文字列または文字列の配列
date YYYY-MM-DD。自動補完しない
lang BCP 47。プロジェクトの言語を上書き
description 文字列。PDF Subject
keywords 文字列の配列。PDF Keywords

mode・theme・size・output・security・entry等はfront matterではなくプロジェクト設定に置きます。front matterに書くと FRONTMATTER_PROJECT_KEY エラーです。

presentationでは一つのセクションが一枚のスライドです。トップレベルの ---・***・___ または <!-- wwpo:break --> で区切ります。--- の前に空行を入れないと、直前の行が見出しとして解釈される場合があります。見出しだけではスライドを分割しません。

pagedでは wwpo:break だけがセクション区切りです。各セクションは新しいページから始まり、複数ページに流れます。--- は水平線です。flow=fixed なら一ページに固定します。空のセクションは空白ページになり、情報診断が出ます。

---
title: チームへの提案
author: チーム
date: 2026-10-04
lang: ja
---
<!-- wwpo:page layout=title -->
# 次の一歩
---
## 流れを整理する
<!-- wwpo:block width=70% align=center min-scale=0.7 -->
![処理の流れ](assets/diagrams/process.mmd "ローカルの構成図")

ディレクティブの文法と配置

「ディレクティブの文法と配置」の節へ

<!-- wwpo:name key=value --> という独立したトップレベルのコメントで書きます。名前とキーは小文字で、大文字・小文字を区別します。空白やカンマを含む値は二重引用符で囲みます。引用符・バックスラッシュはエスケープできます。複数行にもできますが、終了コメントの同じ行に別の内容を続けません。

コードブロック内は記法の説明として表示します。インラインやリスト・引用・表の内部にあるディレクティブは警告して無視します。未知の名前・キーは警告、不正な値・配置はエラーです。wwpo:notes は予約済みで未実装です。

ページ設定:対応する全キー

「ページ設定:対応する全キー」の節へ

wwpo:page はfront matterまたは区切り直後、セクションの最初のブロックに一つだけ置きます。そのセクションだけに適用し、次は document.defaultPage に戻ります。

キー 値と動作
size A3・A4・A5・ISO B4・B5・JIS-B4・JIS-B5・Letter・Legal・16:9・4:3、または "210mm 297mm" のような幅と高さ
orientation portrait / landscape。必要に応じて幅・高さを入れ替える
layout テーマのレイアウト名。businessは default・title・section。未知の名前は警告してdefaultへ戻る
class 空白区切りの [a-z][a-z0-9-]*。ps- 接頭辞は予約済み
background ローカル画像のパス。通常の画像と同じ安全確認
flow pagedのみ auto / fixed。fixedは一ページで、はみ出しはエラー。presentationでflowを使うとDIRECTIVE_INVALID_VALUEエラー
--name セクションのCSSカスタムプロパティ。--ps- は予約済み

明示的な長さは mm・cm・in・pt・px を使えます。B4/B5 はISOで、日本で一般的なJISサイズは JIS-B4/JIS-B5 です。16:9は960×540pt、4:3は720×540pt。CSSの @page size は除去して警告します。用紙寸法はプロジェクトまたはページディレクティブで指定します。

カスタムプロパティは200文字以内。URL、コメント、セミコロン、波括弧、不正な引用符などを拒否します。許可する関数は var()・calc()・min()・max()・clamp() と色の関数です。完全な禁止文字・関数一覧は英語リファレンスを参照してください。

ブロック属性:対応する全キー

「ブロック属性:対応する全キー」の節へ

wwpo:block は次のトップレベルの段落・図・表・リスト・コード・引用、またはディレクティブが作るブロックに適用します。対象がなければ警告します。

キー 値
id [a-z][a-z0-9-]*。[参照](#id) のリンク先
class 空白区切りのクラス。ps- は予約済み
width 百分率または長さ
align left / center / right
min-scale 図の縮小警告のしきい値、0.1〜1.0。既定0.7
keep together。pagedでブロック分割を避ける

<!-- wwpo:include sections/intro.md --> でローカルMarkdownを読み込みます。空白を含むパスは引用符で囲みます。対象は .md でfront matterなし、循環なし。最大入れ子3、読み込み500回、合計5,000,000文字です。読み込み先の区切りも有効で、診断は元ファイルのパス・行番号を保持します。

UTF-8、LF/CRLFに対応します。相対パスは参照を書いたファイルが基準です。大文字・小文字は完全一致が必要です。Markdownのincludeはプロジェクト内に限定します。画像素材の共有ルートは、プロジェクトの要求・マシン側の許可・ワークスペース信頼がすべてある場合だけ使えます。隠しファイル・隠しフォルダー、絶対パス、リモート資源は拒否します。通常の外部リンクは書けますが、取得しません。

画像は ![説明](assets/image.png "キャプション")。段落の唯一の内容なら図として表示し、タイトルをキャプションに使います。PNG・JPEG・GIF・WebP・AVIF・SVGに対応し、拡張子と内容の一致を確認します。SVG内のスクリプトは実行しません。代替テキストを付けてください。data: 画像は情報診断が出るため、ローカルファイルを推奨します。

<!-- wwpo:table data=results columns="region,amount" caption="架空の結果" -->

必須は data。columns はカンマ区切りの表示順で、省略すると元の順序です。caption は任意。セルは元の文字列・空欄を維持し、数値列は右寄せです。JSON表はフラットなオブジェクトの配列に限ります。未知の列はエラー。pagedの長い表はヘッダーを繰り返します。通常のMarkdown表も使えます。

results は data/results.csv または data/results.json に解決します。明示的に登録する場合は、既存設定の他のキーを保持して追加します。

"data": {
"results": { "path": "data/results.csv", "encoding": "utf-8" }
}

明示的なマッピングの形式とutf-8指定は、固定したプロジェクト設定スキーマと実際のソース検証で確認しています。

A4提案書の実際のデータとコードも参照できます。

Mermaidは ![流れ](assets/diagrams/process.mmd) または mermaid のコードフェンスで書きます。ローカルの書き出し用ブラウザーでstrict設定により描画します。図からセキュリティ設定を変更できず、画像・リモート資源は利用できません。不正な構文は DIAGRAM_COMPILE_ERROR です。

Vega-Liteは ![結果](assets/charts/results.vl.json) または vega-lite のコードフェンスで書きます。

{
"description": "架空の結果",
"data": { "name": "results" },
"mark": "bar",
"encoding": {
"x": { "field": "region", "type": "nominal" },
"y": { "field": "amount", "type": "quantitative" }
}
}

data.name が正式なデータ指定です。data.url はエラー、インライン data.values と datasets は警告です。CSVは列の型を推定し、欠損値を埋めません。JSONグラフはレコードの配列です。グラフは別のエンジンプロセスで描画し、ブラウザーは不要です。image markは未対応。不正な定義は CHART_COMPILE_ERROR。定義のconfig・width・heightはテーマ既定値より優先します。

トップレベルのコードフェンスや画像だけの段落は、ページに収まる図になります。文中・リスト・引用内はインライン画像です。画像のalt、Mermaidの accTitle、グラフのdescription/titleが説明になります。生成SVGは .wworpoint/generated/ にキャッシュし、編集対象の正本にはしません。未信頼のVS Codeワークスペースでは新たな図表を描画しません。必要な資材・ブラウザーがなければ、該当する警告とプレースホルダーを表示します。

一つの図表の上限:Mermaidソース50,000文字、Vega-Lite定義1 MiB、グラフデータ50,000行・10 MiB、SVGはフォント埋め込み前5 MiB・後10 MiB、描画30秒。文書全体で図表100個まで。超過は VISUAL_LIMIT_EXCEEDED です。

design/theme.css で見た目を調整します。既存クラス・フォントの ps-・PS Sans・PS Serif 名称は維持します。リモートCSS import・資源取得は拒否します。

生のHTMLは既定で無効です。safe-subsetにはプロジェクトの要求・マシン側の許可・ワークスペース信頼がすべて必要です。それでもscript・style属性・イベント属性・埋め込みフレーム・フォーム・リモート資源は禁止です。発表者ノート、数式、コード色分け、ページ下部脚注、絶対座標配置は未実装です。

保存 → WworPoint: Validate → エラー修正・警告確認 → WworPoint: Export の順に進めます。プレビューは未保存編集にも追従しますが、検証・書き出しは保存済みファイルを読みます。ソースだけの検証では、紙面に収まることを証明できません。AIの提案と内容の正確さは人が確認します。

完全な構文規則・文法・診断コード・作例(英語)