Download List

프로젝트 설명

Mac OS X の Mail.app を用いたメールの送信時に,Unicode文字のチェックを行い,必要に応じて文字の置換を行うとともに,日本国内で一般にメールのやり取りに用いられている ISO 2022-JP エンコーディングで送信を行うように設定するプラグインです。注:このプラグインには,受け取った文字化けしたメールを閲覧時に修正するための機能はありません。あくまでも,送信メールのテキストエンコーディングをISO 2022-JP に設定するためのプラグインです。

macOS 10.5 - 12.6 に対応

(macOS 10.9 - 10.15.7 に対応のバージョンは,2.9までとなります。また,Mac OS X 10.5 - 10.8.5 に対応のバージョンは,1.4.0までとなります。)

macOS 13 VenturaのMail.appは,内部構造が大幅に変更された結果,メール本文へのアクセス方法が不明であり,2022年10月現在、対応は困難な状況です。

アンインストール方法

2.6.0までのバージョンは、/Users/(ユーザ名)/Library/Mail/Bundles/ にプラグインのファイルをインストールしています。 「/Users/(ユーザ名)/Library」は,Finderのメニューの「移動」をOptionキーを押しながら開いて,「ライブラリ」を選択するとアクセスが可能です。 2.7.0以降では,/Library/Mail/Bundles/ にプラグインのファイルを作成します。

アンインストールしたい場合は,LetterFix.mailbundle をゴミ箱に移動して,Mail.appを再起動してください。

なお,macOS Mojave以降 では,Mail.appの環境設定内にある,プラグインの管理でチェックボックスを外しMail.appを再起動する必要があります。

Mail.appの問題の解説

標準状態のMail.appでメールを送信する時,次の2つのパターンで受信側で文面が文字化けする場合があります。

Mail.app は,ISO 2022-JP エンコーディングで送られてきたメールに返信する時,標準の UTF-8 + Base64 ではなくISO-2022-JP エンコーディングでメールを送信しようとします。この時に,返信の文面に Unicode 文字が含まれていると,ISO-2022-JP-2 というテキストエンコーディングでメールを送信します。このエンコーディングには,ほとんどのメールソフトが対応していませんので,Unicodeに対応していたとしても,高い確率でメールの文字化けが発生します。これが1つ目の問題です。

もう1つは,Unicodeに対応しない古いメールソフトで受信される場合です。Mail.appは,ASCII文字以外が文面に入っている場合,UTF-8 + Base64 エンコーディングでメールを送信するため,一部の受信メールソフトでは正しく表示が行われない可能性があります。

本プラグインは上記の問題に対して、ISO-2022-JPに変換できないUnicode文字を置き換えることで、ISO-2022-JPでメールを送信可能にします。またダイアログでUnicode文字をそのまま送信する選択をした場合にも,強制的に UTF-8 + Base64 エンコーディングに設定して送信することで問題の発生を防止します。

制限事項

ファイルを添付したメールでは,件名等のヘッダーは UTF-8 + MIME エンコーディングで送信されます。また、High Sierra以降では,添付がない場合でも,ヘッダーがUTF-8+MIMEエンコーディングになります。

またメール本文の行毎の文字数が一定値を超えるとquoted-printable形式で 送信されることを防ぐことはできません。

謝辞

このプラグインを作成するにあたり,

を参考にさせていただきました。

System Requirements

System requirement is not defined

Released at 2019-04-16 15:51
letter-fix 2.8.1 (1 files Hide)

Release Notes

  • 複数のUnicodeからなる結合文字を1文字として〓に置き換えるようにしました。
    • 例えば、🇯🇵(U+1F1EF U+1F1F5)は,従来4つの〓に置き換えられていました(U+1F1EFも2文字に展開されるため)。
    • 一方で、あ⃣(U+3042 U+20E3)の様にISO-2022-JPに変換可能な基底文字に結合文字が付加されたものの場合、従来は「あ〓」と基底文字は読み取れましたが、今バージョンでは「〓」となります。
    • ただし、2.8.0で追加された「文字コードを付加する」オプションを有効にしていいる場合、「〓(あ U+20E3)」の様に変換されます。
  • ソースコードのリファクタリングを行い、冗長なコードなどを整理しました。
  • macOS Mojave 10.14.4までに対応しています(2.8.0から変更ありません)。
  • Mojave では,インストール(アップデート)後,Mail の一般環境設定でプラグインの有効化を行う必要があります
  • (5/14追記) macOS Mojave 10.14.5 (18F132)にも対応しています。
  • (7/23追記) macOS Mojave 10.14.6 (18G84)にも対応しています。

Changelog

  • 複数のUnicodeからなる結合文字を1文字として〓に置き換えるようにしました。
  • ソースコードのリファクタリングを行い、冗長なコードなどを整理しました。