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

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

[elpa] scratch/org-contacts-rebased 7d47f48 062/118: contrib/lisp/org-co


From: Stefan Monnier
Subject: [elpa] scratch/org-contacts-rebased 7d47f48 062/118: contrib/lisp/org-contacts.el: Various formatting improvements and bug fixes
Date: Fri, 12 Nov 2021 15:37:04 -0500 (EST)

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

    contrib/lisp/org-contacts.el: Various formatting improvements and bug fixes
    
    * contrib/lisp/org-contacts.el (org-contacts-ignore-property): Improve
    formatting and spelling.
    (org-contacts-complete-name): Improve formatting.
    (org-contacts-vcard-format): Improve formatting and silent byte compiler.
    (org-contacts-split-property): Fix a bug where `omit-nulls' were not
    forced to `t' when `separators' was nil.
---
 org-contacts.el | 37 ++++++++++++++++++++-----------------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/org-contacts.el b/org-contacts.el
index 2aee0f6..ffd17a1 100644
--- a/org-contacts.el
+++ b/org-contacts.el
@@ -87,7 +87,8 @@ When set to nil, all your Org files will be used."
   :group 'org-contacts)
 
 (defcustom org-contacts-ignore-property "IGNORE"
-  "Name of the property,  which values will be ignored when complete or export 
to vcard."
+  "Name of the property, which values will be ignored when
+completing or exporting to vcard."
   :type 'string
   :group 'org-contacts)
 
@@ -502,14 +503,15 @@ A group FOO is composed of contacts with the tag FOO."
 
                ;; Build the list of the email addresses which has
                ;; been expired
-               for ignore-list = (org-contacts-split-property (or
-                                                               (cdr 
(assoc-string org-contacts-ignore-property
-                                                                               
   (caddr contact))) ""))
+               for ignore-list = (org-contacts-split-property
+                                  (or (cdr (assoc-string 
org-contacts-ignore-property
+                                                         (caddr contact))) ""))
                ;; Build the list of the user email addresses.
-               for email-list = (org-contacts-remove-ignored-property-values 
ignore-list
-                                                                             
(org-contacts-split-property (or
-                                                                               
                            (cdr (assoc-string org-contacts-email-property
-                                                                               
                                               (caddr contact))) "")))
+               for email-list = (org-contacts-remove-ignored-property-values
+                                 ignore-list
+                                 (org-contacts-split-property
+                                  (or (cdr (assoc-string 
org-contacts-email-property
+                                                         (caddr contact))) 
"")))
                ;; If the user has email addresses…
                if email-list
                ;; … append a list of USER <EMAIL>.
@@ -890,14 +892,15 @@ to do our best."
         (name (org-contacts-vcard-escape (car contact)))
         (n (org-contacts-vcard-encode-name name))
         (email (cdr (assoc-string org-contacts-email-property properties)))
-        (tel  (cdr (assoc-string org-contacts-tel-property properties)))
-        (ignore  (cdr (assoc-string org-contacts-ignore-property properties)))
+        (tel (cdr (assoc-string org-contacts-tel-property properties)))
+        (ignore-list (cdr (assoc-string org-contacts-ignore-property 
properties)))
+        (ignore-list (when ignore-list
+                       (org-contacts-split-property ignore-list)))
         (note (cdr (assoc-string org-contacts-note-property properties)))
         (bday (org-contacts-vcard-escape (cdr (assoc-string 
org-contacts-birthday-property properties))))
         (addr (cdr (assoc-string org-contacts-address-property properties)))
         (nick (org-contacts-vcard-escape (cdr (assoc-string 
org-contacts-nickname-property properties))))
         (head (format "BEGIN:VCARD\nVERSION:3.0\nN:%s\nFN:%s\n" n name))
-        (ignore-list (when ignore (setq ignore-list 
(org-contacts-split-property ignore))))
         emails-list result phones-list)
     (concat head
            (when email (progn
@@ -995,12 +998,12 @@ normally \"[,; \f\t\n\r\v]+\", and OMIT-NULLS is forced 
to t.
 If OMIT-NULLS is t, zero-length substrings are omitted from the list \(so
 that for the default value of SEPARATORS leading and trailing whitespace
 are effectively trimmed).  If nil, all zero-length substrings are retained."
-(let* ((keep-nulls (or nil omit-nulls))
-         (rexp (or separators org-contacts-property-values-separators))
-         (inputlist (split-string string rexp keep-nulls))
-         (linkstring "")
-         (bufferstring "")
-         (proplist (list "")))
+  (let* ((omit-nulls (if separators omit-nulls t))
+        (rexp (or separators org-contacts-property-values-separators))
+        (inputlist (split-string string rexp omit-nulls))
+        (linkstring "")
+        (bufferstring "")
+        (proplist (list "")))
     (while inputlist
       (setq bufferstring (pop inputlist))
       (if (string-match "\\[\\[" bufferstring)



reply via email to

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