Ruby で GTDStyleWiki の tiddler をすべて GMail にポストするスクリプト
今まで GTD のタスクを GTDStyleWiki で管理していたのだけど、GMail のラベルで管理することにした。移行するために GTDStyleWiki の index.html から tiddler を抜き出して GMail に送信するスクリプトを書いてみた。
- Gmail のアカウント情報を環境変数 GMAIL_USERNAME, GMAIL_PASSWORD, GMAIL_ADDRESS, GMAIL_GTD_ADDRESS(送信先) にセットする
- Gmail 送信は以下のブログのモジュールを利用させていただきました
- ruby send_tiddler.rb で実行する
- 実行すると index.html 内に記録されている todo タグのついた tiddler を GMail のアカウントに1通ずつメールする
- ごみ箱タグのついているものは除外される
#!/usr/bin/ruby -Ku require 'rubygems' require 'hpricot' require 'gmail.rb' doc = Hpricot(File.read("index.html")) count = 0 doc.search("div[@tiddler]").each do |tiddler| tags = tiddler["tags"] if (tags =~ /todo/) && (tags !~ /ごみ箱/) count = count + 1 subject = tiddler["tiddler"] content = tiddler.inner_html.gsub(/\s*/, "").gsub("\\n", "\n") puts "COUNT = " + count.to_s puts "TAGS = " + tiddler["tags"] puts "TITLE = " + subject puts "CONTENT = " + content Gmail.send(ENV['GMAIL_USERNAME'], ENV['GMAIL_PASSWORD'], ENV['GMAIL_ADDRESS'], ENV['GMAIL_GTD_ADDRESS'], subject, content) end end