# 書き庭(KAKINIWA)台本記法マニュアル — AI向け

このドキュメントは、茶番劇・ゆっくり動画などの台本エディタ「書き庭(KAKINIWA)」の台本記法を、
AI(ChatGPT・Claude・Gemini など)が正しい形式で台本を出力できるようにまとめた仕様書です。
このまま AI に貼り付けて「この記法で台本を書いて」と頼む使い方を想定しています。

- 公式サイト: https://kakiniwa.jp/
- この文書の最新版: https://kakiniwa.jp/ai/kakiniwa-notation.md

## 基本ルール

- 台本は**行単位**のプレーンテキスト(UTF-8)。1行が1つの要素になる。
- どの記法にも当てはまらない行はエラーにならず、そのまま保持される(ただし演出としては働かない)。
- 記号は**半角・全角どちらでもよい**(`:` と `：`、`()` と `（）`、`@` と `＠`、`#` と `＃` など)。出力は半角推奨。
- 空行は自由に入れてよい(読みやすさのために段落間へ入れることを推奨)。

## 行の種類

### 見出し

```kakiniwa
# 台本タイトル
## シーン名
```

- `#` 1つ = 話の中の大きなまとまり(章)。動画には出力されない整理用。
- `##` 2つ = シーンの区切り。`#` の中に複数並べる。
- `###` 以上は記法ではない(ただの文章として扱われる)。

### セリフ

```kakiniwa
ソラ: こんにちは。
ソラ(むすっ): なんでもない。
```

- 形式は `キャラ名: セリフ` または `キャラ名(表情): セリフ`。
- キャラ名にコロンと括弧は使えない。
- 表情名はキャラ設定の表情タグと対応する(例: 通常・笑顔・困り・むすっ・驚き)。
- 立ち絵が複数あるキャラは `キャラ名(立ち絵名/表情): セリフ` で、**その行だけ**別の
  立ち絵にできる(例: `ソラ(私服/笑顔): ただいま`)。表情を省くと `ソラ(私服/): ただいま`
  =その立ち絵の素の見た目。区切りは `/`。次の行は既定(または直近の `@立ち絵`)に戻る。
- 1行に1セリフ。セリフの途中で改行しない(長いセリフは行を分けて同じキャラ名を再度書く)。

### ト書き(動き・状況の説明)

```kakiniwa
> ソラ、立ち上がって窓の外を見る。
```

### コメント(動画に出ないメモ)

```kakiniwa
// ここは後で調整
```

コメントを使った伏線トラッカー(ダッシュボードで追跡される):

```kakiniwa
// 伏線: 謎の手紙
// 回収: 謎の手紙
```

## @コマンド(演出指定)

行頭に `@` を置く。引数は半角スペースで区切る。

### 背景・音

```kakiniwa
@背景 店内_朝
@BGM 静かなピアノ
@BGM停止
@SE ドアの開く音
```

- `@背景` は `@bg` でもよい。`@BGM` は `@bgm`、`@SE` は `@se` でもよい。
- 名前は素材ファイル名(拡張子なし)またはわかりやすい仮の名前。素材が未定でも仮名で書いてよい。

### 立ち位置(@配置)

```kakiniwa
@配置 ソラ:-25 ヒナ:25,10(80)
@配置 ソラ:退場
```

- 形式は `名前:横位置` / `名前:横位置,縦位置` / `名前:横位置,縦位置(高さ%)`。複数キャラをスペース区切りで並べる。
- 横位置: 画面中央からの画面幅比%。-50〜50、負が左。
- 縦位置: 上方向へのオフセット(画面高さ比% -50〜50、**正が上**)。省略時は画面下端基準。
- 高さ: 立ち絵の高さの画面高さ比%(省略時の既定は 85)。
- `名前:退場` でそのキャラの立ち絵を下げる。

### 立ち絵の切り替え(@立ち絵)

```kakiniwa
@立ち絵 ソラ:制服
```

- `名前:立ち絵名`。以降そのキャラは指定の立ち絵になる(次の切り替え・退場まで続く)。
- 1行だけ変えたいときはセリフ側の `キャラ名(立ち絵名/表情):` が手軽(上記「セリフ」参照)。

### 小物・前景(@小物・@枠・@小物消去・@エフェクト)

```kakiniwa
@小物 カップ:-40,18(18)
@枠 スライド:-40,0(40)
@小物 図1:スライド
@小物消去 カップ
@エフェクト 集中線:10,-5(80)@1.5
```

- `@小物 名前:x,y(高さ%)` — 小物を置く。x,y は画面中央からの位置%(-50〜50)。y は**負が上**(@配置 と逆なので注意)。高さの既定は 20。
- `@枠 枠名:x,y(高さ%)` — 小物の置き場所(位置プリセット)を宣言する。
- `@小物 素材名:枠名` — コロンの後ろが数値でなければ枠参照。同じ枠に別の小物を出すと差し替わる(スライド資料の切り替えに便利)。
- `@小物消去 名前` — 小物を下げる(枠名でも可)。
- `@エフェクト 名前:x,y(高さ%)@秒` — 前景の効果(集中線など)。末尾の `@数字` は表示する秒数(省略時 2 秒)。

### テキスト窓(@窓)

```kakiniwa
@窓 ノベル枠
@窓 消去
```

### カスタム演出(任意の @語)

```
@カメラ 引き
@転換 ホワイトアウト
```

- 上記以外のどんな `@語` も書ける。エディタ上で色分け表示され、動画編集時の指示メモとして書き出しに含まれる。

重ね順は「背景 < 立ち絵 < 小物 < エフェクト < 窓」。

## セリフ内のインラインタグ

セリフの途中に書ける:

```kakiniwa
ハル: なあ、聞いていいか。 [SE:カップを置く音] どうして黙って行ったんだ。
ナギ: ……ごめん。 [間:0.8] 今なら話せるかな。
ハル: 二行で見せたいときは[改行]ここで折る。
```

- `[SE:名前]` — その位置で効果音を鳴らす。
- `[間:秒]` — その位置に間(ポーズ)を入れる。秒は小数可。
- `[改行]` — その位置でセリフを折り返す。台本ファイルは1行=1セリフのままで、
  字幕・プレビュー・YMM4 の本文だけが2行になる(声には出ない)。
  **セリフを物理的に2行に分けて書かないこと。** 2行目は話者を失って別の行になる。
- `[テンプレ:名前]` — **いまは効きません。台本に書かないでください。**
  書いても書き出しに反映されないため(YMM4 側は既定のアイテムで配置されます)、
  指定したつもりで無視される形になります。記法自体は将来のために残してあります。

## ルビ・傍点・縦中横

```
｜漢字《かんじ》     ← ルビ(親文字を ｜ で明示)
漢字《かんじ》       ← 簡易ルビ(直前の漢字の連続が親文字)
《《絶対に》》       ← 傍点(強調の圏点)
残り^10^分           ← 縦中横(縦書きで数字を正立させる)
```

## AI が台本を書くときの注意

- **この文書にある記法以外を発明しない。** Markdown の太字(`**`)・箇条書き(`-`)・水平線(`---`)などは台本記法ではない。
- キャラ名の表記は台本全体で統一する(「ソラ」と「そら」は別人扱いになる)。
- 表情・背景・BGM・SE の名前が指定されていない場合は、内容に合ったわかりやすい日本語の仮名を付けてよい(作者があとで素材と結びつける)。
- 構成はまず `#` と `##` で骨組みを作り、各シーンの冒頭に `@背景`(必要なら `@BGM`・`@配置`)を置き、その後にト書きとセリフを並べるのが基本形。
- 凝った演出(@小物・@エフェクト・@枠 など)は、頼まれない限り多用しない。セリフとト書きが主役。

## 出力例(この形式で出力する)

```kakiniwa
# 再会

## S1 喫茶店・夕方

@背景 喫茶店・夕方
@BGM 静かなピアノ
@配置 ナギ:-25 ハル:25

> 雨あがりの喫茶店。窓の外を路面電車が通り過ぎる。

ナギ: ……ここ、昔よく来たよね。
ハル: そうだな。……なあ、ひとつだけ聞いていいか。 [SE:カップを置く音] あのとき、どうして黙って行っちまったんだ。

> ナギ、視線を落とす。

ナギ(困り): ……ごめん。あのときは、うまく言葉にできなかったの。 [間:0.8] 今なら、少しは話せるかな。
// 間の長さは声を当ててから調整

## S2 交差点・夜

@背景 交差点・夜
@BGM停止

ハル: 送ってく。夜道は《《あぶない》》からな。
ナギ(笑顔): ふふ、変わらないね、ハルは。
```

## 補足: ファイルとして保存する場合

書き庭の作品フォルダでは、台本は `episodes/001-タイトル.md` のような Markdown ファイルで、
先頭に YAML frontmatter を持つ:

```
---
title: めぐる
episode: 1
status: writing
characters:
  - haru
  - nagi
---

(ここから上の記法の台本本文)
```

AI とのやり取りではこの frontmatter は不要。台本本文だけを出力し、作者が書き庭に貼り付ければよい。
書き庭は `名前「セリフ」` のような一般的な形式の貼り付けも自動変換するが、
この文書の記法で出力するのが最も確実。
