2020年5月17日日曜日

Mail Extensions版 Check and Send

Mail Extensions版 Check and Send を公開しました。(v2.0.0)
使用しているAPIの都合から、Thunderbird 76以降での対応になります。
Thunderbird 68では動作しないので注意してください。

ダウンロード:

今回、Mail Extensions化にあたり、完全新規で書き直しています。
旧版では、ダイアログボックスでワーニングを出していましたが、
以下のように、ポップアップで表示します。

※必ずツールバーに「チェック」ボタンを配置してください。置かない場合は、メール送信自体できなくなってしまいます。


使い方に関して、少し注意点があります。
以下のように実行してください。
  1. メールを書いて送信ボタンを押す(この時点では、上記の「?」ボタンは無効になっています)
  2. 「?」ボタンが有効になり、ポップアップでワーニングが表示される
  3. 送信する場合は「Send」を、中止する場合は「Cancel」を押す
3.でSend/Cancelを押さすに、ボップアップを閉じてしまった場合は、
編集も送信もできない状態になります。
「?」ボタンを押すと、再度ポップアップが表示されるので、
Send/Cancelを押してください。

Cancelを押した場合、「?」ボタンが有効なままになっています。
「?」ボタンを押すと、再度チェックをかけて、結果をポップアップで表示します。
この場合は、Send/Cancelボタンはありません。
修正の確認に使用してください。
修正後に送信する場合は、送信ボタンを押してください。

オプションは、アドオンマネージャの中にあります。
デフォルトでは、ほとんどのチェックが無効になっているので、
まずは、設定をしてください。





上記、ポップアップ以外に、旧版から以下の変更があります。
  • Newsgroup/Followup-Toのチェックを廃止
  • To/Ccが指定数以上で、Bccがない場合の警告を追加
  • 添付忘れチェックを廃止(Thunderbird本体のチェックと重複のため)
  • 添付ファイルの拡張子チェックは、ホワイトリスト設定もできるように変更
  • 添付ファイルサイズの指定を、KBからMBに変更
  • 単語チェックの found/not found は、個別にリストを設定できるように変更
  • 単語チェックで、マッチした単語のハイライトを廃止
  • アドレスチェックを、アドレス帳とリストでのチェックに変更
  • アドレスチェックで、チェックするFieldを指定する設定を廃止
    代わりに、チェック対象からBCCを除外するオプションを追加
  • 添付チェック、単語チェックエラー時のみ、アドレスチェックをする設定を廃止
  • 名前チェックの実施タイミングを、送信時のみに変更
  • 名前チェックから、Bcc, Newsgroup, Folloup-Toを除外
  • 重複アドレスのチェックを追加

新規書き直しになったため、過去に要望されていた機能も含め、
見直して実装してみました。
不具合等ありましたら、コメントいただけると助かります。

また、Check and Sendは、日本人ユーザが多く、設定も複雑なため、
このあと、多言語化を進めていきます。
v2.0.4以降、日本語版Thunderbirdでは、日本語で表示されるようになっています。

[2020/5/18]
Check and Send 2.0.1を公開しました。
アドレス帳に同じemailアドレスのカードが複数あった場合の、宛名修正のポップアップを修正しました。最初に見つかったものに修正されます。
また、宛名修正をポップアップするかの設定の論理が逆になっていたので修正しました。

[2020/5/19]
Check and Send 2.0.2を公開しました。
宛名チェックで、アドレス帳に見つからなかった場合に、削除するオプションを追加しました。

[2020/5/22]
Check and Send 2.0.3を公開しました。
添付ファイルサイズの指定に不具合があったのを修正しました。

[2020/5/23]
Check and Send 2.0.4を公開しました。
日本語化をしました。
これで予定していたものはすべて実装しました。

[2020/5/30]
Check and Send 2.0.5を公開しました。
新規に、曜日/日付のチェックを実装しています。
詳細は、以下を確認してください。
https://hogi-ja.blogspot.com/2020/05/check-and-send-205.html

[2020/6/13]
v2.0.6を公開しました。
アドレスチェックや、宛名チェックに使用するアドレス帳を、複数指定できるようにしました。
また、このバージョンから、WebExtensionExperiments なしで実装しています。
チェック時間が少し改善されるかもしれません。

[2020/6/20]
v2.0.7を公開しました。
曜日チェックが無効な場合でも、メッセージ本文を読み込んでいたのを修正しました。
また、単語チェックで、設定にかかわらず引用部を無視していたのを修正しました。





13 件のコメント:

  1. いつも使わせていただいております。
    ありがとうございます。

    Thunderbirdを78の64bit版にし、Check and Sendも2.0.10にしているのですが、アドオンのオプションで設定も保持されず、送信時のチェックも行われません。
    送信時のメニューバーのチェックボタンも見えていて、スペルチェックなどは動いています。
    設定が保存されないあたりが怪しい感じですが・・・

    返信削除
  2. すみません。突貫で作り直しているので、不具合の可能性が高いです。

    もう少し情報を教えてください。

    デフォルトから設定を変えている部分はどこでしょうか?また、エラーコンソールになにか出ていないでしょうか?

    エラーコンソールは、Ctrl+Shift+Jで出ます。右上の歯車ボタンをおして、「コンテンツメッセージを表示」にチェックが入っている状態で確認してください。

    返信削除
  3. メールをテストで1件送った時にコンソールに以下のようなエラーが出ています

    TypeError: prin.URI is null ConduitsParent.jsm:123:58
    Error: Unknown sender or wrong actor for recvCreateProxyContext ConduitsParent.jsm:321:13
    TypeError: prin.URI is null ConduitsParent.jsm:123:58
    malformed URI sequence ext-mail.js:1451
    map self-hosted:240
    folderURIToPath chrome://messenger/content/parent/ext-mail.js:1451
    convertFolder chrome://messenger/content/parent/ext-mail.js:1513
    traverse chrome://messenger/content/parent/ext-accounts.js:29
    traverse chrome://messenger/content/parent/ext-accounts.js:32
    traverse chrome://messenger/content/parent/ext-accounts.js:32
    traverse chrome://messenger/content/parent/ext-accounts.js:32
    convertAccount chrome://messenger/content/parent/ext-accounts.js:36
    list chrome://messenger/content/parent/ext-accounts.js:54
    list self-hosted:844
    result resource://gre/modules/ExtensionParent.jsm:996
    withPendingBrowser resource://gre/modules/ExtensionParent.jsm:602
    result resource://gre/modules/ExtensionParent.jsm:996
    callAndLog resource://gre/modules/ExtensionParent.jsm:958
    recvAPICall resource://gre/modules/ExtensionParent.jsm:995
    InterpretGeneratorResume self-hosted:1151
    AsyncFunctionNext self-hosted:693
    Content Security Policy: ページの設定により次のリソースの読み込みをブロックしました: inline (“default-src”) panel.js:78:24
    Uncaught (in promise) Error: An unexpected error occurred undefined
    window.controllers/Controllers は推奨されません。これを UA の検出に使用しないでください。 blank

    返信削除
  4. うーん。最後のエラーは気になりますが、Check and Sendのものではなさそうです。

    他にアドオンは入れていますか?

    返信削除
  5. 他に入れているプラグインは、

    Compact Headers
    https://addons.thunderbird.net/en-US/thunderbird/addon/compact-headers/

    Open Google Calendar
    https://www.rymetemmanuel.fr/

    だけです。
    一旦、消してみようかと思います。

    あと、Dark テーマが入ってます。

    返信削除
  6. テーマ以外を消してみましたが、残念ながら、Check and Sendの設定は、一旦、オプション設定画面を閉じて開くと、初期状態に戻ってしまうのは変わりませんでした

    返信削除
  7. まだ再現できていません。どの設定を変更していますか?

    返信削除
  8. ありがとうございます。
    設定変更しているというより、設定変更しようとしても格納されず、
    すべてインストール時に戻ってしまう問題です。

    他のオプションがあるアドオンを探してみます
    それで、設定が格納されなければファイルのパーミションとかの問題かもしれませんね
    Optionsの設定が、どのファイルに格納されるか、ご存知なら、教えていただければと思います。

    返信削除
  9. 特定のオプションの変更をすると、設定保存がコケて、全部デフォルトになってしまうのかなと思ったのですが、ちょっと違うんですかね。

    設定は、Thunderbirdの仕組みを使っています。たぶん、プロファイルフォルダにある以下だと思います。

    storage\default\moz-extension+++76e4ab65-2b52-4e97-b9eb-97a220a96c7f^userContextId=4294967295

    +++以降の部分は環境によって違うかもしれません。
    アドオンマネージャの歯車ボタン→アドオンをデバッグを開いて、Check and Sendの「内部UUID」の値を参考に、探してみてください。

    返信削除
  10. 78.4.1に更新したところ使用できなくなりました。

    返信削除
  11. 素晴らしいアドオンをありがとうございます。
    同じく 78.4.1 で正常動作しなくなりましたが、いちど削除して再インストールしたら元に戻りました。

    お知らせまで

    返信削除
  12. Thunderbird 78.5.1 ですが
    ポップアップが表示されるメール送信ができない状況です。

    どうしたらよいでしょうか?

    返信削除
  13. 大変便利なアドオンをありがとうございます。
    いつも便利に利用させていただいております。

    不具合等ではないと思うのですが、
    Check and Sendのアドオンを有効にしているとメール本文の最初の行に1行だけ改行が入ります。。。
    改行されないようにする設定があれば教えてください。
    (ちなみに最近ではなくだいぶ前からです)

    バージョン:2.1.1
    thunderbird:91.10.0 (32 ビット)

    よろしくお願いします。

    返信削除