Visual Studio Codes(VS Code)のフィクション執筆用機能拡張、novel-writerはテキストファイルで小説を書くための機能拡張です。novel-writerを使っていると、縦書きにルビ、字下げなどの体裁を見ながら書くことができますが、VS Codeのエクステンションで普通のテキストファイルと異なる動作を行うために「novel」という言語モードで動作します。その実体はテキストファイルに青空文庫中記法のいくつかを追加したものです。ルビは「父親《ちちおや》」のように注記されていますし、字下げは[#ここから3文字下げ]のような行が入っているだけで、そのまま確認することはできません。

私はnovel-writerで連結したテキストファイルと、novel-writerから書き出したPDFを出版社の担当編集者に納品しています。ほとんどの編集者はこのテキストファイルを受け取ってくれますが、データの運用は出版社によって異なります。テキストファイルと体裁見本のPDFをDTPの現場に持ち込んで印刷用のデータを作ってしまうこともありますが(私がDTPを担当するなら、生のテキストをもらえるこの方法がありがたいですね)、聞くところによると、納品したテキストを一度Wordで開いて体裁を整えてからDTPチームに渡している編集者もいるようです。inDesignで商用の印刷データを作るにはWordからテキストを取り出して読み込まなければならないので、テキスト→Word→テキスト→inDesignという冗長なフローになってしまうし、文字化けも怖かったりするのですが、編集者の手元に扱えるデータがあるのは安心です。いざという時には直しをやってもらうこともできるわけですし。
それはともかく、novel-writerからWordで保存できればいいなーということはちょいちょいあるわけです。コンピューターの苦手な編集者には「Wordじゃないんですか!」と驚かれることもありますからね。
前置きが長くなりましたが、novel-writerからWordで納品する方法を紹介します。
novel-writerでPDF出力を行うと、ワークスペース(作業しているフォルダー)の中にpublish.htmlというファイルが生成されます。

このHTMLはWordで開くことができます。Wordは縦書きのHTMLをレンダリングできないので横書きになりますが、ルビや字下げ、傍点、題名の見出しぐらいは読み込んでくれます。

レイアウトタブで文字の方向を変更してください。

本文のスタイルは、Normal(Web)で設定できます。段落設定でマージンを0にして、行間を1.75に設定してください。


このままではルビが大きすぎるので、ルビのサイズを一括で変更します。全文選択してコンテクストメニューで「フィールドコードの表示」を行い、検索置換できるようにします。


フィールドコードが表示できたら「hps24」を「hps12」に、「up 11」を「up 9」に検索置換してください。hpsと数字の間には空白がありませんが、upと数字の間には空白が必要です。検索置換してフィールドコードを非表示にすると、ルビが小さくなります。

「複製を保存」を行いdocx形式で保存すると、縦書きのWordファイルを保存できます。