@rabirgoです。


Dynalist と Scrapbox に日々の記録を集約する運用を行ってます。
記録は Dynawrite や DayOne で行ってます。
整理してて、DayOne の Twitter ログをシンプルな時系列にできないかと思って MacVim でいじってみましたので参考まで記録しておきます。
(Vim をご存知の方向けのポストとなります)
手数は少なくなく、面倒ではあるのでいつまで続くか分かりません。
Contents
前提
- MacVim インストール済み
- IFTTT により Twitter のログを DayOne に転送
Twitter については以下のような状況です。
IFTTT設定
検索して見つけたと思います。「Twitter “Tweets” saved to Day One」

DayOne エントリー
Tweet は DayOne 上で以下のように格納されます。

Open in … – Plain Text
エントリーを選択して右クリックしてから Plain Text で出力します。

以下のようなテキストフォーマットで出力されます。

MacVim の ex コマンドを使って変換
MacVim を使って 1Tweet あたり1行になるよう変換してみました。
ここまで記録を頑張る必要があるのかは疑問です。
exコマンドを列挙したファイルを作成
拡張子が適切か不明ですけど、ホームディレクトリ(~/)に dayone.vim というファイルを作成しました。
~/dayone.vim
:%s/\tDate:\t\d*年\d*月\d*日 //
:g/via Twitter/d
:g/@rabirgo/d
:g/ at \d\d:\d\d/d
:%s/:\d\d JST//
:%s/^\n//
:%s/\(:\d\d\)\n/\1 /
:%s/^\(\d:\d\d\)/0\1 /
本来なら vim スクリプトで処理した方が良いのかもしれません。
作ったことないのでまずは自身が使えるものを。
今後うまく処理できないケースは出てくると思うので、手元では随時変更します。ここでは参考まで。
変換作業
変換してる様子を gif にしてみました。(gif ファイルサイズ大きめ。7.8MB)

DayOne の Open In から MacVim で開く
DayOne で複数エントリーを選択し、右クリックで Plain Text を MacVim で開きます。
MacVim で source
先ほど作成した dayone.vim を、ex コマンドの source で読み込むと処理されます。
私はもう一度実施したので、「:so」までタイプして履歴から実行します。(ファイル名を毎回入れるようなことはしません)
:so ~/dayone.vim
gif では一部エラーになってますが、gif を作成する際に選択したエントリーが少なかったのでキーワードが現れませんでした。
さいごに
繰り返しになりますけど、やっぱりめんどくさいです。
今後日次レビューなどするときに、DayOne ログがあまり有用でないと判断したらやめると思います。