emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Unable to push to org-mobile


From: Nick Dokos
Subject: Re: [O] Unable to push to org-mobile
Date: Fri, 13 Dec 2013 17:08:15 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Dror Atariah <address@hidden> writes:

> Managed to get [backtrace] output... 
>
> You can find it here: https://gist.github.com/drorata/7950857
>
> I could not find my way in this output... :(
>

If you look at the top of the backtrace it shows this:

,----
| Debugger entered--Lisp error: (wrong-type-argument sequencep :grouptags)
| mapconcat(identity ("PRIVATE" "{" "WORK" :grouptags "address@hidden" 
"address@hidden" "address@hidden" "address@hidden" "}" "{" "IT" :grouptags 
"address@hidden" "address@hidden" "address@hidden" "}" "{" "PROG" :grouptags 
"address@hidden" "address@hidden" "}" "}" "4freeTime" "bms_friday" "emacs" 
"interesting_questions" "mittagseminar" "Mittagsseminar" "NOTE" "private" 
"results" "work" "Yvinec" "Ziegler") " ")
| (insert "#+TAGS: " (mapconcat (quote identity) tags " ") "\n")
| ...
| org-mobile-create-index-file()
`----

The mapconcat line can be evaluated on its own - it does not depend on
anything else. If you cut and paste it into your *scratch* buffer and
modify it slightly like this:

--8<---------------cut here---------------start------------->8---
(mapconcat 'identity '("PRIVATE" "{" "WORK" :grouptags "address@hidden" 
"address@hidden" "address@hidden" "address@hidden" "}" "{" "IT" :grouptags 
"address@hidden" "address@hidden" "address@hidden" "}" "{" "PROG" :grouptags 
"address@hidden" "address@hidden" "}" "}" "4freeTime" "bms_friday" "emacs" 
"interesting_questions" "mittagseminar" "Mittagsseminar" "NOTE" "private" 
"results" "work" "Yvinec" "Ziegler") " ")
--8<---------------cut here---------------end--------------->8---

and evaluate it with C-j, you get the exact error. Now look in
org-mobile-create-index-file for the call


      (insert "#+TAGS: " (mapconcat 'identity tags " ") "\n")

You'll find it on line 470 (at least in the version I'm using).
Before this line there is this code:

      ...
      (setq def-tags (mapcar
                      (lambda (x)
                        (cond ((null x) nil)
                              ((stringp x) x)
                              ((eq (car x) :startgroup) "{")
                              ((eq (car x) :endgroup) "}")
                              ((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))
      (setq tags (sort tags (lambda (a b) (string< (downcase a) (downcase b)))))
      (setq tags (append def-tags tags nil))
      (insert "#+TAGS: " (mapconcat 'identity tags " ") "\n")
      ...

You'll notice that :startgroup is replaced by { , :endgroup is
replaced by } and :newline is deleted - but there is no mention of
:grouptags which leads me to suspect that there should be an extra
line in there, perhaps

                              ((eq (car x) :grouptags) nil)

Maybe you can try it - better yet, maybe somebody who has some idea of
how org-mobile works should take a look. I note that if I delete the
:grouptags instances in the mapconcat call above, it completes without
error.

Nick




reply via email to

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