sendmail と Kconv

ソースは UTF-8sendmail に渡す際に Kconviso-2022-jp に変換。

#!/usr/bin/ruby -Ku

require 'kconv'

mailer = '/usr/sbin/sendmail'
from= 'xxx@xxxx.xx'
to = 'xxx@xxxx.xx'
subject = '件名'
message = 'これはテストです。'

open("| #{mailer} -t", 'w') do |f|
  f.puts "From: #{from}"
  f.puts "To: #{to}"
  f.puts "Subject: #{subject}".tojis
  f.puts
  f.puts message.tojis
  2.times { f.puts }
  f.puts "."
end

これだと、

From: xxx@xxxx.xx
To: xxx@xxxx.xx
Subject: 件名

これはテストです。

こうなる。

open("| #{mailer} -t", 'w') do |f|
  f.puts "From: #{from}"
  f.puts "To: #{to}"
  f.puts "Subject: #{subject}".tojis.tojis
  f.puts
  f.puts message.tojis.tojis
  2.times { f.puts }
  f.puts "."
end

これだと、

From: xxx@xxxx.xx
To: xxx@xxxx.xx
Subject: 件名

これはテストです。

こうなる。



何故だ。