2013-07-30

Go MEMEX!kindleへ日刊ニュースを自動で飛ばす

Go MEMEX

Googleをmemexにしてしまう計画

Googleは、多数の知識を使う為にweb上にある情報を検索出来るようにした。初めのインターフェイスはブラウザー、どんなPCでもブラウザーがあれば出来るようになっていた。
Appleは、個人の知識を断片化された状態から連想・利用できるよう連結する、ハイパーカードを作った。使うにはMACが必要だった。
今、Googleは物凄い勢いで情報を集め、使う為の様々なインターフェイスを提供している。使用するにはインターネットに繋がるモノなら何でも来いの状態で、全てのGoogleのサービスを利用し切れている人はいないぐらいある。どう使うか、どうやって使うかはユーザー次第、こちらも情報は提供しているが大盤振る舞いだと思う。Appleはハイパーカードがなくなり、iphone、ipadとAppleのデバイスを売る為にAppleがあるように思える、以前はAppleがあると何かを創造するのに便利以上なモノを売っていた、バンドルされるソフトも売ってるソフトもOSも、そうだった、自分がMac買った時はそうだった。OS Xになってから、別に Linuxでいいや、Macでなくもいいや。
 今後はGoogleからだけでなくのネット上の情報・サービスと自分の知識をリンクさせ連想・利用できるように、プログラム書いたりするか、そういうサービスを使うか、そういう事がそれなりにできるAll-in-oneデバイス買うようになるんじゃないかと思う。もうAppleは、個人の知識・想像力をサポートするデバイス会社と言うより、電子デバイス業なのにファッションブランドのようなブランドになっちゃった、だけど、Siriというのが個人用のコンシェルジュらしいが、そこからさらに知識の連想パターンを学習するとか、AppleらしいUIで連想をデザインできるようになったら欲しい。

 という事で、Gmailに来たメール、専らニュースがいいと思う、それをkindleで朝刊として、また、さらに夕刊として、読むために自動で配達するGoogle Apps Script。配達予定は自分でGoogleの方でキメて。
ここから https://script.google.com/ できます。FileラベルをGmailに追加しておくか、スクリプの方いじって下さい。

Loading ....
var subjectToSend = "LikeADailyToKindle";
// kindleに飛ばしたモノは、Fileラベルに入れてINBOXから移動
// 気になる件名
var targetSubject = new Array();
targetSubject[1] = "[ 家庭菜園毎日ニュース";
targetSubject[2] = '国際小豆メールマガジン第';
targetSubject[3] = '■ いますぐ運動! Linux';
// もっと気になる場合
// targetSubject[i++] = 'ひたひたFXニュース';
// 宛先のkindle
var kindleMailAddr = "自分のkindle email address";
// 受信トレイをチェックする
function checkInbox() {
// 気になる件数分気にする
for (var i =1;i<targetSubject.length; i++) {
var sanitizedTargetSub = targetSubject[i].replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
// 受信トレイのFRESHなメッセージを取得する,50件以上もいけるかも、でかいと返りがタイムアウトしたり
for (var j = 1;j<51; j++) {
var threads = GmailApp.getInboxThreads();
try {
var subject = threads[j].getFirstMessageSubject();
}
catch(e) {
break;
}
// 気になる件名部分マッチ正規表現
if (subject.match(new RegExp(sanitizedTargetSub))) {
// スレッド内のメッセージと情報を取得する
var message = threads[j].getMessages()[0];
var bodyStr = message.getBody();
var topLess = bodyStr.replace(/<br\ \/>|&#x3000\;|&nbsp\;/gm, '');
var title = targetSubject[i] + message.getDate() + ".html"
var bodyDocHtml = DocsList.createFile(title, topLess, "text/html");
var news = message.getDate() + ".zip"
// packing!
var zip = Utilities.zip([bodyDocHtml], news);
//メッセージを送る
MailApp.sendEmail(kindleMailAddr, subjectToSend, 'see attachment', {attachments:zip});
// メッセージにlabel、2回きちゃってても一回分づつ、朝刊夕刊版ということで
var labelFile = GmailApp.getUserLabelByName("File");
labelFile.addToThread(threads[j]);
threads[j].moveToArchive();
break;
}
}
}
};

BCM4321 on Latitude D430

At kernel 3 find wireless hardware lspci | grep -i wireless  check using current kernel module with PCI bus address lspci -vv -s 0c:...