原稿を少し進める水曜日

8:00

おはようございます。昨日は、いくつか事務作業などをこなし、気になっていたことがいくつか減りました。よかったです。

とりあえず、今日も無理をせず、いつもの半分くらいを目指して作業しましょう。

TH:

第二章の肉付けを進めます。

* * *

まずは500字で一ブロック書きました。

* * *

さらに800字書きました。

* * *

さらに500字弱書きました。

* * *

なんとなく第二章に足りないものがぼんやりと浮かんできました。内容自体が悪いのではなく、どこを掘り下げるのかを間違っている感じです。その点を、後でもう少し掘り下げましょう。

9:00

メルマガ:

原稿3を書きます。

* * *

3300文字ほど書きました。やや短いですが、今週の本編はこれくらいにしておきましょう。

10:00

Textbox:

メモをTextboxのinbox.mdに保存するようにしたので、それをサイドバーに表示させるようにしたいです。

で、現状右側のサイドバーは、command + o で開くようになっており、そこではproject.mdが表示されます。これをinbox.mdに変えつつ、「メモの処理」に向いた機能を与えたいところです。

* * *

サイドバーはprojectの表示だけでなく、「読書日記」「イベント」「tasks」「books」「idea」などのページを呼びだせるようになっていた。つまり、今memo.mdでやっているのと似たことを実現しようとしていたわけだ。

実際、サイドバーから書籍データにアクセスできるのは便利だろう。ふむ。タスクやスケジュールなども表示的たら嬉しいだろうか。

ちょっとinbox表示の前に考える必要がありそう。

12:00

Textbox:

books.mdはサイドバーで表示させても、きちんと詳細の編集ができます。これはなかなかいい感じ。

ということは、todo-board.mdも同様ですね。ここでは「今週のやること」が表示されるのでそれをサイドバーにならべるのは悪くなさそうです。

* * *

project.mdをそのまま呼びだしているので、todo-board.mdではむしろprojectは不要かも。

* * *

todo-board.mdの表示を、今週のtodoだけに絞りました。今週のtodoは、このページから修正も追加もできるので、サイドバーに表示させても問題なく機能します。

で、問題はinbox。

inbox.mdを直接ひらくことなく、使用ずみのものを消去したりしたい。mdファイルを直接編集するのはちょっとリスクフルです。

inbox.mdに関しては、sidebarの機能として編集機能を持たせる、という方向は考えられます。そうしておけば、inbox.mdの中にscriptタグを書き込む必要がなくなるので。

あるいは、他のページと同じように、jsonにデータを保存しておきinbox.mdはそれを表示させるために使うか。

jsonにすると処理系を他のページと揃えられるが、そうすると追記がややこしくなる。現状の「Dropboxで追記」というやり方ではうまくいかない。それはあまり好ましいことではないだろう。

むしろ、一度テキストファイルで追加しておいて、その中身をpythonか何かで拾って、既存のjsonデータに追記する、みたいなヒネリが必要。それはさすがにややこしい。

sidebar側で、テキストデータの表示と編集と保存を担保させるのがよいだろう。

読み込むページが「inbox.mdの場合は切り分ける」という形にすれば、とりあえず道は見える。

* * *

inbox.mdだった場合、中身をcontentEditableにするか、それともクリックやドラッグなどの操作で削除できるようにし、あとは本文を保存すればいい。もちろん、両方実装してもいい。

14:00

環読プロジェクト:

第二章に入ります。

Textbox:

メモの操作について簡易の機能を実装してみましょう。ダブルクリックで削除か、あるいはチェックボックスを付ける形で。

* * *

Image from Gyazo

Sidebar側で箇条書きリストの先頭にcheckboxを追加するようにしました。で、cssでチェック済みのものは背景色を変更して透明度も変化させる、という形で。

あとは、保存ですね。

* * *

保存は、ツリーを探索するのが一番まっとうなルート。あるいは普通にinnerTextだけを見る?

その場合、改行が保存されないですね。やややっかい。

ideaScapeは、listの階層構造は見せかけだったのでツリーのたんさくは不要でしたが、ちょっと考える必要があります。

まあ、それができたとして、liのinnerTextを、- hoge という形としてテキストデータを作り、全体を上書きすればOKです。そのためのcgiは以前作ったノートを保存するやつでいけるでしょう。

ということは、ツリーの探索が一番の課題ですね。

* * *

Geminiに助けを借りて、だいたいできました。