From: Wybo Dekker Date: 2005-12-04T21:46:44+09:00 Subject: bug in mailread.rb, and: proposal for Mail#to_s --693760-1329460259-1133699836=:7230 Content-Type: MULTIPART/MIXED; BOUNDARY="693760-1329460259-1133699836=:7230" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --693760-1329460259-1133699836=:7230 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: mailread separates mail messages looking for /^From /. This is incorrect, because message bodies may contain lines beginning with From like this mail does. So the regexp should be, I think, something like: /^From .*? \w{3} \w{3} [\d ]{2} \d\d:\d\d:\d\d \d{4}/ I also propose a to_s method, which converts the Mail object to a (possibly edited) copy of the original mail message. The attached maildir.rb is my proposal for both topics. -- Wybo --693760-1329460259-1133699836=:7230 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="mailread.rb" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: ATTACHMENT; FILENAME="mailread.rb" Y2xhc3MgTWFpbA0KDQogIGRlZiBpbml0aWFsaXplKGYpDQogICAgdW5sZXNz IGRlZmluZWQ/IGYuZ2V0cw0KICAgICAgZiA9IG9wZW4oZiwgInIiKQ0KICAg ICAgb3BlbmVkID0gdHJ1ZQ0KICAgIGVuZA0KDQogICAgQGhlYWRlciA9IHt9 DQogICAgQGJvZHkgPSBbXQ0KICAgIGJlZ2luDQogICAgICB3aGlsZSBsaW5l ID0gZi5nZXRzKCkNCglsaW5lLmNob3AhDQoJbmV4dCBpZiAvXkZyb20gLz1+ bGluZQkjIHNraXAgRnJvbS1saW5lDQoJYnJlYWsgaWYgL14kLz1+bGluZQkj IGVuZCBvZiBoZWFkZXINCg0KCWlmIC9eKFxTKz8pOlxzKiguKikvPX5saW5l DQoJICAoYXR0ciA9ICQxKS5jYXBpdGFsaXplIQ0KCSAgQGhlYWRlclthdHRy XSA9ICQyDQoJZWxzaWYgYXR0cg0KCSAgbGluZS5zdWIhKC9eXHMqLywgJycp DQoJICBAaGVhZGVyW2F0dHJdICs9ICJcbiIgKyBsaW5lDQoJZW5kDQogICAg ICBlbmQNCiAgDQogICAgICByZXR1cm4gdW5sZXNzIGxpbmUNCg0KICAgICAg d2hpbGUgbGluZSA9IGYuZ2V0cygpDQogICAgICAgICMgRnJvbSB3eWJvQHNl cnZhbHlzLm5sIFN1biBTZXAgMjYgMTM6MjA6NTEgMjAwNCArMDIwMA0KCWJy ZWFrIGlmIC9eRnJvbSAuKj8gXHd7M30gXHd7M30gW1xkIF17Mn0gXGRcZDpc ZFxkOlxkXGQgXGR7NH0vPX5saW5lDQoJQGJvZHkucHVzaChsaW5lKQ0KICAg ICAgZW5kDQogICAgZW5zdXJlDQogICAgICBmLmNsb3NlIGlmIG9wZW5lZA0K ICAgIGVuZA0KICBlbmQNCg0KICBkZWYgaGVhZGVyDQogICAgcmV0dXJuIEBo ZWFkZXINCiAgZW5kDQoNCiAgZGVmIGJvZHkNCiAgICByZXR1cm4gQGJvZHkN CiAgZW5kDQoNCiAgZGVmIFtdKGZpZWxkKQ0KICAgIEBoZWFkZXJbZmllbGQu Y2FwaXRhbGl6ZV0NCiAgZW5kDQoNCiAgIyBSZXR1cm4gYSBNYWlsIG9iamVj dCwgcmVhZHkgdG8gcHJpbnQsIGluY2x1ZGluZyBhIGBGcm9tICcgbGluZS4N CiAgIyBIZWFkZXIgdGFncyB3aWxsIGFwcGVhciBzb3J0ZWQsIGJ1dCBEYXRl LCBGcm9tLCBTdWJqZWN0IGFuZCBUbyANCiAgIyBnbyBpbiBmcm9udDsgbm90 ZSB0aGF0IG9mIHRhZ3MgdGhhdCBvY2N1cnJlZCBtdWx0aXBseSB0aW1lcyBp biB0aGUNCiAgIyBvcmlnaW5hbCAobGlrZSBSZWNlaXZlZDopLCBvbmx5IHRo ZSBsYXN0IG9uZSB3aWxsIGJlIHJlcHJvZHVjZWQgaGVyZQ0KICBkZWYgdG9f cw0KICAgIHByaW9yID0gJXd7RGF0ZSBGcm9tIFN1YmplY3QgVG99DQogICAg cyA9ICJGcm9tIG1haWxyZWFkLnJiICN7RGF0ZVRpbWUubm93LmFzY3RpbWV9 IiArICQvIA0KICAgIHNlbGYuaGVhZGVyLmtleXMuc29ydCB7IHxhLGJ8DQog ICAgICBpZiBwcmlvci5pbmRleChhKQ0KICAgICAgICBwcmlvci5pbmRleChi KSA/IGEgPD0+IGIgOiAtMQ0KICAgICAgZWxzaWYgcHJpb3IuaW5kZXgoYikN CiAgICAgICAgMQ0KICAgICAgZWxzZQ0KICAgICAgICBhIDw9PiBiDQogICAg ICBlbmQNCiAgICB9LmVhY2ggeyB8a3wNCiAgICAgIHMgPDwgIiN7a306ICN7 c2VsZi5oZWFkZXJba10uZ3N1YigvI3skL30vLCQvKyJcdCIpfSIgKyAkLw0K ICAgIH0NCiAgICBzIDw8ICQvDQogICAgcyA8PCBzZWxmLmJvZHkuam9pbg0K ICBlbmQNCg0KZW5kDQo= --693760-1329460259-1133699836=:7230-- --693760-1329460259-1133699836=:7230--