Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 日付順ソートに関して



寺西です。ご意見ありがとうございます。

"Hideyuki SHIRAI (白井秀行)" wrote:
> 
> > ・mailnews.pl を修正し、mhonarc.pl 同様 ヘッダの Date 情報を
> >   フィールド date に反映するようにしました。
> 
> "フィールド date" って、NMZ.field.date, NMZ.field.date.i のこと
> でしょうか?現状でも、$conf::SEARCH_FIELD に "date" が含まれてい
> たら(デフォルトでは含まれている)、初めから mailnews.pl ってそう
> なっていませんか?

うぅ。なっていました。余計な修正でした。

しかし、$conf::SEARCH_FIELD に "date" を含めなかった時にまずい
ですね。ユーザーに削除されてしまうこともありえるので、その時でも
有効になっていなければいけませんね。
  
> > 忘れの場合、結果で表示される日付と、ソートにもちいる日付が異な
> > るため利用者の期待した結果にはソートされません。
> 
> 『日付のソートを厳密にする』を目的にされるのでしたら、

決して厳密にするつもりではなくて、mailutime なしに使える程度を
考えています。
もちろん厳密にするのが望ましいのでしょうが、まずいところは誰かが
直してくれるだろうという甘い期待もあったりします。
 
> > ・注意) timezone は考慮していません。timezone の異なるファイルが
> >  混在した場合は正しく処理できません。
> 
> 是非是非 timezone も見てくださいませ。+hhmm, -hhmm の表記法以外
> は、RFC822 にのっている、
> 
> ("UT"  .  0),  ("GMT" .  0), ("EST" . -5),  ("EDT" . -4),
> ("CST" . -6),  ("CDT" . -5), ("MST" . -7),  ("MDT" . -6),
> ("PST" . -8),  ("PDT" . -7)
> 
> だけサポートすれば大丈夫だし、個人的には、timezone を見ない

これ以外の場合はどうするのがよろしいのでしょう。
# JST とか....というのは冗談ですが。

> Date: のソートなら、ファイルのタイムスタンプを使う方がマシ、と感
> じられます。

mailutime で困る方はそういらっしゃらないようですし、ケースバイ
ケースだとは思います。
もっとも、いろいろな timezone を扱う方にはそうですよね。
 
> ですが、RFC2822 の Date: は
> 
> orig-date       =       "Date:" date-time CRLF
> date-time       =       [ day-of-week "," ] date FWS time [CFWS]
>                         ~~~~~~~~~~~~~~~~~~~
> 
> time            =       time-of-day FWS zone
> time-of-day     =       hour ":" minute [ ":" second ]
>                                         ~~~~~~~~~~~~~~

これも mailutime 程度の対応ということです。
しかし、きちんと対応するのは簡単ですので、修正しましょう。

> です。day-of-week や ":second" がないと、return が -1 になっちゃ
> うような気がしますが、sscanf の挙動が良くわからないので、"%*3s,
> " がどうなるのかわかりません。

ちなみに
day-of-week がないと return が 0 になり、":second" がないと
return が 5 になります。

真面目にやると、曜日と日付があっているのかとかチェックしないと
いけないのかもしれませんが、Namazu 全般でそんな厳しいチェックは
していないのでそれはパスしていいでしょう。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E