[mew-dist 28936] FAT 上でのメールの共存

KIRIHARA Masaharu mki_open_nine at example.com
2009年 6月 24日 (水) 17:45:01 JST


桐原と申します.

# 本来 OS側 が解決すべきであることなのですが…….
当方 Windows と UNIX (NetBSD 2.1) を dual-boot で使っています.
両 OS がアクセスできる領域として FAT32 を用意し,
そこに e-mail を保存しています.そして
    (setq mew-use-suffix t)
として拡張子 (.mew) を使うようにしています.

NetBSD 側から見た場合,拡張子が大文字になって見え,それが問題になっています.

例えば Windows側 から見て inbox に
    2.mew    3.mew
とあった場合,NetBSD側 からは
    2.MEW    3.MEW
となり,NetBSD上で pop により 2通 e-mail を get した場合,
    1.mew    2.mew    3.MEW
となり,最初にあった 2.MEW が消えてしまいます (= overwrite されてしまいます).
## まだ消えた e-mail が重要な e-mail でなかったのでよかったのですが…….

とりあえず下記のような patch でしのいでいますが,
    - 拡張子が小文字に限定されてしまう
    - 大文字/小文字を区別する file system で,
      もし 1.MEW が存在した場合,1.mew が作成できるにも関わらず
      作成されない.
といった問題が起こります.
(が,それ程重要な問題ではないと思っています.)

################################################################
--- mew-func.el.orig    2009-06-03 10:07:20.000000000 +0900
+++ mew-func.el 2009-06-23 20:45:05.000000000 +0900
@@ -696,9 +696,10 @@
     file))
 
 (defun mew-msg-get-filename (file)
-  (let ((sfile (format "%s%s" file mew-suffix)))
-    (if (file-exists-p sfile)
-       sfile
+  (let ((sdfile (format "%s%s" file (downcase mew-suffix))) 
+        (sufile (format "%s%s" file (upcase mew-suffix))))
+    (if (or (file-exists-p sdfile) (file-exists-p sufile))
+       sdfile
       file)))
 
 (defun mew-expand-msg (folder message)
################################################################

上記の例では NetBSD上で pop get したら
    2.MEW    3.MEW    4.mew    5.mew
のようになって欲しいなぁ〜,と思っています.
(が,mew での拡張子の取り扱いを す べ て 大文字/小文字の区別を
なくさなければならないので,修正するのは大変だと思います…….)

拡張子なしで使用すればいい,と言われればそうなのですが…….

### FAT の取り扱いについて,他の PC-UNIX ではどうなのでしょうか?
### もしくは最近の NetBSD では解決している,とか?

---
KIRIHARA, Masaharu
    ( mki_open_nine % yahoo.co.jp @ localhost)


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