毎日のメモを一箇所にまとめたいのでオススメされていた Day One をつかいます
背景
毎日のメモをひとところにまとめたい。
要件
希望
- コンソールからの入力が可能であること
- オフラインで編集可能であること
- 人間が読める形式で保存されること
- エクスポート処理など特別な処理をしないでデータにアクセスできること
- 特殊なファイル形式でないこと(テキストファイルを希望)
その他
- お金を払ってもよい
Day One
オススメされていた。完璧な感じではないけど、いい感じな気はする。
気に入った:
- こぎれいな iPhone アプリがある
- CLI がある (http://dayoneapp.com/tools/)
howm
テキストエディタにプラグインする自分用 wiki っぽいメモ機能。
気に入った:
- エディタと相性がよい
- けっこう機能が充実している
- テキストフォーマット
気に入らない(または問題点):
その他:
データの同期については Dropbox などのサービスが存在しているため、テキストデータを扱うならさほど困難でないと考える(データを扱う単位によってはマージの難しさがある)。
- http://wadap.hatenablog.com/entry/20081026/1225019930
- https://sites.google.com/site/fudist/Home/qfixhowm/file-share
howm と似たような位置にあって、もっとシンプルな方式の ChangeLog メモという選択肢もみてみたが、これもモバイル端末との相性があまりよくない(MHODiA というアプリがある: https://itunes.apple.com/jp/app/id431691790)。
Evernote とそのクライアントたち
今 PostEver という iPhone アプリをつかっている(https://itunes.apple.com/jp/app/id422023962)。1日の入力を1つのノートにどんどん追記していく(日毎に1つのノートになる)。
PostEver のノートに Mac からの入力があいのりできるならそれでよかった(現状簡単にきれいにできない)。
気に入った:
雑感
観点としては以下について重点を置いていたように思われる:
- データをどこにどうやって置くか
- 複数の端末で同期可能な箇所にあること(プライベートでさえあれば手段は問わない)
- どのように見えるか
- 日毎にまとまっているのが好ましい
Evernote の1アカウントをもって一箇所とみなす、という雑な運用でもよかったかもしれないという迷いがある。見せかたの問題だったのかもしれない。
Dropbox について
サードパーティのクライアントを認証すると $HOME/Dropbox/アプリ
みたいなディレクトリを作られてつらい気持ちになるが、 落ち着いて $HOME/Dropbox/Apps
にリネームすればよさそう。Day One が Dropbox で同期されているディレクトリがわからなくなってしまうので、一旦終了させてから起動して、ディレクトリを教えてあげれば認識する。
iPhone アプリのほうは、どういう仕組みになっているかわからないが、とりあえず上記手順ののちインストールして同期設定を行った。
複数端末で同期するということについて
データの扱いについて、同時更新の問題があるため以下のような対応になるのかなと思う:
- データの単位について、
- 1端末から1ファイル(データ)単位で更新する
- 1更新で1ファイル(データ)を追加する
- ロックはあまり現実的でない
Day One では、1更新で1ファイルを追加し、編集の際は衝突した事実はのこるものの基本後勝ちというルールっぽい。同時更新すると以下のようにコンフリクトしたファイルがつくられる。
ls -1 ~/Dropbox/Apps/Day\ One/Journal.dayone/entries FF04BE2FE3304849B025ABAF87150748 (Watanabe Mayu's conflicted copy).doentry FF04BE2FE3304849B025ABAF87150748.doentry
もしコンフリクトした場合は https://dayone.zendesk.com/hc/communities/public/questions/200028729--Conflicted-copy-on-Dropbox-sm- の、ファイル消して作りなおす、というのがオフィシャルな回答っぽい。
ファイル名が UUID (version 4) のハイフン抜きにしたもので、中身の XML(plist) が適切であればクライアントが何であってもよさそうなので、別ファイルにしてあげてもよいかもしれない。
テキストのメタデータについて
テキストデータでメモ行為をしようとすると、メモ本文とは別に管理のためのメタデータをどこに持つか問題が常につきまとう気がしていて、今自分の認識では、本文にちかいところに決まったフォーマットで入っているほうがあつかいやすそうという感じです。ChangeLog 形式とか XML でメタデータ持つのがわかりやすくて処理しやすくてよさそう。
メタデータファイルとかインデックスファイルを別に持つというのはキャッシュ用途でなければ端末間の同期とかの都合でめんどくさそうという印象。
総括
そういうわけで、メモ行為について、しばらく Day One つかって生活してみます。