forecastfox は天気予報を firefox のステータスバー等で表示させる拡張機能です。
下記のリンク先のファイルをダウンロードして、firefox にドラッグ & ドロップしてインストールしてください。インストール後、firefox 再起動すると拡張機能が有効になります。
forecastfox の設定画面を開いて、最初に 天気予報の地域 を設定します。すると、天気予報の情報を取得してステータスバーに表示されるようになります。
(注) なお、この日本語化バージョンでは、天気データも日本語化されています。 しかし、私が日本語でどう書くかわからなかった地名や、「Variably cloudy and a shower」のように文章で表現された天気予報は翻訳できていません。 翻訳データは追加・修正が可能ですので、diff ファイルなどをメールで(takanori [at] takanory.net)までもらえればと思います。ご協力をよろしくお願いします。
forecastfox では、AccuWeather.com が提供する XML 形式の天気予報データを http で取得してそのまま表示しています。
forecastfox が天気予報を取得するための URL は例えばこんな感じになります。
そのため、天気予報の中身(晴れとか雨とか、地域名とか風向きとか)は、英語でしか表示できません。 (forecastfox の FAQ によると 0.8.5 で対応する
予定のようです)
で、それまで待てないので、というか天気が更新されてもなんかよくわかんなかったので、自力で天気予報を日本語化するようにしました。 動作原理はこんな感じです。
つまり、ダウンロードできる forecastfox 日本語対応版は、accuweather.com ではなくて、takanory.net に天気データを取りに行くようになっています。
(components/nsForecastfox.js に URL が書いてあります。)
翻訳された天気予報を取得するための URL は例えばこんな感じになります。
翻訳はどのように行っているかというと
翻訳フィルタは python で作ってあります。
mod_python というモジュールが公開されていて、このモジュールを apache 2.0 で使えるようにすると、
PythonOutputFilter というディレクティブが使えるようになります。
この PythonOutputFilter として weather フィルタを登録して、
SetOutputFilter で mod_proxy で取得したデータに対してフィルタをかけるように設定しました。
実際の apache の設定ファイルに書いたのはこんな感じです。:
RewriteRule ^/adcbin/(.*) http://forecastfox.accuweather.com:80/adcbin/$1 [L,P]
PythonOutputFilter weather
<Location /adcbin>
SetOutputFilter weather
</Location>
翻訳フィルタ本体のソースも、あんまりきれいじゃありませんがここにさらしておきます。