[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10. スコア

スコアとは、メッセージにスコア(値)をつけ、 その値により既読マークを付けたりサマリから消したりする機能です。

この機能によって重要なメッセージにまとめ処理用マーク ‘*’ や重要マー ク‘$’をつけたり、spam 記事などの読みたくないメッセージに既読マーク をつけたりすることができます。

このスコア機能は Gnus のスコアとほぼ同等の機能を持ち、またスコアファイルの 書式もほぼ同じです。ただし、幾つかは未対応であったり Wanderlust 特有の機能 があったりします。 See (gnus-ja)Scoring section ‘Scoring’ in The gnus Newsreader.


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1 スコアに関するコマンド


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.1 スコアファイルの指定方法

変数 wl-score-folder-alist にフォルダ名に対応したスコアファイル名かスコアを定義した変数を設定します。

 
(setq wl-score-folder-alist
      '(("^-.*"
         "news.SCORE"
         "my.SCORE")
        (".*"
         "all.SCORE")))

スコアファイル名のパスを省略した場合は、 変数 wl-score-files-directory で指定したディレクトリにあるものとします。

また、wl-score-folder-alist の設定に関わらず デフォルトのスコアファイル wl-score-default-file (‘all.SCORE’) は必ず読み込まれます(ファイルが存在していなくても構いません)。 したがって、上記例の ‘^-.*’ にマッチしたフォルダでは ‘news.SCORE’, ‘my.SCORE’, ‘all.SCORE’ の3つのスコアファイル が読み込まれることになります。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.2 スコアファイルの対象メッセージ

スコアはサマリの update 時に一時的に wl-summary-score-marks で指定したメッセージのみにつけられます。 つまりサマリから抜けるとメッセージにつけられたスコアは消去され、 デフォルトのスコア値に戻ります。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.3 スコアファイルの作成

まずサマリバッファで適当なメッセージに移動してから L をタイプしま す。その後ミニバッファでの入力を求められますので、続けて s, s, p とタイプしてみてください。すると Subject の文字列が入力 されている状態になりますので、適当に編集した後 <RET> を押します。

これで、入力した文字列と同じ ‘Subject:’ を持つメッセージに対してスコア -1000 がつけられるようになります。 つまり、このようなスコアファイルが自動的に作成されたことになります。

次に、同じサマリバッファで h e とタイプしてください。 すると先ほど作成したスコアファイルが表示されていると思います。 このバッファをスコア編集バッファと呼びます。 このスコア編集バッファで C-c C-e とタイプすると、 ミニバッファで先ほどと同じような入力を求められると思いますが、 ここで a とタイプしてください。今度はすぐに "From" のスコアエントリが挿 入されたはずです。 このようにしてサマリバッファでもスコア編集バッファでも スコアファイルを簡単に作成することができます。

ところで、ミニバッファでの入力時に s s p または a とタイプしたように、 キータイプ数が違っていたと思います。 これは、wl-score-header-default-entry の設定によるものです。 この変数ではヘッダに応じたデフォルトのスコアエントリを設定します。 たとえば、"subject" ヘッダでは型と期限についての入力を求めますが、 "from" ヘッダでは型は substring, 期限は永続に自動的に決定されます。 ただし、スコアの値は prefix argument で強制的に変更することができます。 また、ミニバッファでの入力時に ? とタイプすることでキーとそれに対応す るヘッダや型を(help)を表示します。

では最後に、スコア編集バッファで C-c C-c と入力して下さい。これでスコア ファイルを保存して編集モードを終了します。バッファの内容を消去してから C-c C-c すると編集中のスコアファイルを削除します。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.4 TIPS


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.4.1 スコアファイルの選択

wl-summary-increase-scorewl-summary-lower-score とで追 加するスコアファイルは wl-score-change-score-file で変更すること ができます。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.4.2 スコアの加算

wl-summary-increase-scorewl-summary-lower-scorewl-score-edit-insert-entry で同じエントリを追加した場合、 スコアが加算されます。

たとえば、L a でスコアが -1000 の ‘from’ エントリを作成した後、 再度 C-u 200 L a でスコアが -200 の ‘from’ エントリを作成すると、 スコアが -1200 のエントリが1つ作成されることになります。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.4.3 Thread キーの作成

wl-summary-increase-scorewl-summary-lower-score で ‘Thread’キーを作成すると、子スレッドの ‘Message-ID’ も全て 追加されます。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.4.4 Followup キーの作成

wl-summary-increase-scorewl-summary-lower-score で ‘Followup’キーを作成すると、カーソル上のメッセージの ‘Message-ID’ も ‘References’ キーに追加されます。 もし、wl-score-auto-make-followup-entry が non-nil であれば wl-score-expiry-days で指定した日にち以内の全 followup 対象のメッセー ジの ‘Message-ID’ が追加されます。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.5 キーバインド

K

現在のメッセージのスコアを高くします。 同時にスコアエントリがスコアファイルに追加されます。 また、prefix argument でスコアの値を設定することができます。

L

現在のメッセージのスコアを低くします。 同時にスコアエントリがスコアファイルに追加されます。 また、prefix argument でスコアの値を設定することができます。

h R

スコアを適用し直します。 ただし、既にスコアがつけられているメッセージには、新たにスコアはつきません。

h c

現在選択しているスコアファイルを変更します。

h e

現在選択しているスコアファイルを編集します。 スコアファイルが複数ある場合先に指定されたファイルが選択されます。

h f

任意のスコアファイルを編集し、このスコアファイルを選択します。

h F

読み込んだスコアファイルは一旦キャッシュされますが、そのキャッシュを消去します。 Wanderlust 以外で直接スコアファイルを変更した場合は、 キャッシュを消去して再読み込みする必要があります。

h m

既読マークを付ける(読んだことにする)スコア基準値を設定します。 この値よりも小さなスコアが既読になります。

h x

サマリから消去するスコア基準値を設定します。 この値よりも小さなスコアが消去されます。 消去といっても表示されないだけであり、サマリ情報やフォルダからは削除されま せん。 消去されたメッセージは rescan-noscore により再び表示することができます。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.6 スコア編集バッファのキーバインド

C-c C-k

編集中のファイルを破棄します。

C-c C-c

編集中のファイルを保存して、編集モードを終了します。

C-c C-p

スコアを綺麗に表示し直します。

C-c C-d

紀元前1年12月31日からの日数を挿入します。 期限付きのスコアを作るときに期限の要素(3番目)に使用します。

C-c C-s

サマリバッファで選択しているメッセージのヘッダを挿入します。

C-c C-e

サマリバッファで選択しているメッセージのスコアエントリを追加します。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.1.7 カスタマイズ変数

wl-summary-default-score

初期設定は 0。 スコアのデフォルト値を設定します。この値を元にスコアが加減されます。

wl-summary-important-above

初期設定は nil。 この値より大きいスコアに対して重要マーク(‘$’) をつけます。 nil の場合はマークを付けません。

wl-summary-target-above

初期設定は nil。 この値より大きいスコアに対してまとめ処理用マーク(‘*’) をつけます。 nil の場合はマークを付けません。

wl-summary-mark-below

初期設定は 0。 この値より小さなスコアに対して既読マークをつけます(読んだことにします)。

wl-summary-expunge-below

初期設定は nil。 この値より小さなスコアはサマリから消去します。 nil の場合は消去しません。

wl-summary-score-marks

初期設定は以下のリスト

 
(list wl-summary-new-uncached-mark
      wl-summary-new-cached-mark)

スコアをつけるメッセージのマークを指定します。

wl-use-scoring

初期設定は t。 Non-nil ならスコア機能を有効にします。

wl-score-files-directory

初期設定は ‘~/.elmo/’。 スコアファイルをデフォルトのディレクトリを指定します。

wl-score-interactive-default-score

初期設定は 1000。 スコアファイルでスコア要素が nil の時に用いるスコアを指定します。 また、wl-summary-increase-scorewl-summary-lower-score でつけるスコア値でも用いられます。ただし、 wl-score-header-default-entry のスコア値が nil の時。

wl-score-expiry-days

初期設定は 7。 期限付きスコアを削除する日数を指定します。

wl-score-update-entry-dates

初期設定は t。 Non-nil なら期限付きスコアを削除する機能を有効にします。

wl-score-header-default-entry

wl-summary-increase-scorewl-summary-lower-scorewl-score-edit-insert-entry でスコアエントリを作成する場合の 各ヘッダのデフォルト値を設定します。

wl-score-simplify-fuzzy-regexp

スコアエントリの型で fuzzy を指定した場合、 文字列から削除する正規表現を指定します。 Subject で使用されることが多いので、デフォルトでは メーリングリストプログラムでつけられる prefix を指定しています。

wl-summary-rescore-partial-threshold

初期設定は 200。 sync-all や rescan が実行されたときに、この値を越えるメッセージが サマリにある場合、サマリの最後から指定された数のメッセージだけ、 部分的にスコア付けが適用されます。

wl-summary-auto-sync-marks

Non-nil ならば、サマリ同期時に未読/重要マークも同期します。 未読マークは、IMAP4 サーバ上の未読情報が反映されます。 重要マークは IMAP4 サーバ上の重要情報(Flagged フラグがついているか)、 および ‘'flag’ フォルダの内容が、反映されます。 初期設定は t


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.2 スコアファイル書式

スコアファイルの書式は Gnus と同じなので、Gnus で使用していた スコアファイルがそのまま利用できます。 ただし、幾つかのキーは対応していなかったり Wanderlust 特有のキーがあったり しますので、完全に互換性があるわけではありません。 See (gnus-ja)Score File Format section ‘Score File Format’ in The gnus Newsreader.

 
(("subject"
  ("for sale" -1000 nil s)
  ("儲け" -1000 nil s))
 ("from"
  ("spam@spamspamspam" -10000 nil s))
 ("followup"
  ("my@address" 3001 nil s))
 ("chars"
  (1000000 -10 nil >))
 (important 5000)
 (target 3000)
 (mark 0)
 (expunge -3000))
文字列 (STRING)

キーが文字列である場合、マッチさせるヘッダの名前を指定します。 このキーには次のものが指定できます。 Subject, From, Date, Message-Id, References, To, Cc, Chars, Lines, Xref, Extra, Followup, Thread この中で、Chars はメッセージのサイズを指し、Extra, Followup, Thread については後述します。 残りはキーと同じ名前のフィールドが対象となります。

このキーの後にスコアエントリを任意の数だけ指定し、 この各スコアエントリは次の5つの要素からなります。

  1. ヘッダにマッチする要素。lineschars の場合は数字で、そ れ以外は文字列を指定します。
  2. スコア要素。1番目の要素がマッチした場合、そのメッセージのスコアをこの値分 増減させます。
  3. 期限の要素。nil なら永続(permanent)指定で、 数字(日数)なら一定期間(wl-score-expiry-days)マッチしないと削除されます。 この日数は紀元前1年12月31日から経過した日にちです。
  4. 型の要素。1番目の要素をマッチさせる方法を指定します。 キーによって指定できる型が異なります。
    From, Subject, References, Message-Id

    これらの文字列のキーに対しては、rR (正規表現) (regexp) や、sS (文字列の一部) (substring)、eE (正確な合致) (exact match)、それに fF (あいまい) (fuzzy) が指定できます。 R, S, E, F は大文字小文字を区別してマッチさせます。

    Lines, Chars

    これらは数字の大小を指定します。その記号は次の5つです。 <, >, =, >=, <=

    Followup

    このキーは、Fromヘッダにマッチし、 そのメッセージへの全てのフォローアップに対してスコアをつけます。 たとえば、自分自身の記事へのフォローアップのスコアを増やしたりするのに便利です。

    f を除いて From キーと同じ型が指定出来ます。 また、自動的にスコアファイルに ‘Followup’ エントリが追加されます。

    Thread

    このキーは、Message-ID x で始まっている(サブ)スレッドにスコアを付ける場合に指定します。 これは References ヘッダに x を持つそれぞれの記事に新しい ‘Thread’ エントリを自動的に追加します。 これにより、全ての祖先の Message-IDReferences に含んでいない場合でも、 確実にスレッド全体のスコアを増減させることができます。

    f を除いて References キーと同じ型が指定出来ます。 また、自動的にスコアファイルに ‘Thread’ エントリが追加されます。

  5. 拡張ヘッダの要素。キーが Extra である場合のみ意味を持ちます。 SubjectFrom などの標準以外のヘッダにマッチさせたい場合に そのヘッダを指定します。 ただし、指定したヘッダは elmo-msgdb-extra-fields にも設定する必要があります。 したがって、拡張ヘッダが取得できないフォルダでは機能しません。

そしてこれらの全ての要素を当てはめた後の合計のスコアがそのメッセー ジのスコアとなります。

mark

この値より小さいスコアのメッセージには既読マークをつけます。 デフォルト値は wl-summary-mark-below で指定されます。

expunge

この値より小さいスコアのメッセージはサマリから消去します。 デフォルト値は wl-summary-expunge-below で指定されます。

mark-and-expunge

markexpunge を同時に指定します。 つまり、この値より小さいスコアのメッセージは既読マークをつけ、サマリから消去します。

target

この値より大きいスコアのメッセージにはまとめ処理用マーク ‘*’ をつけます。 デフォルト値は wl-summary-target-above で指定されます。

important

この値より大きいスコアのメッセージには重要マーク ‘$’ をつけます。 デフォルト値は wl-summary-important-above で指定されます。


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

10.2.1 注意事項

extra キーはもちろん、linesxref キーを使用する 場合でも、elmo-msgdb-extra-fields を設定する必要があります。

 
(setq elmo-msgdb-extra-fields '("lines" "xref"))

その他、下記の制限事項があります。

フォルダ種別により参照できるキーの一覧。

 
                        chars lines xref  extra
localdir,localnews      ○    △    △    △
nntp (xover対応)        ○    △    △    ×
     (xover非対応)      ×    △    △    △
imap4                   ○    △    △    △
pop3                    ×    △    △    △

                ○: 参照できる
                ×: 参照できない(無視される)
                △: elmo-msgdb-extra-fields を設定すれば参照できる

[ << ] [ >> ]           [冒頭] [目次] [見出し] [ ? ]

この文書はYasutaka SHINDOHによって2011年5月月11日texi2html 1.82を用いて生成されました。