org-agendaに twitterのつぶやきを表示してみました.
これらの関連記事のまとめになります.
方法
以下のようなRuby スクリプトをかいて、自分のつぶやきをorg形式で保存. rubyからtwitterのtweetを取得するために、twitter gemを利用.
#!/usr/bin/ruby
require 'twitter'
require 'pp'
client = Twitter::REST::Client.new do |config|
config.consumer_key = ""
config.consumer_secret = ""
config.access_token = ""
config.access_token_secret = ""
end
lines = nil
# ファイルに保存してあるツイートを一旦読込み
File.open("/home/tsu-nera/gtd/journal/twitter.org", "r") do |file|
lines = file.readlines
end
# ツイートを配列に挿入
client.user_timeline("tsu_nera").each do |tweet|
t = tweet.created_at.dup.utc.localtime
lines << "** <#{t.strftime("%Y-%m-%d %H:%M")}> #{tweet.text}\n"
end
# 重複除去
lines.uniq!
# 書き込み
File.open("/home/tsu-nera/gtd/journal/twitter.org", "w") do |file|
lines.each do |line|
file.puts line
end
end
以下のような感じで保存される.
** <2015-08-22 22:43> 投稿テスト
** <2015-08-22 22:23> twitterの投稿をorg-agandaからみることができるかどうかテスト
** <2015-08-22 21:51> clojureを写経してばかりいるけど、自分で一からかける気がしないなぁ。
** <2015-08-22 19:21> test
** <2015-08-20 21:59> 名言を書き溜めてEmacsからランダムに参照するというライフハック。https://t.co/DYmuvM3Faq
** <2015-08-16 23:19> courseraの講義受けて同じようにアルゴリズム取引に挑戦したけど、全く儲からずに泣いている自分がここにいます。 / “自家製プログラムでアルゴリズム取引に励む個人投資家 - WSJ” https://t.co/VzE8Rl9aTc
** <2015-08-10 01:06> ドラクエ3の性格占い、しあわせものだった。
** <2015-08-09 22:17> 集中力がおちたと最近とても感じる。
** <2015-08-09 20:51> clojureで為替レートを取得する処理を書いてみた。https://t.co/lUgKXdfp2o
** <2015-08-09 14:45> walkcar https://t.co/xakyqwcqid
** <2015-08-09 14:42> walkcarほしい。会社の通勤使いたい。これで遅刻しなくてすむ。https://t.co/Tu0trSq4tf
** <2015-08-09 13:34> ニューラルネットワークによる自動作曲。信じられない…。https://t.co/WD2NAwFXxN
** <2015-08-08 14:22> 最近、無駄についつい本を買って積ん読してしまう。でも、FXで湯水のごとくお金がなくなっていくので、もうどうでもいいやと思えてきた。
** <2015-08-08 05:58> @kanata_56 違う言語を学ぶと見える世界も変わりますね。
** <2015-08-08 04:00> ネストの深さは悪しきものだと思っていたが、今はカッコの深さがカッコいいと思う今日この頃。
** <2015-08-08 01:33> もう3か月も仕事でプログラミングしてない。こんな状態が続くなら畜生転職だ。
** <2015-08-08 01:29> 今週も仕事が暇で辛かった。
** <2015-08-06 19:19> かった!よむ! https://t.co/306Ai5M6LF
** <2015-08-04 04:19> 4時なのに眠れない。明日の会社のC言語テストはズタボロだな。
** <2015-08-03 23:16> ランボー怒りのシャワー浴びよ
このファイルを org-agenaの対象ファイルに指定する.
(setq org-agenda-files '("~/gtd/main.org"
"~/gtd/inbox.org"
"~/gtd/journal/journal.org"
"~/gtd/journal/twitter.org"
"~/gtd/habits.org"))
これで、org-agenda view をみると、 twitterのコメントが時間つきで表示されているのだ.
なにができるようになったか
以前, org-journalに書き溜めたコメントを org-agendaでみるハックを書いた.
今回、twitterのつぶやきが org-agendaで見られるようになった. このことによって、
- 公開したいつぶやきは、twitterへ
- 非公開のつぶやきは、 org-journalへ
というように分けることができるようになった. どちらの書き込みにも、ミニバッファから投稿できるようにした.
twitterをミニバッファ経由での書き込みにするには、以下の記事を.
org-journalへミニバッファからコメントを書くには、 以下の関数を呼べばいい.
(defun org-journal-from-minibuffer (x)
"write from minibuffer"
(interactive "sEnter message: ")
(let ((tweet-message
(concat "** " (format-time-string org-journal-time-format) x "\n")))
(write-region tweet-message nil
(concat org-journal-dir org-journal-file-format) 'append))))
これで、個人のつぶやきをミニバッファから書き溜めて、 org-agendaという統一 viewで閲覧することができるようになった.
以上、Happy Hacking!!