[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7.2 指定した規則から推測

フォルダ名から推測する機能だけでは、思うようなフォルダを推測してくれな い場合があります。たとえば、To: が staff@example.jp であるメッセージと To: が staff@example.net であるメッセージに対し、フォルダ名からの推測 では同じフォルダ(たとえば、"+net/staff")が選ばれてしまいます。そこで、 Mew では、変数 ‘mew-refile-guess-alist’ に明示的に規則を設定できま す。(‘mew-refile-guess-alist’ は、必ず新しい書式で書いて下さい。詳 しくは See section 設定の書式 を参照のこと。)

1 つ例を挙げてみましょう。

 
(setq mew-refile-guess-alist
  '(("To:"
      ("staff@example.jp"  "+jp/staff")
      ("staff@example.net" "+net/staff"))))

これは、メッセージヘッダ中の To: の横の文字列に staff@example.jp があ れば +jp/staff へ、staff@example.net があれば +net/staff へ整頓すると いう意味です。

規則は、以下のように書きます。

 
rule ::= '<rule>
<rule> ::= ((<key> <alist>) (<key> <alist>) ... [<special>])

全体は (<key> <alist>) のリストです。<key> はフィールド名を書きます。 <alist> は以下のようになります。

 
<alist> ::= (<value> <folder>|<rule>) (<value> <folder>|<rule>) ...

<value> は <key> で示したフィールドにくる値です。<folder> は <key> にマッ チした際にどのフォルダに整頓するかを意味しています。<folder> の代りに <rule> を再帰的に記述することもできます。

特殊な <key> として ‘nil’ と ‘t’ があります。‘nil’ は、何 も推測できなかった場合に返す <folder> を指定するために用います。‘t’ は、推測した値に加えて返す <folder> を指示するために使います。

 
<special> ::= (t <folder>) | (nil <folder>)

正規表現を知っている人は、以下のような複雑な規則を設定できます。

 
(setq mew-refile-guess-alist
  '(("Newsgroups:"
    ("^nifty\\.\\([^ ]+\\)" "+Nifty/\\1")
    (".*"                   "+rec/news"))
   ("To:"
    ("\\(inet\\|wide\\)@wnoc-fuk" "+wide/\\1-wnoc-fuk"))
   ("From:" 
    ("uucp@"    "+adm/uucp")
    ("ftpsync@" "+adm/ftpsync"))
   (nil "+unknown")))

この機能を提供する関数は ‘mew-refile-guess-by-alist’ です。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by U-X61T\saito on October, 15 2008 using texi2html 1.78.