Hi Nicolas:
I think the diff patch you sent had an "off-by-one-line" error. If I remove the 
nested lambdas, so your lambda simply replaces the one in the distributed 
source, the patch seems to work.
I'm not sure how to generate a "patch" to your "patch". Here's a diff-listing 
that seems to work to remove the nested lambdas. This has not been fully 
tested, but the failing use-cases from the original bug report now work.
Thanks 
=JohnHoldingPen $ cat patch
*** org-mobile.el.GOOD  2016-02-25 17:19:52.489685000 -0500
--- /home/hutchinson/.emacs.d/elpa/org-plus-contrib-20160222/org-mobile.el      
2016-02-25 19:18:38.746283600 -0500
***************
*** 454,467 ****
        (insert "#+TODO: " (mapconcat 'identity todo-kwds " ") " | "
                (mapconcat 'identity done-kwds " ") "\n"))
        (setq def-tags (mapcar
!                     (lambda (x)
!                       (cond ((null x) nil)
!                             ((stringp x) x)
!                             ((eq (car x) :startgroup) "{")
!                             ((eq (car x) :endgroup) "}")
!                             ((eq (car x) :grouptags) nil)
!                             ((eq (car x) :newline) nil)
!                             ((listp x) (car x))))
                      def-tags))
        (setq def-tags (delq nil def-tags))
        (setq tags (org-delete-all def-tags tags))
--- 454,469 ----
        (insert "#+TODO: " (mapconcat 'identity todo-kwds " ") " | "
                (mapconcat 'identity done-kwds " ") "\n"))
        (setq def-tags (mapcar
!                       (lambda (tag)
!                         (cl-case (car tag)
!                           ((nil) nil)
!                           (:startgroup "{")
!                           (:endgroup "}")
!                           (:startgrouptag "{")
!                           (:endgrouptag "}")
!                           (:grouptags ":")
!                           (:newline nil)
!                           (t (car tag))))
                      def-tags))
        (setq def-tags (delq nil def-tags))
        (setq tags (org-delete-all def-tags tags))
HoldingPen $



    On Thursday, February 25, 2016 3:54 PM, John Hutchinson 
<johnrhutchin...@att.net> wrote:
 

 Hi:
When I apply the patch and run it (using either "startgroup / endgroup" or 
"startgrouptag / endgrouptag" delimiters) I get an error "Wrong type argument: 
characterp lambda". This is using Monday's ELPA distribution of Org.

I'll try and investigate further this weekend when I have some time.
Thanks and regards,=John
 

    On Sunday, February 21, 2016 10:34 AM, Nicolas Goaziou 
<m...@nicolasgoaziou.fr> wrote:
 

 Hello,

John Hutchinson <johnrhutchin...@att.net> writes:

>    - Running org-mobile-push with group tags defined in init.el file using 
>:startgrouptag etc. results in an error, and (in my case) DropBox not being 
>updated. Here's the log from the *Messages* buffer:  Creating agendas...
> Agenda written to Org file 
> /cygdrive/c/Users/IBM_ADMIN/Dropbox/Apps/MobileOrg/agendas.org
> Creating agendas...done
> Saving all Org-mode buffers...
> (No files need saving)
> Saving all Org-mode buffers... done
> Copying files...
> Writing index file...
> org-mobile-create-index-file: Wrong type argument: sequencep, :startgrouptag
> Quit
>  [2 times]
>
>    - Commenting out the group tags attributes in init.el results in Org 
>Mobile successfully generating and pushing to DropBox.
>    - Turning group tags off with org-toggle-tags-groups and running 
>org-mobile-push causes the error.
>    - Using Org from org-plus-contrib-20160208, the problem seems to be the 
>:startgroup and :endgroup on lines 460 and 461 of org-mobile.el; patching them 
>to :startgrouptag and :endgrouptag respectively appears to correct the issue 
>(though I've not done in-depth testing for any other unintended side effects 
>this patch may have).
>    - Also, changing the group attributes in my init.el from :startgrouptag 
>:endgrouptag to :startgroup and :endgroup respectively corrects the issue, 
>although the Org manual indicates that the longer form is correct.    
>
>    - As an aside, I note there are several instances of plain :startgroup 
>intermingled with :startgrouptag in the org sources:  
>org-plus-contrib-20160208 $ grep -n startgroup *.el
> org.el:3492:        (const :startgroup)
> org.el:3495:        (const :startgrouptag)
> org.el:3523:      (const :tag "Start radio group" (:startgroup))
> org.el:5063:                  (append '((:startgroup))
> org.el:5233:              (:startgroup "{")
> org.el:5235:              (:startgrouptag "[")
> org.el:5252:      (push '(:startgroup) org-tag-alist)
> org.el:5258:      (push '(:startgrouptag) org-tag-alist)
> org.el:5322:      (if (or (memq (car e) '(:newline :grouptags :endgroup 
> :startgroup))
> org.el:13093:      ((equal e '(:startgroup))
> org.el:15232:    ((eq (car e) :startgroup)
> org.el:15241:    ((eq (car e) :startgrouptag)
> org-interactive-query.el:92:    ((equal e '(:startgroup))
> org-interactive-query.el:268:    ;; if this is not a keyword (:startgroup, 
> etc), ignore it
> org-mobile.el:460:                  ((eq (car x) :startgroup) "{")
> org-pcomplete.el:245:          ((eq :startgroup (car x)) "{")
> ox-beamer.el:1128:      (append '((:startgroup))
>
> Regards,=John
> P.S. First time writing to this list; apologies in advance for
> breaches of etiquette.

Thank you for the report.

This is probably related to the recent introduction of Tag hierarchy.
Would the following patch solve the problem?


Regards,

-- 
Nicolas Goaziou


   

  

Reply via email to