タグ:日記 ( 2 ) タグの人気記事

GeektoolでGmailを表示してみる

Check your unread Gmail from the command line(コマンドラインから未読Gmailを表示する)

curl -u username:password –silent “https://mail.google.com/mail/feed/atom” | tr -d ‘\n’ | awk -F ” ‘{for (i=2; i<=NF; i++) {print $i}}’ | sed -n “s/\(.*\)<\/title.*name>\(.*\)<\/name>.*/\2 – \1/p”

Checks the Gmail ATOM feed for your account, parses it and outputs a list of unread messages.(GmailのATOMフィードをチェックして未読メッセージをリストにするよ.)

For some reason sed gets stuck on OS X, so here’s a Perl version for the Mac:(でもOS Xだと動かないから,MacのためにPerl版も書いておくね. )

curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | tr -d '\n' | awk -F '<entry>' '{for (i=2; i<=NF; i++) {print $i}}' | perl -pe 's/^<title>(.*)<\/title>.*<name>(.*)<\/name>.*$/$2 - $1/'If you want to see the name of the last person, who added a message to the conversation, change the greediness of the operators like this:(もし最終行の送信者名を表示させたかったら,以下のようにしてね.)
curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | tr -d '\n' | awk -F '<entry>' '{for (i=2; i<=NF; i++) {print $i}}' | perl -pe 's/^<title>(.*)<\/title>.*?<name>(.*?)<\/name>.*$/$2 - $1/'
ということだ.なので,
echo "Gmail"
curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | tr -d '\n' | awk -F '<entry>' '{for (i=2; i<=NF; i++) {print $i}}' | perl -pe 's/^<title>(.*)<\/title>.*?<name>(.*?)<\/name>.*$/$2 - $1/'
と,頭にechoしてガジェットタイトルとして"Gmail"を表示している. username,passwordはそれぞれgmailにログインするときに入力するusernameとpasswordを入れる.例えばユーザ名nemo(@gmail),パスワードhogehogeであれば,nemo:hogehogeとなる.
[PR]
by n9ne2 | 2012-04-08 19:03 | 日記

phpで天気予報を日本語表示 geektools

#!/usr/bin/php


//引数から対象地域を設定.引数がなければ,東京の天気を表示
if($argv[1]){
$city = $argv[1];
}else{
$city ='tokyo';
}

$url = 'http://www.google.com/ig/api?weather=' . $city . '&hl=ja';
$content = mb_convert_encoding(file_get_contents($url),'UTF-8', 'Shift-JIS');
$xml = simplexml_load_string($content);
$weather=$xml->weather;

$info = $weather->forecast_information;
$current = $weather->current_conditions;


$str = str_replace('-', '/', $info->forecast_date->attributes()) . "\n";//日付を整形
$str.= "現在: " . $current->condition->attributes() . "\n";
$str.= "気温: " . $current->temp_c->attributes();
for($i=0; $iforecast_conditions); $i++){
$forecast=$weather->forecast_conditions[$i];
$low = $forecast->low->attributes();
$high = $forecast->high->attributes();
$condition = $forecast->condition->attributes();
if($i==0){
$day = "";
$str.= "(" . $low . "-" . $high . "℃)\n";
$str.= "予報: " . $condition;
}else{
$str.= "\n------------------\n"; //セパレーター
$day = $forecast->day_of_week->attributes() . "曜日";
$str.= $day . "\n" . $condition . "\n" . $low . "-" . $high . "℃";
}

}
$str.= "\n";
echo $str;
?>


MacはすでにPerlもawkもPHPも実装しているので以上をphpファイルとして保存してgeektoolでディレクトリを指定してやればOK。
geektoolには

php /Users/※※※/Documents/geektools/weather/gw.php osaka,osaka

などなど

引数はtokyo,shibuyaなど地域を指定
これで日本語表示可能になるよ。
英語表示でよければややこしいことせずにYahoo.comの天気情報をひっぱってこればOK
[PR]
by n9ne2 | 2012-04-08 18:58 | 日記