There doesn't seem to be a way to do this currently.
The best places to look for this feature to be implemented is one of the following:
- An official Gmail setting accessible via the settings page.
- A Gmail labs feature.
- A 3rd party Gmail gadget which can be added via the "Add any gadget by URL" Gmail lab.
- A Greasemonkey scirpt.
The first two would require Google to implement the feature, which you could suggest here for it to be implemented in the official version, or you could suggest it here for it to be implemented as a lab. The last two could be implemented by anyone with the knowhow.
I couldn't find anything that is already implemented by doing a simple Google search.
I can think of two options available, neither of which are elegant:
- Add a
-to:my-team@example.com
to all the other filters that may archive the message.
- Use a variation of the above but instead of hard-coding the address, add a descriptive label.
There's no option to send an email to the inbox via a filter. Your only option is to prevent the message from being archived in the first place.
Solution #1: This one's pretty simple. So, for example, say you have the filter:
- when mail matches
to:other-team@example.com
, archive the message
You need to change it to:
- when mail matches
to:other-team@example.com -to:my-team@example.com
, archive the message
To use this negation, it may be easier to type in the "has the words" box.
Using this solution doesn't require you to maintain the filter order. The only downside is that if you have multiple email addresses that you need to keep (e.g. my-team2@example.com, my-team3@example.com, etc.), using this method you would need to add all of those to each filter. This can become hard to maintain. That's where solution #2 comes in...
Solution #2:
This one is more complicated and relies on the way Gmail processes filter rules. Basically it processes them from the top down. This means that if you modify one (which causes it to go to the bottom), you will need to remember to reorder your filters, so that it works correctly again.
You create the following filters, in this order:
- when mail matches
to:my-team@example.com
, apply the label dont-archive
.
- when mail matches
to:my-team2@example.com
, apply the label dont-archive
.
- when mail matches
to:my-team3@example.com
, apply the label dont-archive
.
- when mail matches
to:other-team@example.com -label:dont-archive
, archive the message
When creating the last filter, it will warn you about using the label. This message can be safely ignored, since you ordered the filters correctly.
Tip for solution #1:
Of course, if the email addresses are very similar, you might be able to use Gmail's limited stemming in order to use solution #1 with multiple addresses (e.g. instead of using -to:my-team@example.com
, use -to:(my @example.com)
which will also match my-team2@example.com
in this case.
Best Answer
Use another special character like underscore '_'.
Exclamation point can be interpreted as code and may behave differently depending on the context the labels are displayed.
Underscore seems to work fine in this case, '_Work' appears first in the list of folders (left hand side column) and the first in individual email label(horizontal list at the top).