unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Alexander Adolf <alexander.adolf@condition-alpha.com>
To: Utkarsh Singh <utkarsh190601@gmail.com>
Cc: Notmuch mailing list <notmuch@notmuchmail.org>
Subject: Re: [PATCH] emacs: Add more front ends for address completion
Date: Tue, 15 Mar 2022 13:37:28 +0100	[thread overview]
Message-ID: <389f3bb5fbbf532ce8e6ba0dc25c8e97@condition-alpha.com> (raw)
In-Reply-To: <87ee36v7ax.fsf@gmail.com>

Utkarsh Singh <utkarsh190601@gmail.com> writes:

> [...]     
>>>      `post-completion': Called after a completion candidate has been inserted
>>>      into the buffer.  The second argument is the candidate.  Can be used to
>>>      modify it, e.g. to expand a snippet.
>>> [...]
>>
>> Hm, that sounds like it would functionally be similar to specifying an
>> :exit-function property in completion-extra-properties?
>
> Great!  We can definitely work with this.
> [...]

I'm glad to learn we might be heading in the same direction. AFAIR you
spoke about removing company from notmuch-address.el altogether? That
would be by impetus, too.

EUDC [1], which is part of core Emacs, has just been given the ability
to combine search results from several sources [2].

[1] https://www.gnu.org/software/emacs/manual/html_mono/eudc.html
[2]  https://github.com/emacs-mirror/emacs/commit/0470a4a939772c4bd25123b15f5eadab41f8bee5

I have written experimental code to make EUDC contribute to
completion-at-point, and to make notmuch-address contribute to EUDC
search results. This works in principle, and I get combined search
results from notmuch-address, and the macOS Contacts app in a corfu
pop-over UI in header fields of message-mode. It seems you were looking
for something similar?

With this kind of setup, the overall architecture for email address
completion could be like this:

notmuch-address  \          
           BBDB  |          
           LDAP   > --> EUDC --+
 macOS Contacts  |             |
            ...  /             V
                               |
      +----------<-------------+
      |   
      V                               /  completing-read
      |                              |   corfu          
      + --> completion-at-point --> <    company        
                                     |   ...            
                                      \

This would remove any user interface related code from
notmuch-address.el, an instead convert it into a back-end for EUDC.

Looking forward to your thoughts,

  --alexander

  reply	other threads:[~2022-03-15 12:37 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-08 14:38 [PATCH] emacs: Add more front ends for address completion Utkarsh Singh
2022-02-09 21:59 ` Tomi Ollila
2022-02-12 16:09   ` Alexander Adolf
2022-02-21 22:20     ` emacs: notmuch-address-command 'as-is throws error (was: [PATCH] emacs: Add more front ends for address completion) Alexander Adolf
2022-02-22 22:04       ` Tomi Ollila
2022-02-28 21:19         ` Alexander Adolf
2022-03-01 17:51           ` Alexander Adolf
2022-02-28  9:01     ` [PATCH] emacs: Add more front ends for address completion Utkarsh Singh
2022-03-06  7:28       ` Utkarsh Singh
2022-03-07 22:14         ` Alexander Adolf
     [not found]           ` <87k0d4n8tr.fsf@gmail.com>
     [not found]             ` <c6c39f1b36844a9160e81f2f23cb8458@condition-alpha.com>
2022-03-09  1:06               ` Utkarsh Singh
2022-03-11 17:50                 ` Alexander Adolf
2022-03-13  3:51                   ` Utkarsh Singh
2022-03-15 12:37                     ` Alexander Adolf [this message]
2022-03-17  4:56                       ` Utkarsh Singh
2022-03-20 10:49                         ` David Bremner
2022-04-06 12:19                           ` Utkarsh Singh
2022-04-06 18:23                             ` David Bremner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://notmuchmail.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=389f3bb5fbbf532ce8e6ba0dc25c8e97@condition-alpha.com \
    --to=alexander.adolf@condition-alpha.com \
    --cc=notmuch@notmuchmail.org \
    --cc=utkarsh190601@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).