楽がしたい。出来るだけ楽がしたい。CoCシナリオを書くにあたって本文を書く以上のことをしたくない。本気で
しかし昨今のCOCシナリオ、手間がかかる。きちんと装飾とかしないと長くなりがちシナリオは見づらい。でもHTMLタグとか、マウスで装飾ボタンポチポチとかできればそんなにしたくない。キーボードで本文打つのに必死なのにそんなことをしている余裕は私のスケジュールにはない……。
なんならあと、テキストファイルもつけなければならない。装飾したものをテキスト出力するとなんとまあ見づらいベタ打ちファイルが完成する。それは見づらい……これも何とかしたい。
探索者とかKPCとかうちたくないレベルに面倒くさがりの私はCoCシナリオを書くのに向いていないんじゃないか……?
とはいえ、CoCシナリオを書いている。7年ぐらい。
頑張ってラクしようとしている軌跡をメモっておこうとおもいました。
Markdownファイルで全ての出力形式を網羅する
まず、markdownファイルで書くことにした。これでPandocを使用すれば、HTMLからテキストファイルからWordファイル、latexや電子書籍ファイル、もちろんPDFまで全部出力できる。もちろん一つ一つの出力方式でテンプレートを変更できる。使わないわけにはいかない。
Githubでバージョン管理してクソファイルを減らす
コピーコピー(1)コピー.txtのゴミにも等しい、大量のバージョンファイルをなんとか減らしたい一心でついに、githubでのバージョン管理に手を出した。へ~、シナリオでも使えるじゃん。これでクソファイルが増えなくてすみました。
Espansoで何もかもを素早く入力する
- trigger: "@red"
replace: "<span style='font-weight: bold;color: red;'>$|$</span>"
- trigger: "@blue"
replace: "<span style='color: #0e64ce;'>「$|$」</span>"
- trigger: "@green"
replace: "<span style='color: #13934d;'>『$|$』</span>"
- regex: "@sanc(?P<san1>.*),(?P<san2>.*)\\."
replace: "<span style='font-weight: bold;color: red;'>(SANC {{san1}}/{{san2}})</span>"
- trigger: "@dice"
replace: "> # 《$|$》"
こんな感じに入れておくと、もう楽。すごく楽。こうしておくだけですごく楽。
Dynalistで書いているプロットをそのままMarkdownにする
実はこれから進化して、ViolentMonkeyなどのchrome拡張で動くDynalistからMarkdownにするスクリプトを作成して、それを使用している。
プロットをそのままMarkdownに出来るので、きちんと書けば書くほど本文を書く手間がなくなる。すごい。
Typoraで分割執筆環境を整える
シーン分割すると、とても楽だということに気づいたので環境を整えた。
ついでにTextLintも入れたので、勝手にマージするたびに文章直すべきところを教えてくれる。
他にやったこと
MarkdownからPandocを経由して、装飾済みテキストファイルを自動生成させたり、Markdownの本文の中から【エネミー】と指定された要素ブロックを切り出して、自動でココフォリアコマとして使えるコードを出力したり……。
正直これらを実装して、リリース前の「あれもしなきゃ……これもしなきゃ……」が減った。
本文書いてそれぞれエクスポートボタンをぽち……ぽち……して一応中身を検分したら、もうあとはBoothページ作って宣伝叩くだけ。速さがえげつないことになった。
本文をギリギリにしか完成させなくなった……(虚無フェイス)