kindlemailで時短や!

電子書籍Kindleで読むことが多くなってきました。
最近、手元にあるPDFを自分のKindle上に置く方法を探していて。
正直、いちいちPCとKindleを繋いでられないんですよ。

でも、AmazonさんにはPersonal Documentという便利なものがあってだな…。

Personal Documentというのは、Kindleごとに設定したメールアドレスに添付ファイル付きのメールを送ると、Kindleに自動的にダウンロードされる機能...

Kindle Personal Documentに追加された3つの新機能が便利すぎる - mteramotoの日記

そこで、おもむろにGmailを開いて、PDF添付!…するわけですが、そのたびにGmail開くのもなんか面倒だなぁと。
どうせならコマンド一発でやりたいですよね。

奥さん、そこでkindlemailですよ!!!1

djhworld/kindlemail · GitHub
kindlemailとかいう今はもうメンテされていないgemのやーつがあります。
自分のKindleのPersonal Documentにコマンドラインで任意のファイルを送れるというもの。
内部的には自分のGmail accountからOAuth使ってメール送信するみたいですね。

$ gem i kindlemail

でgemのやーつをインストールしてから…

$ kindlemail --setup

でセットアップ。
Gmailのアドレスとか、自分のKindleのアドレスとか聞いてきますので、入力してあげましょう。
oauth_token,oauth_token_secretについては後で説明します。

ちょっとこれバグってて、設定し終わったら ~/.kindlemail/.email_conf の内容をちょっと修正してあげないといけないんでよね。

- email xxxxx@gmail.com
+ email: xxxxx@gmail.com
OAuthの設定

Sign in - Google Accounts
をとりあえず読んでもらえばわかるのではないかと。anonymouseで権限をもらみたいですね。
xoauth.pyをテキトーに突っ込んで、動かせばいいでしょう。
※もちろん、いろいろちゃんと読んだほうがいいよ!

$ python xoauth.py --generate_oauth_token --user=xoauth@gmail.com
oauth_token_secret: 41r18IyXjIvuyabS/NDyW6+m
oauth_token: 4/nM2QAaunKUINb4RrXPC55F-mix_k
oauth_callback_confirmed: true
To authorize token, visit this url and follow the directions to generate a verification code:
  https://www.google.com/accounts/OAuthAuthorizeToken?oauth_token=4%2FnM2QAaunKUINb4RrXPC55F-mix_k
  Enter verification code: VFvY1j0R22BKuDtvN4gaAgZq
oauth_token: 1/C1va1J7SjTd1-cddVmG2iqla2XmG8xRqX3UXuqt7Eps
oauth_token_secret: sSCKc+z1xLlT+htfihqcAM3h

の、一番最後にでてきた、自分の oauth_token と oauth_token_secret を --setup の時に入れてあげましょう。

kindlemail実行
$ kindlemail my_book.mobi

とやるとコマンド一発で送れます。約2秒の時短や!

注意

Gmailは残念ながら25MBより大きい添付ファイルは送れません…。