[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ELPA] New package: company-eudc
From: |
Alexander Adolf |
Subject: |
[ELPA] New package: company-eudc |
Date: |
Fri, 30 Apr 2021 16:19:20 +0200 |
Dear Emacs Developers,
I would kindly like to propose my new package company-eudc.el for
inclusion into ELPA. Here is an excerpt from the package's home page at
https://github.com/condition-alpha/company-eudc :
----------------------------------------------------------------------
What This Package Does
company-mode in conjunction with yasnippet makes composing emails a
breeze. Where things fall short, is the completion of email addresses,
however. Some Emacs MUA packages feed the addresses of emails in your
archive into the completion system. But what about those in your
contacts app, or those on the LDAP directory of your organisation?
The Emacs Unified Directory Client (EUDC), which is part of core Emacs,
can make information from your contacts app, or from LDAP servers
available. But there is no way of getting these to be presented as
completion candidates in company-mode.
company-eudc closes this gap by implementing a comapny back-end, that
retrieves names and email addresses from EUDC.
Limited Completion Scope
company-eudc will only provide completion candidates if, and only if,
all of the following apply:
1. the major mode of the current buffer is message-mode, or a derived
mode (e.g. notmuch-message-mode);
2. the cursor is on the line of a message header field that requires one
or more email addresses (From, To, Cc, Bcc, or Reply-to).
This prevents most likely useless completion proposals with email
addresses when typing names in the body of an email message ("Dear John,
..."), or in non email related modes.
Query Semantics
To assemble the query string, company-eudc collects all text preceding
the cursor, which is not part of the header field label, or another
email address. This means that you can e.g. type "John Smith", invoke
company-eudc-expand-inline, and "John Smith" will be passed to EUDC as
the query string. How EUDC handles multi-word queries is controlled by
the EUDC variable eudc-inline-query-format (which see).
----------------------------------------------------------------------
I have created an account on savannah.gnu.org yesterday (and am of
course not member of any projects there yet). I am subscribed to both,
emacs-devel@gnu.org, and bug-gnu-emacs@gnu.org. I have also signed a
copyright assignment form for everything Emacs (rt.gnu.org #1503473).
Many thanks and looking forward to your thoughts,
--alexander
- [ELPA] New package: company-eudc,
Alexander Adolf <=