On 10/20/2014, at 14:35 PM, Benny Kjær Nielsen wrote:

On 20 Oct 2014, at 21:58, Vincent Danen wrote:

Is there a way to specify the defaults for subject-based searching? For instance, when you click on the Subject line in an email, MailMate does a search on that subject by default which is a "related" search (I'm guessing by message-id). The default search is "Subject -> Body" "is" "criteria"... is there a way to change that "is" by default to "contains"?

Not easily. It would require customizing the set of outline columns available. This is the default file:

        
MailMate.app/Contents/Resources/MmMessagesOutlineView/outlineColumns.plist

You would need a custom file here (create the path):

~/Library/Application Support/MailMate/Resources/MmMessagesOutlineView/outlineColumns.plist

That file should just contain the `subject` column definition of the original file. That would allow you to customize it. This is the default query:

queryFormatting = { formatString = "subject.body = '${subject.body}'"; separator = " or "; escapeSingleQuotes = 1; };

This would change it to “contains”:

queryFormatting = { formatString = "subject.body ~ '${subject.body}'"; separator = " or "; escapeSingleQuotes = 1; };

I said it wasn't easy ;-)

The reason I ask is we get mails via a ticketing system for work, and it includes an ID number and it never matches the default search so I'm constantly clicking "Expand" and then making that change.

Hmm, that sounds like you need to exclude the ID number from the comparison. That'll require a custom specifier. Here is a starting point: https://www.mail-archive.com/mailmate%40lists.freron.com/msg02243.html

All of this is very low level and I cannot promise that details are not going to change in the future.

Ok, thank first off for the quick response! I've tried this and it doesn't seem to work, but maybe I'm missing something. I copied the outlineColumns.plist file to the noted directory above with the following contents:

//{
//      columns =
//      {
                subject =
                {
                        title = "Subject"; // how can the title be easily 
localized?
                        sortKey = "subject.blob,subject.body,subject.prefix";
                        formatting =
                        {
formatString = "${subject.prefix:+${subject.prefix} }${subject.blob:+[${subject.blob}] }${subject.body}";
                                placeholderString = "(No Subject)";
                                doubleClick =
                                {
// FIXME: In this case, the style of inserted words could be bold or italic (well, something that looks good without the single quotes) titleFormatting = { prefixString = "Subject is "; formatString = "“${subject.body}”"; separator = " or "; }; queryFormatting = { formatString = "subject.body ~ '${subject.body}'"; separator = " or "; escapeSingleQuotes = 1; };
                                };
                        };
                        minimumWidth = 10;

                        relatedSearches =
                        (
                                {
titleFormatting = { formatString = "Related to “${subject.body}”"; separator = " or "; }; queryFormatting = { formatString = "subject.body ~ '${subject.body}'"; separator = " or "; escapeSingleQuotes = 1; };
                                        // keyEquivalent = "s";
                                },
                                {
titleFormatting = { formatString = "Related to [${subject.blob}]"; separator = " or "; }; queryFormatting = { formatString = "subject.blob = '${subject.blob}'"; separator = " or "; escapeSingleQuotes = 1; };
                                }
                        );
                };
//    };
//}


As you can see, I tried it a few ways (not sure if that initial "columns = bit" is required but I suspect it is. Whenever I click on the subject line in the header view of a message, it still comes up with "is" not "contains" when I hit expand. I can tell by the wording that shows up when it is doing "Related to" or "Subject is" (so even when I double-click a message it still is doing "is").

Of course I can't tell if the file is actually being loaded or not. Is there a way to tell?

Thanks so much, Benny!

--
Vincent Danen @ http://linsec.ca/
_______________________________________________
mailmate mailing list
mailmate@lists.freron.com
http://lists.freron.com/listinfo/mailmate

Reply via email to