emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Bug and possible fix / work-around using org-mobile with group t


From: John Hutchinson
Subject: Re: [O] Bug and possible fix / work-around using org-mobile with group tags
Date: Fri, 26 Feb 2016 00:35:01 +0000 (UTC)

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
=John
HoldingPen $ 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 <address@hidden> 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 <address@hidden> wrote:


Hello,

John Hutchinson <address@hidden> 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

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