on Rails : ActionMailer練習そして「?」
http://wota.jp/ac/?date=20050731とか3 日坊主日記 - ActionMailer , activerecord-1.7.0とかを読みながら.
何処を見ても,日本語メールってのをutf8じゃなくてiso-2022-jpで送ってますね.utf8じゃダメなのかしらん.メールの決まり事を良く知らないので何とも言えないので,とりあえず郷に入れば郷に従え,utf8でやりたい衝動を抑え,iso-2022-jpで頑張る事に.いやーでも時代はutf8だと思うんだ….
とりあえずはじめのエンコードの部分を読んでみるものの….
require 'nkf' class Mailer < ActionMailer::Base @@default_charset = "iso-2022-jp" @@encode_subject = false private def base64(text, charset="iso-2022-jp", convert = true) if convert if charset == "iso-2022-jp" text = NKF.nkf('-j -m0', text) # -j JISコードを出力 # -m0 MIMEコードを解読しない # なんのこっちゃ?これでiso-2022-jpにできるのか? end end text = [text].pack('m').delete("\r\n") # pack…'m'に従って,textをバイナリとしてパックするとか. # なんのこっちゃ? "=?#{charset}?B?#{text}?=" # おまじない? end end
そもそもメールの仕組みをほとんど理解していないので,「なんのこっちゃ」のオンパレード.もう少し勉強してから触るべきだと思いました.