[Mew-dist 06664] Re: delete and * mark

SAKAI Kiyotaka ksakai at example.com
1998年 10月 6日 (火) 16:21:52 JST


>> In article <19981005133317N.kazu at example.com>, Kazu Yamamoto (山本和彦) <kazu at example.com> writes:

> たくさんの方が、いろいろ提案を繰り返していたので、だれかまとめてくれる
> と嬉しいです。

> たとえば、
> 	[Mew-dist 04236] review mark and multi mark
> とか。

[Mew-dist 1134] `*' and `@' 以下の thread でマークの意味の変更が提案さ
れていましたが、[Mew-dist 04236] はこれと同じ主旨の提案ですね。

[Mew-dist 1134] 以下の thread は

  http://www.mew.org/archive/mew-dist/1-2012/thrd9.html
  http://www.mew.org/archive/mew-dist/1-2012/thrd10.html

は見ることができますが、要点を切り張りすると、以下のようになります。

------------------------------ ここから ------------------------------
・'*' と '@' のマークの機能を

    `*' : 操作 (refile, forward, uushar, ...) するためのマーク
    `@' : なにもしないためのマーク
          (= refile や pick などの対象にしないためのマーク
           = その folder にとどめておくためのマーク
           = あとで読みなおすためのマーク
           = 「復習」)

  と定義する。

  現状では

    1. 表示等のメッセージの移動のため(`*')
    2. 転送等の複数メッセージの指定(`@')
    3. フォルダ移動等のため(`*')

  となっているのを、

    1. -> (`@')
    2. -> (`*')
    3. -> (`*')

  と変更することになる。

  そのために必要なのは、
  (1) `F'     (mew-summary-multi-forward)
      `ESC s' (mew-summary-unshar)
      `ESC t' (mew-summary-uudecode)
      の対象を `*' に変更
  (2) N, P の対象を `@' に変更
  (3) n, p の動作の変更
      (「下[上]方向のマークが付いていないか `@' マークの付いた
       メールへ移動」でいいのかな?)

  パッチは [Mew-dist 1181] を参照。
------------------------------ ここまで ------------------------------

このマークの意味付けの変更を行なうのは、僕も望ましいことのように思います。

これ以外の要望としては、

・マークの数を自由に増やせるようにしたい。
  (1,2,3 を 3つのマークに分離したい、など)

・マーク時の動作をコントロールしたい。
  (マーク時の移動方向や強いマーク、弱いマークのコントロールなど。)

というのが挙がっていました。こういった動作のコントロールを行なうために、
以下のような仕様を考えてみましたが、どうでしょうか。

・マークの property を定義する。
  (defvar mew-mark-action-list
    ;; key mark lev actione-when-mark after stronger
    '(("@" "@"   2  nil               stop   stop)
      ("*" "*"   2  nil               stop   stop)
      ("d" "D"   3  mew-mark-delete    nil   stop)
      ("o" "o"   4  mew-mark-refile    nil   stop)))

  (defvar mew-mark-property-list
    ;; mark lev action-when-undo  del
    '(("@"   1  nil               nil)
      ("*"   1  nil               nil)
      ("D"   3  nil               t)
      ("o"   3  mew-mark-unrefile t)))

   key … キーバインドを記述
   mrk … 付けるマークを記述
   actione-when-mark … マークを付ける以外に特別の操作を行なう場合に指定
   after … mark を付け終わったときに取る動作
            'up, 'down, 'next(current direction), 'stop, nil が指定可能。
            nil を指定したときは mew-summary-mark-direction に従う。
   stronger … 元々マークが付いていて、より強いマークで上書きした場合は、
               こっちの値を使用する。(デフォルトはすべて nil の方がい
               い?)
   lev … マークの強さのレベル
          action-list: マークを付加するするときのレベル
          property-list: 実際に付いているマークのレベル

       レベルが下周るとき … 何もしない。
       レベルが同じとき   … 警告を出力する。
       レベルが上周るとき … 無条件に上書きする。

   action-when-undo  … マークを undo するときに特別の操作を行なう場合
                        に指定 (現在の mew-mark-undo-switch に相当)
   del … x を実行したときに、t ならばその行を削除する。
          (現在の mew-mark-delete-switch に相当)

  なお、変数を 2つに分けてあるのは、マーク時の動作は異なるが、同じマー
  クを付けたいときに使えるようにするためである。

・P or N で移動する先のマークは別の変数で指定する。
  (リストで複数を指定できるようにする)

  p or n は、このリストで指定したマーク以外のマークが付いているものは
  skip する。

  default は '("@")  (mew-1.93 での動作は '("*") と設定しているのに相当)

・pick で使用するマークも変数で設定できるようにしておいた方がいい?
-- 
酒井 清隆 (E-mail: ksakai at example.com)



Mew-dist メーリングリストの案内