hoge diary - August 21, 2004

[PC環境改善] mutt on Cygwin で Maildir 形式のメールボックスを使用する際の問題点

Cygwin 環境をバリバリ使っている今日この頃,mutt で Maildir 形式のメールボックスを使うと,メールを既読にマークできません.rename システムコールで "No such file or directory" というエラーが発生するのです.非常に謎です.

そこで,仕方なしに MH 形式を使っていたのですが... MH 形式では到着したメールが新着かどうか分からないので使いづらいのなんの.mbox 形式でも構わないのですが,「1 メール 1 ファイル」に憧れているので,慣れた Maildir 形式で使いたいのが人情というもの.

今日ついに,mutt で Maildir 形式のメールボックスを使うときの不具合の謎が解けました!

原因はファイル名でした.Windows で使用できない文字をファイル名に使用しようとして失敗していたのです.

mutt の仕様なのか,Maildir の仕様なのかは分かりませんが,mutt で Maildir 形式のメールボックスを用いると,既読のメールに対して,"xxxxxxxxxx:S" という具合に,コロンを含むファイル名を付けようとします.Windows が用いるファイルシステム(FAT および NTFS)では当然のごとく,コロンをファイル名の文字として使用できません.

... というわけで,オープンソース界における伝家の宝刀,patch を振りかざすことにしました.

同様の問題に直面している人は他にもいるようで,検索を掛けると mutt 1.4.2.1i-ja のソースファイル mh.c を変更するらしいことはすぐに分かりました.当該ファイルを見てみると... 見事にコロンがコード中にマジックナンバーの如く埋め込まれています.せめて define して欲しかった...

とりあえず,コロンの代わりにセミコロンを使うようにして万事解決.

コメント

名前(何でも可):

テキスト(http:// を含む内容は投稿できません):

トラックバック

トラックバック URI: https://www.pakunet.jp/hoge/trackback/2004082101

トラックバックはありません.


Valid XHTML 1.1! Valid CSS!
© 2004-2009 ぱくちゃん.
Last modified: Thu Nov 01 01:16:09 JST 2007