novel-writer+Vivliostyleで最強になる

なります。

こんにちは。概念(@composershandle)です。

novel-writer+Vivliostyleが非常に使い心地が良いので、字書きオタクの間でこれを標準化したいくらいの気持ちで書いています。

必須

制限事項

  • 自分の作った、それなりに文学的体裁の整った縦書きの文章を眺めてニヤニヤしたい人間であること。
  • 自分で作成した文章のPDFに表紙や奥付をつけてインターネット上で入稿を果たすことで、自分の作った文章が物理的に形や重量を持っていることに喜びを感じる人間であること。

  • つまりは、字書きオタクか否か、ということです。
  • あるいは、それに匹敵するほどの物好き。

novel-writerの制限事項

  • 青空文庫の形式のtxtファイルで原稿を書くことになります。
    • markdownには非対応
      • markdownで原稿を記述する場合は、Vivliostyleのみを活用してください。その場合、ここでは詳しく書きませんが、Vivliostyle Flavored Markdownの形式で原稿を記述できます。
      • 技術書を書こうとするならば、青空文庫の形式で書く必要は特にありません。
    • 青空文庫の形式でルビ、傍点、二重線などを引けます。
  • 注意:VSCode拡張機能「テキスト小説」は、「novel-writer」と競合します。
    • 「テキスト小説」も青空文庫の形式で記載でき、またルビショートカット機能があるため、こちらを試すのもよいかもしれません。
    • ブラウザプレビュー機能は「novel-writer」にも「テキスト小説」にもありますが、(入稿用)PDF作成機能はおそらく「テキスト小説」にはないと思います。
      • 少なくともインストールページへの記載はありません。
      • 表示されているページを印刷するようなPDFは印刷メニューから生成できますが、本のような形にはなっていないと思われます。
  • novel-writerはVSCode拡張機能であるため、VSCodeを操作する必要があります。
    • すなわち、宗教上VSCodeを使うことのできない方には向きません。
    • また、文章を書くためにコードエディタを使うことにアレルギーのある方にも向きません。

Node.jsの制限事項

  • コマンドプロンプトを操作する必要があります。
  • ある程度のエラーに対処するか、代替方法を見つける必要があります。
  • Node.jsのnpmパッケージにある程度慣れている必要があります。いくつかの躓きそうな箇所に関しては、こちらをご覧ください。

    composershandle.hatenadiary.com

基本手順

ここまでの制限事項に合致した方は最強になれる条件を満たしています。

おめでとうございます。とりあえずこの基本手順をすべて終えましょう。

 

①Node.jsとVSCodeのインストール。

  Node.js Visual Studio Code - Code Editing. Redefined

VSCode内のExtensionsの検索欄から「novel-writer」を検索し、拡張機能をインストール。

  novel-writer - Visual Studio Marketplace

③原稿を入れておくためのフォルダを作り、そこにNode.jsで

npm install -g @vivliostyle/cli

を走らせることでそのディレクトリにVivliostyleをインストール。 

  @vivliostyle/cli - npm

これはNode.jsのコマンドプロンプトから行ってもよいし、VSCodeでそのディレクトリで上のメニューからTerminalを立ち上げてそこにコマンドを打ち込んでもよい。

④Workspaceの一番上に原稿ディレクトリを持ってきて、右クリックメニューの一番下の「Novel:締め切りフォルダー」を適用する。

 

これでひととおり土台が整いました。これをさらに使いやすくしていきます。

応用手順

  • VSCode拡張機能「zenkaku」、(「Auto Close Tag」)をインストール。
    • 前者は全角スペースをVSCodeで使えるようにする拡張機能
    • 後者は自動で括弧やタグを閉じてくれる拡張機能ですが、あまり役に立たないかもしれません。
  • もしGitで原稿を管理したいなら(そうしたほうがよい)、VSCode拡張機能GitHub Pull Requests and Issues」、「GitLens -- Git supercharged」をインストール。
    • privateリポジトリなどに連携して使いましょう。
    • novel-writerにもGitの編集距離を見る機能があるので、活用できます。
  • VSCodeの「右端で折り返し」ショートカット Alt+Z を覚えましょう。

novel-writerの利点

novel-writerの数ある利点はインストールページでも紹介されていますが、あえてこの中から選ぶとするなら、わたしは品詞ハイライトを挙げます。

品詞ハイライトでは視覚的に名詞や語尾のリズムを見て取れますから、文章の調子を整えるのに役立ちます。

その他に関しては、こちらをご覧ください。画像付きで非常にわかりやすく記載されています。

marketplace.visualstudio.com

おま環記あるいはわたしの技術不足

  • なぜかプレビューサーバーのlocalhost:8080に接続できず、そしてプレビューサーバーの箇所に書いてあるURLには同じ機種のしかもFirefoxからしかアクセスできませんでした。(なぜ…?)
    • これならVSCodeの画面をSplitしてプレビューしているのと変わらないので、利点が3割ほど減っている。
  • 見出しがうまく生成されません。力技の解決策としては、出力されたHTMLをちょっと弄ってh4タグとかを埋め込むのが手っ取り早そう。
  • なぜか「PDF出力」でPDFまでは出力されませんでした。
    • 代わりに生成されるHTMLに対してNode.jsかVSCodeのいずれかのターミナルで「vivliostyle build (ファイル名).html」を打ち込めば同様にPDFが生成されます。
    • 「vivliostyle preview (ファイル名).html」でPDF出力前のプレビューでサイズ変更できたりするため、これはこれでアリかもしれない。
    • 時間かかってただけでPDFは問題なく出力されています。せっかち。

おわりに

以上が概要です。それぞれのドキュメンテーションなどにより詳しい利点(VivliostyleによるCSS組版の利点など)が載っているでしょうから、ぜひ訪れてみてください。

novel-writerのプレビュー画面はおしゃれなので、とても気に入っています。

次の記事でまたお会いしましょう。概念(@composershandle)でした。