コンテンツにスキップ

前処理(エスケープ・コメント・置換)

辞書は、読み込むときに行ごとに次の前処理を受けます。

φ(エスケープ)

φ の直後の 1 文字は、その文字として扱われ、里々の記法として解釈されなくなります。

書き方 意味
φ( φ) ( ) をそのまま表示する
φ# # をそのまま表示する
φφ φ を表示する

行末に φ を書くと、その行の改行が打ち消され、次の行と連結されます(φ 自体は出力されません)。

#(コメント)

行の途中に全角の # があると、そこから行末までがコメントとして無視されます。行頭に書けば行全体がコメントです。φ# と書いた場合はコメントになりません。

カッコの中の改行

( を書いてから対応する ) までの間に改行があっても、複数行を 1 行に連結して扱います。カッコの中で続く行の行頭にあるタブは無視されます。半角・全角の空白は無視されず、そのまま残ります(実機で確認)。

*OnBoot
(when、(好感度)>=50、
    仲良しの起動トーク、
    ふつうの起動トーク)

辞書の終わりまでに ) が閉じていないと、エラーになります(カッコの対応関係が正しくない部分があります)。

replace.txt(読み込み時の置換)

辞書を読み込むとき、連結した各行に対して、次の内容を書いた置換を行います。

置換前【タブ】置換後
  • 行頭が # の行はコメントです。
  • 置換前の文字列の辞書順に適用されます(ファイルに書いた順ではありません)。
  • カッコの内側(連結の途中)の行には適用されず、連結が終わった 1 行に対して適用されます。
  • 文字コードは satori_bootconf.txt の is_utf8_replace で決まります。

characters.ini の popular-name と initial-letter は、名前: を「そのキャラクターへの切り替え」に置換する規則として、ここに自動で加えられます。

replace_after.txt(応答直前の置換)

書式は replace.txt と同じです。応答スクリプトが完成し、自動アンカーを挿入したあとで、スクリプトの文字列全体に適用されます。OnTranslate の応答には適用されません。