原稿を書く水曜日

7:00

おはようございます。本日も原稿まわりを。あと妻の病院のつきそいです。

朝巡回:

2025/7/30 - 倉下忠憲の発想工房

8:00

メルマガを書きたいところですが、その前に新エディタについて少しだけ考えておきます。

新エディタ:

こうして作業記録を書いているときに、モーダルを起動させる。

そこでは何が期待されているか。

一つには明確に移動(新しいファイルを開く)であり、それはObsidianのコンテキストです。一方で、別のこともあるのではないか。

たとえば、作業で手を止めたとき、原稿が進んでいないときに、手慰みで起動する。ターミナルでlsを叩くときみたいに。

そういうときに何か手を動かす手段としてモーダルを起動させる、ということを位置づけられるのではないか。

原稿であれば、たとえば総文字数を確認したり、あるいは、アウトラインを確認したいりするようなこと。そのような「上」を参照できるようにすること。

そういう機能を欲しているのではないか。

仮にそうだとして、chapterファイルからアウトラインを確認できることを実装できるとして、じゃあ、作業記録ファイルであれば何が表示されると嬉しいのか。

前後の日付のファイルのタイトルが並んでいても仕方がないだろう。

月ノートや週ノートを作っているなら、それを表示させることもできる。今ちょうど「上」への移動でやっていることだ。それを別ウィンドウで表示するのではなく、モーダルとして表示する。ちょっと見るために。ちらっと確認するために。

* * *

「月ノート」なのか「今コミットしているもののリスト」なのか。

おそらくTextboxのtodo-boardで表示させているようなものを作業記録のモーダルで表示するのがよいのだろう。

ここで問題。仮に作業記録と原稿ファイルで表示させるモーダルが違う場合、その切り分けはどのように行うのか。

ファイル名で確認するか、予め登録しておくか、だろう。もう少し言えば、日付ファイルかそれ以外か、ということか。

Obsidianのような「ファイルを開く」機能は必要ない? それは普通に「ファイルを開く」コマンドからやればいい。

一度開いたファイルを開けるようにしておく、という手はある。その場合は、名前の変更や削除に対応する必要があるが、なくてもまあ別に困らない。

今考えたいのはもっと別のこと。

* * *

最近開いたファイルの一覧、自分がマークしていたファイルの一覧を表示させることで、移動がスムーズになり、また文脈的になる、ということはある。

* * *

lsを叩くのは、何かを「確認」している。位置を確認し、周辺の情報を得ている。また、単に画面に表示させるものを変化させている、ということもある。

* * *

ショートカットキーで上のファイルに移動できるようにしているが、むしろそれがモーダル表示のキーでもいい。なぜ移動する必要があるのか?

たぶん、実際に表示させて編集したい、書き込みたいという場合とちょっと確認したい場合とがある。リストなどは特にそうだろう。

* * *

todo-baardは基本的に一日に一度しかみないし、作業記録がObsidianだったころは、Textboxは「別のツール」だったわけなので、余計にみないことになる。

タスクリストというよりも作業記録から参照できる場所にそうしたリストを置いておくこと。今、やろうとしていることはそういう試みなのかもしれない。

Image from Gyazo

こういう情報が表示されたらいい? 編集不可能な形でもよいか?

Image from Gyazo

モックアップで作ってみた。プロジェクト名とタスクを並列する書き方。

この書き方だと文字サイズを相当小さくしないと行がはみ出してしまう。たぶんプロジェクト名とタスク名で行を替えた方がいい。

が、それ以上にここまで具体的な記述が必要なのか、という点は多少気になる。プロジェクト名だけでも用を足すのではないか。

あるいは、プロジェクト名+タスク名としたときに、WorkFlowyのような検索結果として表示されたら面白いかもしれない。タスクを抜粋するわけだ。何らかのマークによってそれを記憶しておく、というような。

Textboxと同じ仕組みを使えば、扱っているファイルすべてのtodoを抜き出すことはできるが、そのためにはすべてのファイルを対象としたindex用のjsonが必要になってくる。たぶんそれはこのエディタが向かう方向とは違っているだろう。そもそもそれならTextboxを使えばいいわけだから。

一つの方向として、Textboxのエディタをこのエディタにして、移行はTextboxと連携して使っていく、という形はありえる。で、それはたしかにアリだろう。一方で、汎用的なエディタという理念をしばらく追求していきたい。どのフォルダでも使える、という形。

それが本来的なテキストエディタであろう。

* * *

とりあえず、何がどう表示されていたら嬉しいかを考えるために、コードを書き換えなくてもモーダルで表示されるものを変更できる仕組みを作っておこう。

何かしらのmdファイルあるいはjsonファイルを読み込んで、それを表示するようにしたらいい。あるいは、「最近使ったファイル」や「マーク処理をしたファイル」を表示させるのでもいい。

Gitのコミットログを表示させてもいい(取得できたら、だけども)。

そのコードはまた後で書くことにする。

9:00

メルマガ:

二つ目の原稿を書きましょう。

* * *

4400文字の原稿を書きました。かなり疲れました。

13:00

作業再開です。

新エディタ:

モーダルを開いたときに、編集可能なものを表示する、という機能の実装ですが、

の3つの選択肢があります。

また、JSONファイルもファイルを開いた履歴を管理するhisotory.jsonをまるまる読み込むパターンと、memo.jsonみたいなものを作って、そこから特定のIDを持つものを引きだす場合があります。

表示するのはモーダルなので、量が多いものではない点を考えると、JSONでもいいかもしれない、という点はありつつ、直接ファイルを編集するのは、mdの方が楽ですね。

* * *

モーダル上で単に閲覧するだけならば特に差はない。編集は別の場所で行うなら、mdファイルがよい。一方でモーダル上で編集するならJSONでも特に問題ない。

JSONをTextboxと共有する場合でも、そちらで編集できるので問題ない。

結局、なんでもありということになってなかなか決められない。

* * *

たとえば「タスク」を表示させるとしよう。現状であれば、do.jsonにデータが入っている。それを参照すればいい。その際に、リストを表示するだけでよいのか、編集できた方がいいのか。

Textboxでは、jsonの特定の項目をカード型で表示し、そのまま編集できる機能があるので、リスト表示+編集が実装されている。そこまでのことをやるのか。

do.jsonでは、タスク1つにつき一つのオブジェクトになっているから個別の編集が必要だが、一つのオブジェクトが一つのリストになっているならば、その項目の編集だけでよい。

なかなか難しい。

* * *

ひとまず、7月のノートを表示させてみました。サンプルとして作ったので、表示してもあまり嬉しさはありませんね。

Image from Gyazo

が、とりあえずこのノートを編集したら表示される内容が変わるようになりました。まずは第一歩。

すdねいいくつかアイデアが浮かんでいますが、しばらくはこの形で使って、何がどう表示されたら嬉しいのかを確かめていきましょう。