ちょうど起きたすぐあとのタイミングで、配偶者から「このピザ食べていいの?」と言われた。朝早めに出掛ける用事がある配偶者のために、昨日買っておいたものだったので、「いいよ」と返事をした。
それだけの何気ないやりとりで、さっきまで見ていたはずの夢をきれいさっぱり忘れてしまった。しばらくねばって思い出そうとしたけど、だめだった。
ちょっとよくないなと思うのは、このやりとりの結果「配偶者のせいで夢が消えた」と少なからず感じてしまっていることだ。生半可ながら夢日記的なことを続けていると、見たはずの夢をゲットできないことが惜しく思えてくる。夢日記を書いていなければ生じない感情だったと思う。何かに執着するということは悪いことではない。けど、周りの人に敵意を向けるようになってくるのはよくないなと思う。よくないなとは思うのだけれど、「でもあれがなければ」とは思ってしまう。
ローカルのLogseqのデータを、https://pdbq.neocities.org に置くためのHTMLファイルに変換するプログラムを書いたりしている。Logseqのjournalsフォルダにあるmarkdownファイルを変換すればいいだけの話だが、いくつか素直には行かない部分があった。
Logseqは基本的にアウトライナー的な使い方をするので、各journalがmarkdownとしては(順序なしの)リスト形式として書かれている。1つ1つのリスト(Logseqではこれを「ブロック」と呼んでいるようだ)には、Logseqの独自拡張と思われるブロック参照用のidや、項目の折り畳み情報(collapsedがtrueかfalseか、みたいなこと)が追加されてたりしている。文章に直接関係ないそういった情報を無視しつつ、夢日記に該当する部分を望む形のHTMLに出力する処理を書く(index.htmlに対応する、記事の一覧も同時につくる)。HTMLのフォーマットはだいたい固まってきたので、基本的なテンプレートを用意して、あとはそこに中身を流し込めばいい。
やっかいだったのは、元となるmarkdownファイルの中で、改段落をどう書くかという部分だった。最終的にはTeXや、それこそMarkdownで採用されているような「空行で区切られたところが段落の切れ目」という解釈で行くことにした。ちなみに2個以上の空行があるときは「段落間に改行を入れる」ようにもしてみた。hrタグで区切るようなほどの区切りでもないけど、ただの改段落よりはちょっと余韻を持たせたい、みたいなやつ。ただしLogseqの場合、データはリストなので「空行」の部分を「空リスト」に置き換えて考える。Logseqとしての操作上の見た目は一行間が空くだけなので、そんなに違和感はない(でもこの空行を入れることができないアウトライナーってあったような気もする)。別の言い方をすると、「dream」というタグのついたリストの子項目を、夢日記データとして扱う、ということ(その際、同階層の空リストで区切られた部分を改段落とみなす、という感じ)。
でも、複雑な入れ子になった場合はよくないこともあるかもしれない。CommonMarkというMarkdownをちゃんとした仕様にしようというようなやつが相当複雑になっていることからもわかるように、Markdownって結構文法が曖昧なんですよね。その点についてはDjotに期待しているけど、あまり広まっている気がしない。
今でこそ日記のフォーマット的なものが固まっているから最近のものに関してはあまりいじらなくてもいいんだけど、昔にさかのぼるにつれて(現在レギュラーと定めていることに対して)イレギュラーなものが出てくる。初期の頃はむやみにリストをネストしていたり(段落や大きなまとまりごと入れ替えたいときはネストしておくとやりやすいからなんだけど、日記レベルではあまり必要性はない気がする)、タイトルの表記の位置とかもいろいろと試行錯誤していたりしたので、そのあたりの表記のブレを直したりする作業が思いのほか時間がかかった(かかっている)。
ひとつひとつの文章はそんなに長くはないけど、なにしろ日記ではあるので今年の分だけで270個くらいある。とりあえず現在の10月からさかのぼっていって、いま2月くらいまではざっと整理できているという感じ。
読み返していると誤記を見つけたり、「ちょっとここの言い回しを直したいな」というのがどんどん出てくる。衝動的にぱっと書いたものがほとんどなので当然なんだけど、そこまで踏み込むときりがないとは思いつつ、読み返してみると案外面白かった。(自分が見た夢だから)自分が書かなかったら絶対に思い出すことはない、というところも少なからずあるかもしれない。
「俺の見た夢を是非読んでほしい」という素直な気持ちは正直持てないけれど、少なくとも自分にとって、他人の夢日記を読むのは面白い。
いずれにしろ手製本としてまとめるためにはいつかやらなきゃいけないことではあったので、HTML(エナジー)というのがきっかけになってちょうどよかったとも思っている。
Permanent ID of this document: D50H981F4NM7F06H8A79C18B44