#333 new
Matthew Cave

Colored Flags

Reported by Matthew Cave | January 26th, 2013 @ 09:11 PM

I see that you support colored flags that have been already created by Apple Mail, but would it be possible to support creating them from inside MailMate?

The rest of my company uses Apple Mail, and the flag colors have meaning. Within my own MailMate environment, I could use tags to do the same thing, but my co-workers could not see it.

A simple color/name arrangement similar to Apple Mail's would be ideal.


Comments and changes to this ticket

  • benny

    benny January 26th, 2013 @ 09:24 PM

    • State changed from “new” to “accepted”

    It is possible to make custom key bindings to toggle colored flags. By default you can enter F followed by a number from 1 to 6 (and 0 to clear it).

    I plan to extend the tags system to be able to change flag colors as well (flags are not controlled by simple IMAP keywords, but instead by 3 IMAP keyword bits). That would allow you to bind named tags to the flags. Might even be better than a GUI for setting just the color of the flag.

  • Matthew Cave

    Matthew Cave January 26th, 2013 @ 09:26 PM

    Thanks very much for the tip!

    What you describe would be just terrific.

  • Eric A. Meyer

    Eric A. Meyer January 29th, 2013 @ 09:17 PM

    Since you mentioned tags, I’ll chime in to say that a “Color” column in the Tags preference pane would be really awesome. That way users could assign their own colors to tags, in order to match in-house schemes.

    Of course, then we'd want to see message lines in mailboxes highlighted using one of the tag colors (as in #204), which means you have to pick a single color if a message has multiple tags, which probably means allowing tags to be drag-reordered in the Tags pane in order to define a priority hierarchy. Unless you decided to go the rainbow-gradient route. Hmmm…

    (Of course, Smart Mailboxes based on tags are a good solution, too.)

  • benny

    benny January 29th, 2013 @ 09:28 PM

    @Eric: I've prepared for it since tags can already be drag-reordered. Personally, I would prefer an image-icon column such that the highest-priority icon is shown in the messages outline, all of the icons are shown in the short format headers view, and icons with tag names are shown in the long format headers view. That would probably require a default set of icons.

  • Eric A. Meyer

    Eric A. Meyer January 29th, 2013 @ 09:45 PM

    Weird; I’d tried drag-reordering tags before and nothing happened, but now it’s fine. Must’ve grabbed exactly the wrong pixel or something in my previous attempts.

    You could use color-filled squares to stand in for icons to see how well the combined UI works for users. (Easy for me to say: colored squares are all I would ever need.) I could see icons working if they’re clear enough, though for people who set up lots of custom tags they’re likely to outstrip your icon set. Maybe use Unicode code points instead of graphical icons? That way you get ALL the symbols, at least in theory. I could easily see myself setting up a tag called “Bureaucracy” and assigning it U+1F4A9 in rgb(160,82,45)

  • benny

    benny January 29th, 2013 @ 09:58 PM

    @Eric: Good idea with the colored squares. I've also considered the use of Unicode emoticons (I already do it for signed/encrypted messages), but I seem to recall there was some problem with that idea — I have forgotten what it was :-)

  • Mike K
  • benny

    benny July 1st, 2015 @ 08:29 PM

    @Mike: I'll keep your comments in mind. With respect to setting flags programmatically then yes, that is currently not very easy. It is possible though by setting/clearing various $MailFlagBit values similar to how the key bindings are defined. Obviously not ideal, but if it's a useful workaround then here they are:

        "F" = {
            "0" = ( "removeTag:", "\\Flagged", "removeTag:", "$MailFlagBit0", "removeTag:", "$MailFlagBit1", "removeTag:", "$MailFlagBit2" );
            "1" = (    "setTag:", "\\Flagged", "removeTag:", "$MailFlagBit0", "removeTag:", "$MailFlagBit1", "removeTag:", "$MailFlagBit2" );
            "2" = (    "setTag:", "\\Flagged",    "setTag:", "$MailFlagBit0", "removeTag:", "$MailFlagBit1", "removeTag:", "$MailFlagBit2" );
            "3" = (    "setTag:", "\\Flagged", "removeTag:", "$MailFlagBit0",    "setTag:", "$MailFlagBit1", "removeTag:", "$MailFlagBit2" );
            "4" = (    "setTag:", "\\Flagged",    "setTag:", "$MailFlagBit0",    "setTag:", "$MailFlagBit1", "removeTag:", "$MailFlagBit2" );
            "5" = (    "setTag:", "\\Flagged", "removeTag:", "$MailFlagBit0", "removeTag:", "$MailFlagBit1",    "setTag:", "$MailFlagBit2" );
            "6" = (    "setTag:", "\\Flagged",    "setTag:", "$MailFlagBit0", "removeTag:", "$MailFlagBit1",    "setTag:", "$MailFlagBit2" );
            "7" = (    "setTag:", "\\Flagged", "removeTag:", "$MailFlagBit0",    "setTag:", "$MailFlagBit1",    "setTag:", "$MailFlagBit2" );
  • Alain ISRAEL

    Alain ISRAEL May 13th, 2016 @ 09:50 AM

    I use extensively the colored flags (using the 6 possibilities). However I am missing 2 features : 1) the possibility to rank the messages according to color 2) more importantly, when I change computer, the colors are lost (I am left with the default color). Can this be modified?
    In the same topic, the tags also seem to disappear completely when I change computer : is this normal?

    This being said, I moved from Thunderbird to Mailmate a few months ago (and tested a few replacements), and Mailmate is definitely a great mail client, probably the best around for power users.

  • benny

    benny May 13th, 2016 @ 10:18 AM


    1. I'll keep that in mind.
    2. This is not supposed to happen unless the IMAP server has very weak support for IMAP keywords. To my knowledge, the only major IMAP provider with such a limitation is Microsoft (Exchange).

    I can help you debug issues number 2 if it's not Exchange.

  • Alain ISRAEL

    Alain ISRAEL May 13th, 2016 @ 11:20 AM

    thanks for your quick response. Unfortunately it seems to be Exchange. Nobody'sperfect.
    Did your answer relate to Tags, or Flag colors? Is it the same problem for both with Exchange?

  • benny

    benny May 13th, 2016 @ 11:55 AM

    @Alain: I've fixed item 1 for a future update. The flags column now sorts colors too. My answer applies to both tags and flags since both are implemented using IMAP keywords -- which are not well supported by Exchange (it supports \Flagged, but that does not allow colors).

  • Alain ISRAEL

    Alain ISRAEL May 24th, 2016 @ 04:51 PM

    I finally found a substitute for ranking by flags by using tags and emojis, which allow ranking. I will use ranking by flag when available.
    Getting back to my problem of portability of tags and flags from one computer to the other, I noticed that when I flag an email on my iphone (mailapp is outlook, IMAP provider is Exchange), the mail is indeed flggged on both of my computers. Suggesting that Exchange may not be the problem. You proposed to help me debug this issue. How complicated is that? I am not very good at using the Terminal.

    I have a second issue, that does not belong to this discussion topic, and is probably trivial, sorry for this : the box with the mail addresses does not show all the addresses (jpg attached, only 4.5 lines are visible) despite the fact that I typed : "defaults write com.freron.MailMate MmHeadersViewMaximum -integer 50". What do I do wrong?

    Thank you in advance.


  • benny

    benny May 27th, 2016 @ 02:20 PM

    @Alain: Exchange cannot handle colored flags, but it should be able to handle a single flag (leaving the color to the email client). In other words, if you flag an email in MailMate then it should also appear flagged on your other devices. This doesn't work?

    Headers: That setting is intended for the message view and not the composer. You can use the arrow keys to navigate, but that's the best I can offer you for now. (It's not so easily fixed/improved.)

  • Alain ISRAEL

    Alain ISRAEL May 27th, 2016 @ 02:35 PM

    Sorry for the interruption :

    Flags behave as you indicate (with a single color), but unfortunately tags are not kept from one computer to the other (of course I don't mention the iPhone where they do not exist) : is this due to Exchange?
    headers : OK I see. Arrow keys are an acceptable substitute, which means you can't see the entire addresses window. I was in fact surprized that using the mouse wheel you can't scroll through the window, therefore I did not look further, except for trying to increase the size of the window.

  • benny

    benny May 27th, 2016 @ 08:38 PM

    Yes, tags are implemented using IMAP keywords for which Exchange only supports a fixed set. Therefore tags don't synchronize. (Exchange is very buggy, but in this case Exchange behavior does not violate the IMAP “standard”. It's just rare that IMAP servers do not support IMAP keywords.)

  • Alain ISRAEL

    Alain ISRAEL May 29th, 2016 @ 01:01 PM

    You write Exchange only supports a fixed set of tags. Are these :
    \Seen \Answered \Flagged \Deleted \Draft \Seen

    Can these actually be used as synchronized tags? This is better than nothing.

  • Alan Dobkin

    Alan Dobkin November 9th, 2023 @ 04:39 PM

    • State changed from “accepted” to “new”
    • Tag set to color

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile »

Mac OS X email client.

Shared Ticket Bins