Obsidianで日本語小説を書く人のためのプラグインを作った
Obsidianで日本語小説を書く人のためのプラグインを作った
セリフ・ルビ範囲・カッコの色分け、縦書きプレビュー対応
はじめに ─ なぜ作ったか
仕事でVSCodeやサクラエディタを使い慣れていたので、小説執筆にもそのままサクラエディタを使っていた。
転機になったのはMacBookを購入したこと。「デスクトップPCを母艦として、MacBookやスマホと同期しながら、暖かくなったら庭でも執筆できる環境を作りたい」という目標ができた。
エディタ候補としてVSCodeも考えた。ハイライト機能も充実していて優秀だし、使い慣れてもいる。ただ今回Obsidianを選んだのは、プラグイン構成がシンプルで、自作のハードルが低そうだったから。実際、AIに聞きながらでも完成させることができた。
Obsidianに乗り換えてみると、日本語小説向けの機能がどうしても不足していた。それがこのプラグインを作るきっかけになった。
将来的には、ローカルLLM(Ollama、無料)を使った執筆補助AIプラグインも作ってみたい。
Obsidianとは

マークダウン記法で書くノートアプリ。テキストファイルとしてローカルに保存されるので、データが手元に残るのが特徴。WindowsもMacもiOSもAndroidも対応している。
小説執筆で役立つデフォルト機能として、以下のようなものがある。
- 編集画面とプレビューの切り替え(ライブプレビューも可)
- CSSカスタマイズによる縦書き表示
- タグ・内部リンクによるファイル間の関係管理
- グラフビュー(ノート間のリンクを可視化。キャラクター関係図などに使えるかもしれない)
複数端末の同期について
Obsidianには公式の同期サービス「Obsidian Sync」がある(月額数百円)。ただし、無料のクラウドサービスでも代替できる。
| 項目 | Obsidian Sync | 無料クラウド(iCloud / Dropbox 等) |
|---|---|---|
| 設定の簡単さ | ◎ すぐ使える | △ 設定が必要 |
| 料金 | 有料 | 無料 |
| 安定性 | ◎ | ○ サービスによる |
| バージョン履歴 | あり | サービスによる |
| 対応プラットフォーム | 全端末 | サービスによる |
筆者はObsidian Syncを使って、Windows PC・MacBook・スマホの3端末で同期している。マークダウンテキストだけなのでデータ量はほぼ無視できるレベル。
プラグイン紹介:Japanese Novel Tools
できること

-
「」『』()のシンタックスハイライト -
入れ子構造も正確に色付け(例:
『いろは「にほへ」とちり』の中の「」も別色で表示) - 全角スペース・改行の可視化(推敲時に見落としを防ぐ)
- プレビュー縦書き対応(縦書き時のハイライトは任意設定可)
- 小説モード改行維持(Enter1回の改行をプレビューでも維持)

縦書きプレビューはホイール操作で左右スクロールできる(横書き本のように右から左へ読み進める感覚)。
ルビ(振り仮名)について

ルビの表示自体は別プラグイン「Japanese Novel Ruby」(作者:quels氏)を併用することで使える。本プラグインはその「ルビ部分の色分け」に対応している。
裏話:プラグイン間の「処理順序」との戦い(技術者以外の方向けに)
2つのプラグインが同じ文章を同時に処理するとき、どちらが先に動くかで結果が変わる。
たとえば「Japanese Novel Ruby」がルビを変換した後に色付けしないといけないのに、逆の順番で動いてしまうと色がつかない。これは「料理で、先に盛り付けてから調理するようなもの」で、順番が重要。
さらに厄介なのが、両プラグインが同じ場所(ルビの記号部分)を触ろうとするので、お互いの処理が衝突してしまうこと。どちらかが書き換えた後を、もう一方がまた書き換えようとして壊れる、という状態になった。
この処理順序の制御と競合回避に、開発の中で一番苦労した。
インストール方法
公式コミュニティプラグインから(審査通過後)

Settings → コミュニティプラグイン → 検索で「Japanese Novel Tools」
※現在、Obsidian公式の審査申請中。承認され次第、ここから直接インストールできるようになる予定。
GitHubから手動インストール(現在はこちら)

① ファイルをダウンロード
https://github.com/satoshikokubo/japanese-novel-tools/releases の最新版を開き、以下の3ファイルをダウンロード。
main.jsmanifest.jsonstyles.css
② フォルダを作成して配置

Vaultフォルダ内に以下のフォルダを作成し、3ファイルをその中に置く。
(Vaultフォルダ)/.obsidian/plugins/japanese-novel-tools/
③ Obsidianで有効化

Obsidianを再起動 → Settings → コミュニティプラグイン → リストに表示された「Japanese Novel Tools」をONにする。
設定の説明

Settings → コミュニティプラグイン → Japanese Novel Tools の歯車アイコンから設定を開ける。
主な設定項目は以下のとおり。
- 各ハイライト(
「」『』()《》)のON/OFF - 色のカスタマイズ(カラーピッカーで自由に変更可能)
- プレビュー縦書きのON/OFF・高さ調整
- 横書き時の表示幅(編集・プレビュー独立して設定可能)
- 小説モード改行維持のON/OFF・適用フォルダの指定

ハイライトは個別にON/OFF可能。プレビューでのハイライト有無も設定できる。

デフォルトの色はやや淡めに設定してある。執筆の邪魔にならない程度の主張感を意識した。

プレビュー縦書きの設定。マウスホイール下回転で左に読み進められます。
「小説モード改行維持」とは何か・なぜ必要か
前提:マークダウンの仕様で、改行が無視されることがある
Obsidianはマークダウン記法を使っているため、プレビュー画面では「Enterキー1回の改行」が無視されて、前後の行がくっついて表示されることがある。これはObsidianの不具合ではなく、マークダウン本来の仕様。
Obsidianの標準設定で解決する方法
Obsidianの設定に「厳密な改行」という項目がある。
これをOFFにするだけで、全ノートでEnter1回の改行がプレビューでも維持されるようになる。
まずはこちらの設定変更を試すことを推奨。
それでもプラグイン側に機能がある理由
「厳密な改行」はVault全体に効く設定なので、小説以外のノート(メモ・日記など)も改行挙動が変わってしまう。
「小説フォルダだけ改行を維持したい・他のノートはそのままにしたい」という場合に、この機能が役立つ。
なお、「厳密な改行」がOFFの場合は二重適用を防ぐため、プラグイン側の本機能は自動的に無効(グレーアウト)になる。
おわりに
フィードバックやバグ報告は GitHubのIssues へ。
日本語小説執筆をObsidianでやってみたい方の参考になれば嬉しい。
筆者の小説はこちら(誰も来ないと思うけど、念のため)
Discussion