出沢です mew-dist での見解にしたがって直しました。 後藤さんの御意見も入れて、 encode64 は 822+2947 -->( encode と folding) を行なうようにし、decode は decode専門の decode64 と unfold とに分けました。 in.comming/mime.rb に置きました。 rfc2231対応分を書いて見ようかと RFC をもうすこし読んで見たのですが、 value部分にMIMEencodeが許されるみたいだとか色々思想自身も複雑そう。 今回は止めておきます。 # public method # encode64(pre="",len=76,sep="\n ") # self を rfc2047に従ってMIMEencodeする。 # 1行あたり、len Byte までで折り返す # pre に追加する形で encode する。 # 折り返しが必要な場合は sep を入れる # # decode64 # self が MIMEencodeされているものとして、decodeする。 # encoded と encoded の間にはさまれている "\s+" を削除する # それ以外の \n には手を触れない。 # その後、日本語SO/SI が続いてあったらこれも削除する。 # # unfold(cur="",len=76) # 1行の長さが len の長さを越えない範囲で、\n を削除する。