
novel-writerは小説やエッセイなど、まとまった量の文章をストレスなく扱うために開発した機能拡張です。一行あたりの文字数を設定できる原稿プレビューは原稿用紙のようにも使えますし、新聞のような低い段組の字切りを意識しながら執筆できます。
最新のソフトウエア開発技術を執筆にnovel-writerのプラットフォームは、Microsoftのソフトウェア開発環境Visual Studio Code(VS Code)。正規表現複数ファイルの検索置換やGitのバージョン管理などの機能もそのまま使えます。Textlintなどの強力なプラグインと併用することで、文字の用法統一をきめ細やかに行えるようにもなります。
版下のPDF出力novel-writerは分割したテキストファイルを結合してCSS組版システムのVivliostyleで縦書きのPDFを出力できます。
出力したPDFは同人誌などの軽印刷の版下にもお使いいただけます。
段落ハイライト
品詞ハイライト
原稿用紙プレビュー
「プログラミングで当たり前の文法ハイライトを小説でも使いたい」
novel-writerの開発はここから始まりました。鉤括弧で囲まれた会話文と地の文の色を分け、読み仮名や傍点のための注記は目立たないグレーで表示されます。
品詞ハイライトをオンにすると、他では類を見ない品詞の色分け表示も可能です。品詞のハイライトでは、推敲の時に注目したい副詞や代名詞はオレンジ色や黄色など目立つ色に表示されます。
novel-writerは日本語を扱うことのできるエディターを目指して現在も開発中です。
アウトライン編集原稿用紙300枚ほどの短い小説でも、一つのファイルにまとめるとその長さは30mを超えてしまいます。時には120メートルを超える長大な文書を行ったり来たりするのにどれだけの時間を無駄にしていることでしょう。
novel-writerを使うと、シーンごとにテキストファイルを分割してフォルダーに納め、節や章ごとに書いていく方が楽になっていきます。入稿する時はテキストファイルを一つに連結して、単行本とそっくりに文字が縦組されたPDFを提出できます。連載なら一話分のフォルダーだけまとめたいところですね。もちろんそれも可能です。
何枚の小説をどこまで書いたのか、あのシーンに何枚費やしたのか、今月(あるいは今日)提出しなければならない20枚の原稿をどこまで書いたのかを知ることは執筆のペースを掴むためにとても大切です。
novel-writerは、現在執筆しているファイル、フォルダーに含まれるシーン全ての合計、そして締切を設定したフォルダーのテキストファイルの文字数と、原稿用紙枚数で表示できます。
原稿用紙の枚数表記は、単に400で割った数字ではなく段落の行数を計算していますので、改行の多い場合でもみっちり書く場合でも、そこそこ正確な枚数を表示できます。
novel-writerユーザーガイド
novel-writerに関するBlog
novel-writer 3.0.0 をリリースしました。 VisualStudio Market Place > novel-writer 今回のバージョンアップでは、サイドパネルの原稿ツリーに編集機能を搭載しました。ファイル名の変更、ファイルとフォルダの挿入、ドラッグ&ドロップによるファイルの並び替えと連番の自動付与ができるようになります。 ファイルを選択している時にEnterキーを押すと、ファイル名を変更できます。確定はEnterキーです。ドラッグ&ドロップが有効な時は連番と拡張子はnovel-writerが付与しますので、シーンの名前だけ入れてください。 ファイル名を変更する機能ですので、プロジェクトのバックアップは定期的に取得してください。なお、Gitを使っているとファイルの名前が変わることで履歴が断たれてしまいます。順番を入れ替えた後で % git add . を実行(VS Codeでは「全ての変更をステージ」)して、ファイルの履歴を接続できます。 サイドパネルのタイトル部分ボタンをクリックすることでドラッグ&ドロップが有効になり、ファイルとフォルダーの連番と拡張子が非表示になります。ドラッグ&ドロップが有効な間は、ファイル・フォルダーの連番はnovel-writerが管理します。フォルダ内のファイル数に応じて、連番の桁数は変わります。 順番の入れ替えはファイルの名前を書き換えるため、エディターで表示しているファイルが存在しないファイルを開いてしまうことになってしまいます。保存済みのファイルはnovel-writerが安全に閉じますので、VS Codeの自動保存を有効にすることをお勧めいたします。 今回のリリースでnovel-writerは二度目のメジャーバージョンアップを果たし、ようやくノベル――長編小説を書くための機能を搭載しました。どうぞ皆さんもお使いになってみてください。 これから溜まっているIssueを一つ一つ検討していきます。 PS: GitHubスポンサーを始めました。

Githubが運営している支援サービス、GitHubスポンサーを始めました。 https://github.com/sponsors/ttrace 支援メニューは月額1ドルの定期支援と、5ドルのワンショット支援。メニューにない支援も可能で、すでにお二人から支援をいただいています。支援いただいた方はnovel-writerのREADMEにGitHubのアカウントを掲載いたします。 全ての支援は開発に必要なコーヒー豆の購入と、普段使いではないWindows PCの代金に使わせていただきます。 段落のカラーリングから始まったnovel-writer は3年で大きなソフトウエアになりました。縦書きプレビューは横書きにも対応し、形態素解析をして品詞の色分けを行い、文末の「た」と「る」を切り替えができるようになり、ドラッグ&ドロップでファイルの並び順を入れ替えられるようにもなりました。必要に応じて作ってきた機能しかないはずなのですが、これだけ機能が増えると、手を入れられないものも増えてきています。WindowsやLinuxでの動作確認はほとんど行っていませんが、必要な時は仮想環境を使って確かめてもいます。今回、スポンサーシップを始めたのは、そんな機能を楽しくメンテナンスし続けるためです。 電子書籍のセルフパブリッシングでデビューしたのですが、商業出版も成長産業というわけではありませんので、これからは軽出版やnotesにも積極的に取り組んでいこうと考えています。GitHubスポンサーはその第一歩です。 提供支援は荷が重いかもしれませんが、思いついた時にコーヒーを買ってくれるぐらいのつもりでご支援いただければ幸いです。

プログラミング開発エディターVisual Studio Codeをフィクションの執筆に使うことにしたのは、2021年の春でした。新型コロナウイルスによる行動制限が一年を超えたその頃、減った収入が戻りそうもないと思った私は真剣にAdobe CCからの脱退を考え始めたのです――というような話は、2021年のVS Codeミートアップに参加したときの映像をご覧ください。トランスクリプトはログミーで公開されています。 「Visual Studio Code」で執筆するSF作家藤井太洋氏が作る物書きのための拡張機能 この動画を収録してからはや2年。ScrivenerからVS Codeに乗り換えて、プログラミング用のエディターでフィクションを書き始めてから3年半が経ちました。novel-writerの開発も、3年半続いたということになります。 複数のテキストファイルを一つのファイルに統合する機能は3年半前からありました。複数ファイルにわたる文字数を数えることも、連載を想定して特定のフォルダーの文字数だけをカウントすることも可能です。単行本一冊分のテキストを、かなり綺麗な縦書きのPDFに変換できるようにもなりました。novel-writerの機能ではありませんが、VS Codeは複数のファイルにわたる検索置換もサポートしていますし、Gitで複数のファイルからなるフィクションの状態を記録し、後戻りしたり見直したりすることも可能です。Textlintのprhモジュールで正規表現による校正を行えば「今」と「いま」のどちらを使うかという用語の統一も可能ですし、「私はは」のような助詞の不適切な連続も執筆中に取り除くことができます。markdownには図やシーケンスダイアグラムが書けますし、資料の画像もPDFも、VS Codeから離れることなく閲覧できます。一行の文字数を指定できる縦書きのプレビューはScrivenerにもないものですし、1日の編集距離を知ることができるエディターを他に聞いたことがありません。 この3年間、私はVS Codeとnovel-writerの他にエディターを使う必要がありませんでした。novel-writeは悪くない機能拡張ですが、「novel(長編小説)」を書くために必要な、最も大きな機能を欠いていました。ファイルの並べ替えです。 そもそも私がScrivenerやVS Codeを使うのは、「novel(長編小説)」をいくつものシーンに分割して書くためです。ワードプロセッサーで長さ三十メートルにも及ぶファイルをスクロールする苦役から逃れるためです。Scrivenerは素晴らしいソフトウエアでした。シーンファイルやその集合体のフォルダーの順番を、アウトラインプロセッサのように入れ替えて編集できました。私はVS Codeでも同じように作業をしようとしましたが、アウトラインのデータ構造を持つScrivenerと異なり、実体のファイルを扱うVS Codeで同じことをしようとすると、フォルダーとファイルの先頭に番号を手動で割り当てていくしかありません。 ファイル名の連番は悪くない考え方です。特別なソフトを使わなくてもファイルが並びますし、執筆ソフトを乗り換えるのも容易です。しかし、作業は苦痛でしかありません。10のシーンテキストがあるときに冒頭にもう一つのシーンを追加しようとすると10回、100のシーンテキストを修正しようとすると100回名前を付け直さなければならなくなります。Unix由来のコマンドや短いプログラムを書けばだいぶ楽になるとはいえ大変な作業であることに変わりはありません。 Scrivenerやアウトラインプロセッサーのように順番を入れ替えて、番号の割り当てをプログラムで行えればどれだけ楽になるだろう――と考えない日はありませんでした。そういう作業こそ機械にやってもらうべきなのです。しかし、これが結構難しい。 現在のnovel-writerには「原稿ツリー」はVS Code標準のツリービューを利用しています。階層表示でそれぞれのフォルダーの文字数を表示することができるので私自身も重宝しているのですが、このツリービューのドラッグ&ドロップは、ドロップポイントをノードとノードの間に設定できないのです。 私の欲しいツリービューは、ゼロから作るしかないことがわかっていました。縦書きプレビューのようにHTMLとjqueryで書いても作れる気がしましたが、機能追加やメンテナンスのことを考えるとユーザーの多いフレームワークを使う方がいい。それに、そろそろ自分のプログラマーとしての力量もアップデートしておきたい。そんな目論見から、VS CodeのサイドビューにReactのAppでツリービューを作り込むことにしました。 ちょうど『マン・カインド』が手から離れ、次の改稿と約束している連載にはこの機能を使いたい。というわけで、一週間粘って、ようやく自分の手元で使えるところまで持ってくることができました。苦労話をどこかでできるといいんだけど、どこがいいかなあ。 なかなか立派に動いていますが、一般公開するにはちょっと物足りないところもあります。名前の変更、ファイルやフォルダの追加・削除はできたほうがいいでしょうし、ひょっとしたらアンドゥも必要かもしれません。ファイルを操作する機能なのでバグも怖い。ファイルが消えちゃうかもしれませんし、ホームディレクトリを丸ごと、あるいはリモートにあるたくさんのファイルを開いて操作してしまうと負荷も大きくなることでしょう。OSを巻き込んでクラッシュする可能性もゼロではありません。そんな時、誰もがGitを使っていて元に戻れるとは限りません。VS Codeには自動バックアップもありますがファイルそのものが失われてしまうとその機能を使うこともできなくなります。一段階ぐらいのアンドゥは必要かもしれないけれど、複数ファイルにわたる状態を「取り消す」のはかなり怖いものがあります(だからほら、ファイルを使うアプリってファイルの状態はアンドゥできませんよね)。 そんなわけで、公開まではもう少しお時間をいただきます。きっとバージョンは3.0.0になっていることでしょう。お楽しみに!
Load more posts
Something went wrong. Please refresh the page and/or try again.
How 2001: A Space Odyssey Became “the Hardest Film Kubrick Ever Made”
https://www.youtube.com/watch?v=LCnt17LhA5A
みたいなことが主題だとおもうんだけど、感想の多くが「男社会しんどいのわかる」か「女性の考えた男社会でしかない」で、多くの人は「男社会vs名端」だと読んだらしい。
近隣・周辺諸国・中央との距離感や意識、現実のありかたが地域によって違うことを、「日本」という言葉は塗り潰して、リアリティの濃さの違いが忘れられてしまう。
https://toyokeizai.net/articles/-/826004