長らく使い続けてきたノートアプリ群があるのだが、今や小説すらVisual Studio Codeで書くようになったのだから、レガシーな環境に囚われるのは辞めよう……ということで、メモや小説執筆に使用するアプリを見直すことにした。
これまで使っていたアプリ
これまで使っていたのは以下のアプリだ。
- Ulysses(小説の執筆用)
- Bear(メモ帳として)
- Apple Note(Bearの代替として試していた)
- Day One(日記用)
- Visual Studio Code(プログラム用だが現在は小説執筆用に、ただし小説の閲覧にはいまいち)
他にもSimplenoteとかLetterspaceとかAgendaとかScrivenerとかiA Writerとか……さらに4-5本はあると思うが書いていっても仕方ないので忘れよう。
Craftはなぜ採用しなかったか
最近しばらくCraftを使っていたのもこの一環だが、結論から言えば、Craftは採用しないことにした。
Craftが悪かったわけではない。iOSでの編集は非常に快適だった。しかし、ちゃんと使うには無料プランではなく$10/月(年間払いなら$8)というのが、結構重かった。それだけでUlysses + Bear + Day Oneぐらいにはなってしまう(私はUlysssesは初期ユーザーなので安いプランのままなので、そうなる)。
AI部分は元のテキスト編集環境にはないところなので、その部分を$5と見ればまあ……なのだが。
UIにグラフィカルな要素が強い点などは、スマートフォン版ではいいんだけれども、macOSでは別に必要ではないな……とか、文書のフォーマット(テキストファイルの形式)が独自系で、出力はMarkdownができるけども、将来の移行時に大変かもしれない、とか、そういうことがあった。
環境作り直しの要件
ちょっと話が逸れたが、今回の環境作り直しにあたって期待していた要件は次のとおり。
- 文書はMarkdownで書けること
- macOSとiOSでアプリがあり、同期が可能なこと
- タスク管理……というと大袈裟だが、やることリストが使えること
- 毎日の備忘録として今日の日記を簡単に作成したい
- 録音した音声が添付できるとよい(ぶっちゃけ使ったことはほぼないが、ボイスレコーダー機能への憧れがある)
- スマホで撮影した写真が貼れること(文章化しづらいもののメモのため)
- 添付ファイルが貼れること(サービス契約時のレシートや、買ったもののPDFのマニュアルなどをついでに保存したい)
- カラーテーマが設定できること(長時間見るので、意外と大事)
- 表示の細かなカスタマイズができること(書いた小説を読むときに小説らしく読めることが必要……まあ最悪Reactとかでざっと作る手もあるが……とは思った)
- 操作の細かなカスタマイズができるか、単に自分の好みにぴったりなこと(後者はなかなかありえないので、前者が望ましい、自分の要求はなんか細かい)
- AI機能(LLM)が組み込まれていること
最後の一行以外は当たり前のことだが(そんなことはない、どう考えても録音とかあってもなくても構わない)、最後の一行が大事なのは、小説をVisual Studio Codeで書いていて「テキスト編集にAIない環境はもうダメだな、過去の遺物だ」と思ったからである。
この辺、詳しく書ける機会があったらまた書きます。
最終的な構成
で、結果的にどうなったかというと。
- Visual Studio Code
- Obsidian(Obsidian Syncは契約するかどうか悩み中)
となる予定である。
Obsidianで何ができるようになったか
まず、BearのノートはObsidianに移行してみたら、そのままタグの構造化機能(フォルダツリーみたいに階層化されるタグをつけられる機能)も移行できた。
Apple NoteやBearやDay Oneでやっていた添付ファイル・画像貼り付けはできるし、音声の録音もまだ試せてはいないが単体でできるらしい。
Obsidianにはプラグインという機構があって、公式の展開するコアとコミュニティに分かれているのだが、この辺は全てコア機能でできる。
で、Craftとかでできていた(Bearとかにもあるけど)タスク管理だが、デフォルトでやることリストがあるが、Tasksというコミュニティプラグインを入れると、「どっかに書かれているタスク」をかき集めてくれるので、デイリーノートという日記のようなものにタスクをバラバラに書いていても大丈夫。
また、Calendarというコミュニティプラグインも入れたので、前の日とかのデイリーノートも読みやすくなった。
そして、期待していたAI機能については、いくつか選択肢がある中、Smart Composerというプラグインを入れてみた。Obsidian Copilotというのもあったが、こっちは少し使いこむと有料って感じだったのと、Smart Composerの考え方がGitHub Copilotのチャットと同じだったので使いやすそうだなと思ったためである。
どちらも外部のAIのAPIを指定して起動する方式になっているから、AIには別途お金を払わないといけないのだが、正直自分がメモ帳から直接AIを使いたいケースはiPhoneで長文を書くのが面倒になったときとかだと思うので、全然APIでよさそうではある。
ただし、しばらくはGemini APIの無料の範囲内にしようと思っている。意外とフリーティアの条件が緩いから十分かも。(なお、この記事の見出し追加はGemini API……厳密にはGenerative Language API……とSmart Composerの組み合わせで行った。レスポンスが長かったのか反応ない感じになったときはちょっと困ったが、十分使えそう。その後iPhoneからもやってみたけどそっちも問題なく動いた)
いちおう、Ollamaとかとも連携できるので、ローカルLLMという選択肢もある。いやまあ十分な性能のLLMを使おうとすると、メモリが足りないし、使うのはiPhoneでだから無理なんだけども……。
Day Oneの代替について
Day Oneについては、まだ完全には代替できてはいないのだが、自分はあまりDay Oneを使いこなしてはいなかったので、なんとかなるんじゃないかなあとは思っている。というか、デイリーノートがかなりの部分引き受けてくれるので。
あとはまあその日の勢いで書くジャーナルの機能なんですよね。Day Oneは有料だといくつでもジャーナルを持てるので、一時期は執筆用のアイデア帳のジャーナルだとかも使っていた。その辺を代替する機能はこれから探す。
小説の執筆環境
で、一方、構造化されたテキスト——自分は小説のことを構造化されたテキストだと位置付けている——については、Visual Studio Codeを使う。GitHubとVS Codeを使ってバージョン管理をしながら、ネタ出しや執筆はClaude Proに支援してもらって、校正はtextlintで小説向けのルールを使いつつ、不足するところをGitHub Copilot Proの編集機能で修正させるのが一番良い。
最後のGitHub Copilot Proの使い方は本当にいいのかちょっとわからないが。
費用
費用的にまとめると次のようになる。
- Visual Studio Code - 無料
- Obsidian - 無料、ただし同期はiCloudよりもお金払ってObsidian Syncにした方がいいような気も……
- Claude Pro - $20/月(本来小説のためだけに使うようなものではないのだ……)
- GitHub Copilot Pro - $10/月 (別に推敲はおまけの作業であって、普通に使うところもあるので$10全部がこれというわけではない……)
- Obsidian から呼び出す LLMのAPI費用 - 一応無料
あれー? なんか出費増えてない?
ObsidianをiCloudで同期すると、ファイルが待避されてエラーが発生します。macOS/iOSともに「ダウンロード済みを保持」設定にして対策中です。(17:00追記)