pollen.elは、喜多淳一郎さんによる、X-Pollen:フィールドに花粉予報を挿入するためのものです。
2004年1月28日現在、2002年版のpollen/0.3がhttp://kitaj.no-ip.com/XEmacs/pollen/pollen.htmlにあります。
将来的にはhttp://kitaj.no-ip.com/rw-cgi.rb?cmd=view;name=XEmacs-pollenに移行するようです。
所謂スギ花粉症に毎年苦しむ私にとっては(他のアレルゲンもある気がしていますが……)、非常に有り難いツールです。
翌日の飛散予報が「非常に多いです」だと却ってめげることもありますが、それでも尚便利に使わせて頂いています。
[2004年(まで)の情報] [2005年2月の一時的な情報] [2005年の情報] [2006年の情報]
2006年2月1日現在、従来のデータ取得元は構造も大きく変わり、情報が提供されていないようです。
取り敢えず現在のところ、2005年2月の一時的な情報で用いた方法で使えているようですので、2003年・2004年の新堂安孝さんに倣い、2006年に暫定的に対応した差分をhttp://www.chimons.org/~kyo/emacs/pollen.el.diffで公開します(2005-02-17T19:02:24+09:00)。
喜多さんのpollen.elに適用してお使い下さい。
使い方や変更点は2005年2月の一時的な情報をご参照下さい。
尚、まだ新しい日の予報がない時点で実行した場合には対応しない日付を切り出してきてしまう可能性があります。どなたかご助言頂けると有り難いです……。
2004年(まで)の情報にも記した通り、2005年シーズンは2月に入っても従来のデータ取得元で情報が提供されていませんでした。
少なくない方がX-Pollen:フィールドを使い始めるであろう2月1日を過ぎても状況が変わりませんでしたので、取り敢えずデータ所得元を変更してそれに併せた修正を加えたものを2005年2月の一時的な情報として仮に公開していましたが、2月17日になって(いずれにしてもサーバは変更されましたが)従来のデータ取得元での情報提供が確認されました。
下記のように情報提供は終了していますが、6月中旬に更にサーバの変更があったようです。
2005年シーズンの情報提供は5月15日で終了した模様です。
当面は5月16日分の飛散予報が表示されているため、pollen.elが切り出すのもその状態が続くと思われます。不要な方は設定を見直して下さい。
2005年に併せた変更は行っていますが、基本的には2003年・2004年版のパッチをほぼそのまま引き継いでいます。
作者の方々に感謝致します。
日付と飛散予報には
という組み合わせがあることが分かったため、取り急ぎそのいずれからも情報を切り出せる変更を2月20日に行いました。
非常に汚らしい実装な気がするのでどなたかご助言頂けると有り難いです……。
2月17日の版では、まだ新しい日の予報がない時点で実行した場合に「---」という情報を切り出してきてしまいます。
オリジナル及び2004年までのパッチと同様です。
地域名はWeathernewsのhttp://mws.wni.co.jp/cww/docs/kafun/をご参照下さい。
詳しくはPollen取り扱い説明書等をご覧下さい。
尚、カスタマイズの項にあるpollen-cache-intervalはpollen-fetch-intervalの誤りだと思われます。
上記のオリジナルに対して、フォーマットの変更に伴う新堂安孝さんによるパッチがhttp://www.fan.gr.jp/~ring/misc/pollen.el.diffにあります。
2003年版のパッチはhttp://www.fan.gr.jp/~ring/d/200302.htmlで徐々に公開されたものが上記に纏められ、2004年版のパッチはhttp://www.fan.gr.jp/~ring/d/?date=200402http://quruli.ivory.ne.jp/diary/?date=200402で徐々に修正されたものが纏められて上書きされているようです。
デフォルトの花粉予報取得開始は二月から、同じく終了は四月までですが、私は.emacsで
(setq pollen-season-start 1)
(setq pollen-season-end 5)
として、一月から五月に掛けてヘッダにX-Pollen:フィールドを加えていますいました。
2004年シーズンは予報が1月半ばから5月10日(5月11日分)まで公開されていましたが、2005年シーズンは2月1日現在で従来のデータ取得元での予報の公開がまだ始まっていません。
2004年までのパッチでは、pollen-season-*の設定に拘らず、「Pollen: 予報情報を切り出せません.」と表示されてしまう筈です。
2005年2月17日に予報が公開され始めましたが、サーバが変わっているため、結局同じ表示になる筈です。
その際、新堂さんの2004年2月1日版までのパッチでは二月から四月が想定されている模様なので、その部分のみ喜多さんオリジナルのように、
;; 日付・花粉情報の取得 (シーズン毎に書き換える)
-(while (re-search-forward "\\([2-4]/[1-3]?[0-9]\\)" nil t)
+(while (re-search-forward "\\([0-9]+/[0-9]+\\)" nil t)
(setq date (match-string 1)))
にしてあります。
月の部分が限定されると辛いですね。日の部分は折角丁寧に書かれているのでそのままでも良いですが。
2004年2月2日版のパッチから対応して頂きました。有り難うございます。
月の部分について、一月から六月までを考慮して頂きました。情報取得元が経験的にそんな感じの範囲にしか存在しないので(ということも併せてご報告しました)、多分これで問題ないでしょう。
普段はWanderlustで自分の活動範囲の情報を自動付加していますが、私の環境では\C-u \M-x pollen-insert-headerが効いていない気がするので、
(defun pollen-insert-header (&optional where offline)
"Insert X-Pollen: header.
If WHERE is nil, the default value `pollen-where' is used instead.
If OFFLINE is nil, don't fetch pollen report from WEB, only use cache."
- (interactive)
+ (interactive (if (or current-prefix-arg
+ (null pollen-where))
+ (list (read-from-minibuffer "Where: "
+ pollen-where))))
+ (setq where (or where pollen-where))
(let ((pollen (pollen-from-http where offline)))
(if pollen
(save-excursion
(save-restriction
(pollen-narrow-to-header)
(goto-char (point-max))
(insert "X-Pollen: " pollen "\n"))))))
とすると、遠出する前に便利でした。
こちらも新堂さんの2004年版パッチに取り込んで頂きました。有り難うございました。
2004年1月中旬の段階から、新堂さんによる2003年版の修正を施したもので基本的にデータが取得出来ていました。
が、自分に関係のありそうな地域だけ見ていたもので、一部不具合を見落としていました。データ取得元の地域名に若干の変更があったようです。
本格的に"その時期"がやってくると(きて欲しくない…)、またフォーマットの変更があるかも知れません。
一部の地域について、必要なら以下の修正を加えて下さい。
青森県下北地方についてはこれまでずっと見過ごされてきたっぽいです……。
;; 東北日本海側
- ("青森県津軽" . "yoho3110") ("青森県津軽" . "yoho3120")
+ ("青森県津軽" . "yoho3110") ("青森県下北" . "yoho3120")
;; 東北太平洋側
("岩手県内陸" . "yoho3310") ("岩手県沿岸北部" . "yoho3320")
("岩手県沿岸南部" . "yoho3330")
- ("宮城県平野" . "yoho3410") ("宮城県山沿い" . "yoho3420")
+ ("宮城県東部" . "yoho3410") ("宮城県西部" . "yoho3420")
;; 山陰
- ("鳥取県東部" . "yoho6910") ("鳥取県西部" . "yoho6920")
+ ("鳥取県東部" . "yoho6910") ("鳥取県中・西部" . "yoho6920")
;; 四国
- ("香川県全県" . "yoho7200")
+ ("香川県全域" . "yoho7200") ("香川県" . "yoho7200")
;; 九州南部
("宮崎県南部平野部" . "yoho8710") ("宮崎県北部平野部" . "yoho8720")
("宮崎県南部山沿い" . "yoho8730") ("宮崎県北部山沿い" . "yoho8740")
- ("鹿児島県薩摩" . "yoho8810")
- ("鹿児島県大隈" . "yoho8820")
- ("鹿児島県屋久島種子島" . "yoho900")
+ ("鹿児島県薩摩" . "yoho8810") ("鹿児島県大隈" . "yoho8820")
+ ("鹿児島県種子島屋久島" . "yoho900") ("鹿児島県奄美" . "yoho1000")
これも2004年2月3日版のパッチに取り込まれましたが、2004年シーズンはデータ取得元で一部の地域の表記に変更があったようです。
該当する地域の方は、パッチを導入した場合、pollen-whereやpollen-insert-headerの引数を変更する必要があります。
具体的には、上記の通り、
の各地域が変更されています。
"2003年までの地域名"→"2004年の地域名"となっていますので、前者を指定して呼び出していた方は後者への書き換えをお願いします。
"青森県下北"に関しては変更の必要はありません。
2004年(まで)の情報にも記した通り、2005年シーズンは2月に入っても従来のデータ取得元で情報が提供されていませんでした。
少なくない方がX-Pollen:フィールドを使い始めるであろう2月1日を過ぎても状況が変わりませんでしたので、取り敢えずデータ所得元を変更してそれに併せた修正を加えたものを仮に公開しました。
2月17日に従来のデータ取得元での情報提供が確認されたため、改めて2005年の情報と分離しました。
こちらの項は古い情報ということになります。
このようなこともあろうかと思って敢えてヴァージョン表記を変えてありましたが、暫定版であるpollen/0.4はこれで御役御免のつもりです。2月4日から2月17日までの二週間、予報は全て「少ない」でしたが、お役に立てましたでしょうか。
2月4日にhttp://www.chimons.org/~kyo/emacs/pollen.el.20020504を公開しました(2005-02-04T04:18:50+09:00)。
これには"新潟県佐渡"であるべきところが"新潟県佐賀"となっているというオリジナル以来の誤りが含まれていましたので、2月17日に修正した物も一応http://www.chimons.org/~kyo/emacs/pollen.el.20020517に公開しておきます(2005-02-17T19:08:59+09:00)。
2005年に併せた変更は行っていますが、基本的には2002年版のオリジナル及び2003年・2004年版のパッチをほぼそのまま引き継いでいます。
作者の方々に感謝致します。
オリジナル及び2004年までのパッチと同様です。
地域名はasahi.comのhttp://weather.asahi.com/kafun/をご参照下さい。
詳しくはPollen取り扱い説明書等をご覧下さい。
Emacs 21.2.1 / 21.3.1とMeadow 2.00で動作確認がされています。
新堂さん、喜多さん、皆様、日記等でのご紹介有り難うございます。
宜しければ、お住まいの地域等の情報がきちんと切り出せているかどうか、またどのEmacsenで動作しているか、お知らせ頂ければ幸いです。
pollen-composeについては過去のパッチをそのまま使わせて頂いていましたが、例えばpollen-messageだけについても色々と考えますね……。
オリジナル以来のものではありますが、よくよく考えてみるとデフォルトが「〜杉花粉〜」でなくても良いのかも知れません。pollen.elが使われる季節だけを考えても正確には主に「〜スギ・ヒノキ花粉〜」でしょうし、例年の飛散予報は各種の花粉をまとめての量でしかない筈ですから単に「〜花粉〜」とした方が正しいとも言えるでしょう。
2004年版パッチ以来ユーザーがカスタマイズを意識する様にされているので、今更大元に手を加えなくてもお使いの方のご趣味で設定して頂けば良いのですが。例えば.emacs等に以下を書いてしまうのも手です。
(setq pollen-message "%sの%s地方のスギ・ヒノキ花粉は%sです")
; 最初の%sは日付
; 二番目の%sは地域名
; 三番目の%sは花粉予報
Emacsへ戻る