org-mobile: Fix TODO keywords generation

* lisp/org-mobile.el (org-mobile-create-index-file): Call
  `org-delete-all' later since it is a destructive operation.

Reported-by: Ian Dunn <dunni@gnu.org>
<http://permalink.gmane.org/gmane.emacs.orgmode/107900>
This commit is contained in:
Nicolas Goaziou 2016-06-24 09:16:39 +02:00
parent 5485170263
commit bffa144f54
1 changed files with 10 additions and 9 deletions

View File

@ -441,15 +441,16 @@ agenda view showing the flagged items."
target-file)
(insert "#+READONLY\n")
(dolist (entry def-todo)
(let* ((kwds (mapcar (lambda (x) (if (string-match "(" x)
(substring x 0 (match-beginning 0))
x))
(cdr entry)))
(dwds (or (member "|" kwds) (last kwds)))
(twds (org-delete-all dwds kwds)))
(insert "#+TODO: " (mapconcat 'identity kwds " ") "\n")
(setq todo-kwds (org-delete-all twds todo-kwds))
(setq done-kwds (org-delete-all dwds done-kwds))))
(let ((kwds (mapcar (lambda (x)
(if (string-match "(" x)
(substring x 0 (match-beginning 0))
x))
(cdr entry))))
(insert "#+TODO: " (mapconcat #'identity kwds " ") "\n")
(let* ((dwds (or (member "|" kwds) (last kwds)))
(twds (org-delete-all dwds kwds)))
(setq todo-kwds (org-delete-all twds todo-kwds))
(setq done-kwds (org-delete-all dwds done-kwds)))))
(when (or todo-kwds done-kwds)
(insert "#+TODO: " (mapconcat 'identity todo-kwds " ") " | "
(mapconcat 'identity done-kwds " ") "\n"))