アウトラインプロセッサの乗り換えを検討中。しかし。

Story EditorからNanaTreeに乗り換えようかどうしようかという話です。

まず。

普段文章書く時、たとえばこのブログの下書きやTRPGのシナリオを作る時やオンラインセッションのログの整理には、アウトラインプロセッサを使っています。以前はサクラエディタで全てすませてたんですが、ファイル数が多くなると管理が面倒になりました。
特にオンセのログ。1日で1シナリオが難しい(というより不可能)ので、ログファイルが複数に分かれます。で、そうすると「あの時どうだったっけ?」が発生した時にものすごく困る。複数ファイルに分かれてると内容検索も面倒だし。かといってログを1つのテキストファイルにまとめるとあまりにも閲覧効率が悪くなりすぎるし。
ということで、文章を階層化できるアウトラインプロセッサに1回1ノード、のような形で保存するようになりました。


やってみてよかったのは、普通にセッションを振り返るのが便利になった以上にメモが取りやすくなったこと。それからDXは1つのシナリオがはっきり起承転結分かれてるうえにシーン制なので、それをノードの入れ子関係で視覚化できるようになったこと。
私が使ってるのは2ペインで、左側はこんな感じになります。

       ……

    • PC紹介
      • PC1
      • PC2

       ……

    • PC間ロイス

       ……

  • オープニング
    • PC1オープニング
      • メモ
    • PC2オープニング
      • メモ

       ……

  • ミドル
    • ミドル1【PC名】:(シーンタイトル、またはシーン概要)
      • メモ
    • ミドル2【PC名】:(シーンタイトル、またはシーン概要)
      • メモ

       ……

エクスプローラーのフォルダ表示みたいなもんです。
で、PC1のオープニングを振り返りたい時は「オープニング」ノード配下の「PC1オープニング」をクリック。すると、右側にそのときのログが現れます。
これはシナリオを作る時にも便利で、「概要」「ゲストNPC」「トレーラー(DX3rdなら)」「ハンドアウト」「オープニング」「ミドル」「クライマックス」「エンディング」というノードをざっくり作ってから細部を詰めていくようになりました。

Story Editor

現在使ってるのがStory Editorプログラマ用はわりとたくさんあるアウトラインプロセッサですが、物語を書くとかシナリオを作る用途だとこちらの方がむいてると思います。
たとえばノードを途中で切る、切った上でそれを現在のカレントノードの子ノードにする、なんてことがボタンクリック一発でできます。


Story Editorで面白いのが「キャラクター」ノードの追加機能。専用テンプレートのノードが作れます。アイコンも顔マークになるので一目瞭然。
ただ、名前や性別も1ノードとして作成してしまうので、そこがちょっと大げさに感じています。1ノードにまとめ書きできるほうが閲覧性いいと思うんだけど。


そんなStory Editorですが、ひとつ大変残念なことが。2003年に開発が止まっているのです。
実はStory Editorには、エディタ部に「漢字を選択して再変換するとStory Editorが落ちる」というバグがあります。修正して欲しいなあと思っているんですが、現状では厳しいかと。
というか、エディタ部については思い切って外部のテキストエディタをエディタとして使えるような仕様にしてもらえたらなあと常々思っています。

NanaTree


乗り換え先として検討してるのがNanaTree。実はこちらも2009年に開発が止まってるのですが、止まると同時にオープンソースにしてくれました。ただしDelphi。ううむ、見たこともないよ。


シナリオ作成、またはオンセログ管理用ツールとしてみると、正直使い勝手などはStory Editorの方が上だなあと思います。
NanaTreeをちょっと使ってみて気になったのは以下の点。

  • アプリのタイトルバーの表示が「NanaTree」のみ(ファイル名表示は省略されるため複数のファイルを開くとどれがどのファイルを開いたものか分からない)
  • 全ノードに渡る検索・置換が出来ない(1ノード内検索・置換は可)*1
  • 1つのノードを途中から親階層と子階層に分けることができない(ノードの単なる分割は出来る。分割した片方を子階層にしたければ分割後に相応の操作が必要)
  • 「ドキュメント全体を見る」ためには印刷プレビューしかない
  • あるノード以下のサブノードを、まとめてファイルに書き出すのが出来ない

最後の項目だけちょっと言及。
上のシナリオ作成例でいくと、たとえば「ハンドアウト」ノードとそれ以下の「PC1」「PC2」……だけをテキストファイルに書き出したい、ということが、Story Editorは出来るのです。この機能をわりと便利に使ってるのでNanaTreeにもぜひ欲しい。でもない。残念です。
ほんとは親子関係なく複数選択したノードをまとめてテキストとしてエクスポートできるともっといいんですが、これはかなり難しい模様。


逆に、これはNanaTreeの方がいいと思ったのは以下の点。

  • 全体にデザインがすっきり
  • ノードアイコンの種類がStory Editorより豊富
  • アウトラインをフレームのメニューページとして全体をHTML文書として出力できる

特に最後の項目。これはかなりのアドバンテージです。自分には。
文書を丸ごとHTMLに変換すると以下のようになります。

ただ、書き出した内容にはちょっと不満もあります。これ、テキスト表示で設定したフォントをそのまま「span style=設定したフォント」で囲ってしまうんですよね。ここのところを好きに設定できるか、いっそ何もしないかしてくれるとありがたいんですが。リッチテキストをそのままhtml化することに重きを置いてるのかな?


ということでDelphiの分かる方、改造してもらえませんか?(ずうずうしいことを言って終わる)

*1:2010/1/14訂正。全文検索できますとご指摘いただきました。