emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] scratch/org-contacts-rebased 7f9ad6a 059/118: contrib/lisp/org-co


From: Stefan Monnier
Subject: [elpa] scratch/org-contacts-rebased 7f9ad6a 059/118: contrib/lisp/org-contacts.el: Permit to unload properly `org-contacts'
Date: Fri, 12 Nov 2021 15:37:04 -0500 (EST)

branch: scratch/org-contacts-rebased
commit 7f9ad6af769fbac92dfc347f7addeacb4e8c29ce
Author: Grégoire Jadi <gregoire.jadi@gmail.com>
Commit: Grégoire Jadi <gregoire.jadi@gmail.com>

    contrib/lisp/org-contacts.el: Permit to unload properly `org-contacts'
    
    * contrib/lisp/org-contacts.el (org-contacts-setup-completion-at-point):
    Setup `completion-at-point-functions' in a dedicated function so it's
    easier to add and to remove it from `message-mode-hook'.
    (org-contacts-unload-hook): This function removes all hooks added while
    loading `org-contacts' in order to respect Emacs coding conventions.
---
 org-contacts.el | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/org-contacts.el b/org-contacts.el
index c84f1f2..d81d43b 100644
--- a/org-contacts.el
+++ b/org-contacts.el
@@ -702,12 +702,18 @@ This adds `org-contacts-gnus-check-mail-address' and
   (add-hook 'gnus-article-prepare-hook 'org-contacts-gnus-check-mail-address)
   (add-hook 'gnus-article-prepare-hook 'org-contacts-gnus-store-last-mail))
 
+(defun org-contacts-setup-completion-at-point ()
+  "Add `org-contacts-message-complete-function' as a new function
+to complete the thing at point."
+  (add-to-list 'completion-at-point-functions
+              'org-contacts-message-complete-function))
+
+(defun org-contacts-unload-hook ()
+  (remove-hook 'message-mode-hook 'org-contacts-setup-completion-at-point))
+
 (when (and org-contacts-enable-completion
           (boundp 'completion-at-point-functions))
-  (add-hook 'message-mode-hook
-           (lambda ()
-             (add-to-list 'completion-at-point-functions
-                          'org-contacts-message-complete-function))))
+  (add-hook 'message-mode-hook 'org-contacts-setup-completion-at-point))
 
 (defun org-contacts-wl-get-from-header-content ()
   "Retrieve the content of the `From' header of an email.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]