Skip to content

Signature Switch


Tired of removing/inserting your signature manually when composing a mail?

Sometimes you don't want specific recipients to see your signature (which may contain "personal" information).
Signature Switch offers removal (and re-insertion) of your signature with just one click of a button.
Moreover, you can define different signatures (e.g. for private- or business-use) and easily select them via toolbar button.

But that's not all!
Additional features include the support of "fortune cookie files" and automatic switching based on recipients.
Switching or choosing the signature only affects the currently composed message of course. Your original settings remain untouched.








2.16.1 (2023-07-17)

  • fixed min-version in manifest file (111.0)

2.16.0 (2023-07-17)

  • fixed visibility of context-menu
  • updated dependencies
  • other minor improvements

2.15.3 (2023-06-26)

  • updated dependencies

2.15.2 (2023-05-07)

  • updated dependencies

2.15.1 (2023-02-05)

  • improved theme handling
  • updated dependencies

2.15.0 (2023-01-27)

  • new: "dark theme" for settings ui
  • Polish localization improved
  • updated dependencies

2.14.1 (2023-01-06)

  • French localization added
  • Polish localization improved

2.14.0 (2023-01-04)

  • Polish localization added
  • updated dependencies
  • other minor improvements

2.13.0 (2022-12-10)

  • enhanced export functionality (now optionally includes images and fortune-cookies)
  • updated code dependencies
  • other minor (code) improvements

2.12.0 (2022-09-14)

  • German localization added
  • updated dependencies
  • other minor improvements

2.11.0 (2022-07-02)

  • updated dependencies

2.10.0 (2022-01-11)

  • improvement: plain-text signature editor now uses a monospace font-style
  • fix: internal handling for default-initialization of bool settings
  • fix: disable auto-switch for replies/forwardings (when set in options)
  • updated dependencies

2.9.0 (2022-01-02)

  • new: visual separator to clearly distinguish the mail body from the signature while composing (doesn't get sent with the actual mail or shown when printed);
    this should mitigate issues when mail text accidentally gets written inside the signature part
  • new: auto-switch feature now has a "match all" option
  • fix: improved handling for (image-, cookie-, native-messaging-)placeholders
  • updated dependencies
  • various other minor code improvements

2.8.0 (2021-08-14)

  • improved handling for "automated actions" when opening a new compose window (should fix issues introduced with Thunderbird 91.0)

2.7.0 (2021-07-07)

  • new: add dynamic content to your signature via Native Messaging (requires an additional permission; please check the FAQs)
  • migration from Bootstrap 4 to Bootstrap 5 for all UI components
    (alongside this, all other usages of jQuery got removed from the extension's code as well)
  • all other libraries updated
  • many more code improvements

2.6.1 (2021-03-18)

  • refactored recipientChange- and identityChange-listeners (may fix the issues some users had when using mailing-lists in recipients)
  • updated dependencies/libs

2.6.0 (2021-02-13)

  • context-menu entry now working again
  • updated dependencies/libs

2.5.0 (2021-01-13)

  • new: option for signature placement (above quote/forwarding)
  • fixed bug in handling of auto-switch strings

2.4.1 (2020-11-23)

  • fixed "strict_min_version" to TB 78.4.0 due to usage of new APIs

2.4.0 (2020-11-19)

  • major improvements regarding signature insertion/deletion in the composer-window
    (instead of overwriting the whole body using composeDetails, a "compose script" is being used now)
  • image placeholders ({{image-tag}}) in fortune-cookies will now get resolved
  • bugfix: copy/paste functionality for text fields no longer broken in the options-dialog
  • various other minor improvements/optimizations

2.3.1 (2020-11-13)

  • new option: include 'Cc' and 'Bcc' for auto switch
  • bugfix: "Default action" properly initialized in preferences dialog
  • various minor improvements/optimizations

2.3.0 (2020-11-03)

  • new: support for mail-identities (assign signatures to identities; auto-switch)
  • updated dependencies/libs
  • various minor improvements/optimizations

2.2.2 (2020-11-01)

  • fixed/improved internal handling for images/fortune-cookies

2.2.1 (2020-10-24)

  • fixed signature-separator for HTML mode

2.2.0 (2020-10-23)

  • new: preferences for 'Forwardings'
  • bugfix: doubling of line-feeds in plaintext composer on Windows
  • updated library dependencies

2.1.0 (2020-10-12)

  • (re-)implemented support for 'Fortune Cookies'
  • new option: automatically prepend separator for HTML signatures
  • several minor bug fixes / improvements

2.0.0 (2020-10-03)

  • initial release: new/rewritten version of this add-on as MailExtension


Q: I want to place my signature above the quote when replying to an email. Can this be done using SignatureSwitch?

A: With version 2.5.0 of SignatureSwitch it is now possible to enable this option.
However, it is still not recommended and there are several reasons for that.
Let me explain a few of them:

  • A signature should always be located at the very bottom of a document/email. That's why it's called a signature; not an "include".
  • If you answer to someone's email, then you can assume that he already does have your contact information. So why pollute/clutter the reply with redundant/useless information over and over again? In addition to that, people tend to keep a full quote of the sender's original text (below their answer) when composing a reply. Additionally, including your signature before that quoted part would result not only in wasted space and unnecessary data to transmit, but make things difficult to read later on. Imagine a mail bounces back and forth several times; and each participant puts his signature in between his reply and the quote. Everyone involved would have to scroll over multiple signature segments just to get a glimpse of the whole discussion. Which is more than annoying imho.
  • A signature usually has a signature separator (-- \n). Or at least it should have one. This separator is often used by email-clients to automatically cut off everything below that signature separator line on replies. Mainly due to the reason explained above. Otherwise, you'd have a mail-body full of signatures after a few reply-bounces. Nobody wants or needs that.
    Ergo: If you would place a signature (plus the preceding separator) before the quoted text, then the quoted text would be cut off entirely upon a reply.
  • Having a fixed/defined location of the signature (combined with the signature separator) makes it more easy, efficient, and bullet-proof to detect it.
    And this allows features like switching the signature on/off, cycling through your set of available signatures, and also simply replacing it with another one possible.

Q: There is a built-in Thunderbird-setting to define the location of a signature:

When quoting, [start my reply above the quote] and place my signature [below my reply (above the quote)].

Can Signature Switch make use of this setting?

A: No. Due to the reasons explained in the first FAQ entry, Signature Switch won't utilize this setting in any way. Besides, Signature Switch is a pure MailExtension now. Meaning that (as of now) there's no way to read Thunderbird's (user-)settings ("prefs.js") from within a MailExtension.

Q: Where is the old Signature Switch add-on? Everything's different now! I liked the old one better. You ruined everything! Can I get the old version back?

A: Simple answer: NO!
As you may have heard, Mozilla dropped support for the old XPCOM/XUL add-on architecture with Thunderbird 78
Therefore I was "forced" to completely rewrite Signature Switch using the new MailExtensions-API. Which - if I might add - was a major effort and still involves a lot of ongoing work. Unfortunately the new APIs don't yet offer all the functionality necessary to cover the feature-set of the "Legacy Signature Switch". However, things will surely improve in the future. Also, in the long run, using the more stable MailExtension-APIs will hopefully ensure that add-ons won't be broken when significant changes are being made on Thunderbird's codebase in upcoming releases.

Q: Where is the context menu for Signature Switch? I can't find it if I right-click in the composer window.

A: Since Thunderbird ~78.7 this should work again.

Q: I'm using a Mac; the keyboard shortcuts don't work! What now?

A: Go to the add-on's settings page. Select the "Miscellaneous" tab. Under "Keyboard Shortcuts" change all instances of Ctrl to MacCtrl.

Q: Is there a way to use external signature files (stored on my machine), instead of managing them directly in the add-on? (Just like the "old" SignatureSwitch used to work.)

A: Nope. The "new" SignatureSwitch is a pure MailExtension; meaning it has limited access to resources from the "outside" (meaning the user's filesystem).
However, you can use the import/export feature to have the same setup on different machines.
Alternative: Since version 2.7.0 it is possible to use "Native Messaging" for loading external content.

Q: After updating to Thunderbird 78 (and updating Signature Switch) all of my signatures are gone! Can I bring them back and reuse them?

A: Like explained in previous answers: Unfortunately, no. At least not in an automated way. However, you can still copy/paste them into the new preferences-UI.

Q: When using a HTML signature I get a warning message; and my signature-image gets blocked from Thunderbird. What am I doing wrong?

A: If you get this warning ...

Thunderbird has blocked a file from loading into this message.

... then you're probably using a file-reference within your signature, like this:

<img src="file:///home/achim/images/logo.png">

Instead, you should use the internal image-storage of the add-on and reference it as described in the UI:

<img src="{{logo}}">

Q: I've created a HTML signature by using an external editor/tool. After inserting/pasting the HTML content into Signature Switch, the displayed result is not what I expect. What's wrong?

A: Your HTML editor probably generates a full-blown HTML document; including html-, head-, and body-tag.

<!DOCTYPE html>
      <title>My Signature</title>
      <span style="font-family:someFancyFont">Moe Zilla</span><br>
      address: Main Street<br>
      phone: 666<br>

Something like this is NOT correct!
Since your HTML email already is a document, you'd put a HTML document within a HTML document; which makes no sense and leads to unwanted side effects.
Also be aware that any resource-references (fonts, etc.) you put in here would have to be present/accessible on the receiver's end in order to be displayed correctly.

So... you should keep it simple and really only use the HTML-tags that are needed, e.g.:

<b>Moe Zilla</b><br>
address: Main Street<br>
phone: 666

Q: Why does SignatureSwitch require/request permission to "Read and modify your address books and contacts."???

A: The add-on does NOT modify your address books or even use that data in any harmful way. SignatureSwitch has a feature which allows automatic switching of signatures based on the email's recipients. Many people use custom "mailing lists" (which basically are address books) as recipients. For that part it is necessary to access address book data and obtain certain information (e.g. display-name of mailing list, etc.).
For more detailed/technical information you can take a look at the add-on source code.

Q: SignatureSwitch requests permission to "Exchange messages with programs other than Thunderbird.". What is this used for?

A: Signature Switch can add dynamic content to your signatures through communication to a native application on your computer (see "Native Messaging").
The add-on does NOT talk to any other external programs except the one you manually configure (see "Native Messaging for Signature Switch").