mirror of
https://git.notmuchmail.org/git/notmuch
synced 2025-03-14 03:25:15 +01:00
index: Store "Full Name <user@example.com>" addressses in the database
We put these is as a separate term so that they can be extracted. We don't actually need this for searching, since typing an email address in as a search term will already trigger a phrase search that does exactly what's wanted.
This commit is contained in:
parent
f9bbd7baa0
commit
3a91df21ca
2 changed files with 17 additions and 4 deletions
|
@ -106,6 +106,7 @@ prefix_t BOOLEAN_PREFIX_INTERNAL[] = {
|
|||
{ "type", "T" },
|
||||
{ "ref", "XREFERENCE" },
|
||||
{ "timestamp", "XTIMESTAMP" },
|
||||
{ "contact", "XCONTACT" }
|
||||
};
|
||||
|
||||
prefix_t BOOLEAN_PREFIX_EXTERNAL[] = {
|
||||
|
|
20
index.cc
20
index.cc
|
@ -30,13 +30,23 @@ _index_address_mailbox (notmuch_message_t *message,
|
|||
InternetAddress *address)
|
||||
{
|
||||
InternetAddressMailbox *mailbox = INTERNET_ADDRESS_MAILBOX (address);
|
||||
const char *name, *addr = internet_address_mailbox_get_addr (mailbox);
|
||||
const char *name, *addr;
|
||||
char *contact;
|
||||
int own_name = 0;
|
||||
|
||||
if (addr)
|
||||
_notmuch_message_gen_terms (message, prefix_name, addr);
|
||||
|
||||
name = internet_address_get_name (address);
|
||||
addr = internet_address_mailbox_get_addr (mailbox);
|
||||
|
||||
if (addr) {
|
||||
if (name) {
|
||||
contact = talloc_asprintf (message, "\"%s\" <%s>",
|
||||
name, addr);
|
||||
_notmuch_message_add_term (message, "contact", contact);
|
||||
talloc_free (contact);
|
||||
} else {
|
||||
_notmuch_message_add_term (message, "contact", addr);
|
||||
}
|
||||
}
|
||||
|
||||
/* In the absence of a name, we'll strip the part before the @
|
||||
* from the address. */
|
||||
|
@ -52,6 +62,8 @@ _index_address_mailbox (notmuch_message_t *message,
|
|||
|
||||
if (name)
|
||||
_notmuch_message_gen_terms (message, prefix_name, name);
|
||||
if (addr)
|
||||
_notmuch_message_gen_terms (message, prefix_name, addr);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Add table
Reference in a new issue