Mitsugu Oyama のソフトウェア倉庫
 > コラム

2011.12.23
TwitVim の日付の編集

Twitter を利用するのに TwitVim を使っています。当然ながら Vim 上で使っています。

TwitVim ではタイムラインはこんなフォーマットで表示されます。

User timeline*
=============*
moscript: ワンライナーをシュビッっと書ける人ってすごいなぁ。フローで考える癖が抜けないから自分にはなかなかまねできない。 |07:33 午後 12月 23, 2011|
moscript: awkわからんのでperlにした。 |07:27 午後 12月 23, 2011|
moscript: 一応できたことにしよう(何 |07:25 午後 12月 23, 2011|
moscript: もうちょっとスマートにやりたい(何 |05:55 午後 12月 23, 2011|
moscript: Pearlの方が楽しそう(何 |03:13 午後 12月 23, 2011|
moscript: Perlの方が楽そう(何 |03:12 午後 12月 23, 2011|

見ての通り行末に日時が来ています。これ…日時でソートしにくいんです。できればこう編集したい。

2011.12.23 PM 07:33 moscript: ワンライナーをシュビッっと書ける人ってすごいなぁ。フローで考える癖が抜けないから自分にはなかなかまねできない。
2011.12.23 PM 07:27 moscript: awkわからんのでperlにした。
2011.12.23 PM 07:25 moscript: 一応できたことにしよう(何
2011.12.23 PM 05:55 moscript: もうちょっとスマートにやりたい(何
2011.12.23 PM 03:13 moscript: Pearlの方が楽しそう(何
2011.12.23 PM 03:12 moscript: Perlの方が楽そう(何

日付でソートしやすくなると、TwitVim の FriendsTwitter コマンドの結果と UserTwitter コマンドの結果をマージしたり、さらに DMTwitter コマンド、DMSentTwitter コマンドの結果を加えてそれらをマージして簡単にソートできたりしちゃうわけです。

なんでこんなことが必要なのかというと、要は twitter はツイートの取りこぼしが多すぎるわけです。それをなんとかカバーしようというわけですね。

もちろんタイムラインをテキストファイルに落しておいて、後でネット接続環境がないところでもじっくり読みたいなんて場合にも使えます。

そんなわけでこんな Perl スクリプトを書いてみました。

TwitVim でこんな風にテキストファイルに書き出したタイムラインが

User timeline*
=============*
moscript: ワンライナーをシュビッっと書ける人ってすごいなぁ。フローで考える癖が抜けないから自分にはなかなかまねできない。 |07:33 午後 12月 23, 2011|
moscript: awkわからんのでperlにした。 |07:27 午後 12月 23, 2011|
moscript: 一応できたことにしよう(何 |07:25 午後 12月 23, 2011|
moscript: もうちょっとスマートにやりたい(何 |05:55 午後 12月 23, 2011|
moscript: Pearlの方が楽しそう(何 |03:13 午後 12月 23, 2011|
moscript: Perlの方が楽そう(何 |03:12 午後 12月 23, 2011|

このスクリプトでこんな風に編集されます。

2011.12.23 PM 07:33 moscript: ワンライナーをシュビッっと書ける人ってすごいなぁ。フローで考える癖が抜けないから自分にはなかなかまねできない。
2011.12.23 PM 07:27 moscript: awkわからんのでperlにした。
2011.12.23 PM 07:25 moscript: 一応できたことにしよう(何
2011.12.23 PM 05:55 moscript: もうちょっとスマートにやりたい(何
2011.12.23 PM 03:13 moscript: Pearlの方が楽しそう(何
2011.12.23 PM 03:12 moscript: Perlの方が楽そう(何

日時は固定長なので、他にもいろいろ使い道があるかもしれません。スプレッドシートに取り込んで謎の集計をするとか。