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

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

[elpa] scratch/org-contacts-rebased 531d67a 014/118: Fix Emacs 24 compat


From: Stefan Monnier
Subject: [elpa] scratch/org-contacts-rebased 531d67a 014/118: Fix Emacs 24 compatibility issue with Emacs 24
Date: Fri, 12 Nov 2021 15:36:55 -0500 (EST)

branch: scratch/org-contacts-rebased
commit 531d67a7150b3fbe4f97d736e65ab476706b1a31
Author: Tassilo Horn <tassilo@member.fsf.org>
Commit: Carsten Dominik <carsten.dominik@gmail.com>

    Fix Emacs 24 compatibility issue with Emacs 24
    
    * contrib/lisp/org-contacts.el (completion-table-case-fold): Make
    completion compatible with Emacs 24Fix org-contacts completion at point 
(was: org-contacts completion stopped working)
    
    julien Barnier <julien@nozav.org> writes:
    
    Hi Julien,
    
    >> I use a very recent emacs 24 bzr checkout and org master from git.
    >> Not sure who's the culprit.
    >
    > Same problem here. After a quick look it seems that there has been a
    > recent change in the arguments taken by the completion-table-case-fold
    > function in minibuffer.el :
    >
    > http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/105991
    
    Thanks for the pointer!
    
    > But I don't think I could be able to find a fix by myself.
    
    But I was able, so good teamwork, mate. :-)
    
    --8<---------------cut here---------------start------------->8---
    >From d89ca3ce39cd7436e5205744adcf468d9619180f Mon Sep 17 00:00:00 2001
    From: Tassilo Horn <tassilo@member.fsf.org>
    Date: Thu, 13 Oct 2011 17:02:07 +0200
    Subject: [PATCH 2/2] Fix org-contacts completion at point.
---
 org-contacts.el | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/org-contacts.el b/org-contacts.el
index f4d9cd7..4b21d26 100644
--- a/org-contacts.el
+++ b/org-contacts.el
@@ -169,9 +169,10 @@ If both match values are nil, return all contacts."
 
 (when (not (fboundp 'completion-table-case-fold))
   ;; That function is new in Emacs 24...
-  (defun completion-table-case-fold (table string pred action)
-    (let ((completion-ignore-case t))
-      (complete-with-action action table string pred))))
+  (defun completion-table-case-fold (table &optional dont-fold)
+    (lambda (string pred action)
+      (let ((completion-ignore-case (not dont-fold)))
+       (complete-with-action action table string pred)))))
 
 (defun org-contacts-complete-name (&optional start)
   "Complete text at START with a user name and email."
@@ -226,9 +227,7 @@ If both match values are nil, return all contacts."
                                            ;; If the user has an email 
address, append USER <EMAIL>.
                                            if email collect 
(org-contacts-format-email contact-name email))
                                      ", ")))))
-    (list start end (if org-contacts-completion-ignore-case
-                       (apply-partially #'completion-table-case-fold 
completion-list)
-                     completion-list))))
+    (list start end (completion-table-case-fold completion-list (not 
org-contacts-completion-ignore-case)))))
 
 (defun org-contacts-message-complete-function ()
   "Function used in `completion-at-point-functions' in `message-mode'."



reply via email to

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