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

[xyzzy:08511] KaMail の番号振り直し機能に間して



松原と申します。

lisp は全く分からないのですが、xyzzy + KaMail の環境を愛用させて頂
いております。
さて、この様な私ではありますが、以下の症状を改善する為の lisp をご
教授頂けると幸いです。

■やりたい事
「ローカルフォルダの番号振り直し(M-r)」を実行する場合に、対象ファ
イルを Summary で再表示しているメールだけでなく、そのフォルダに保
存されているファイル全てを対象とする。

現状の機能の中で行うとするならば、summary で
 1. フォルダを再読込する(l)
 2. 表示対象を 1 から最後まで指定し、そのフォルダ内の全てのメール
    を表示させる
 3. ローカルフォルダの番号振り直し(M-r)を行う
という動作を一発で実施したいなという事です。


■経験した事
Toy さんのサイトで、以下の自動番号振りなおしの関数を含めた lisp を
紹介されていらっしゃいます。

; 自動振り分け and 日付でソート and 番号振り直し
(defun kamail-special-sort ()
  (interactive)
  (kamail-auto-refile nil nil)
  (kamail-summary-sort-by-date)
  (kamail-renumber))

しかし、上記をそのまま利用すると、番号の振り直し関数の仕様(Summary 
で表示しているメールファイルだけが対象)によって、全てのメールファ
イルを表示していない場合には、
 「既に存在するファイルを作成できません」
と言われてしまいます。

また、上記メッセージが出ても、途中で中止する事ができない(と思いま
す)ので、表示している範囲で、1 から番号を振り直されてしまい、この
時に番号振りなおしの対象としなかったメールファイルで、番号振りなお
しによってメールファイル名が重複してしまったものは、*.rnb ファイル
へバックアップされてはいますが、KaMail 上からは表示する事ができな
くなってしまいます。

復旧方法は簡単で、バックアップされている *.rnb ファイルを、拡張子
の無い、且つ重複しない番号だけのファイル名へリネームすれば、また 
KaMail 上から読み込みができますので、この番号振り直しの機能により、
メールが消失してしまう事は無く、改善すべき機能では無いのですが、つ
い表示対象を全てとするのを忘れたまま、番号振りなおしを実行してしま
った時に、復旧させる為の多少の手間が面倒なのですね ;)

どなたか、ご教授頂けますでしょうか。
宜しくお願い致します。

---
 松原 啓氏
 keishi@xxxxxxxxxxxx

Index Home