emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Carsten Dominik <carsten.dominik@gmail.com>
To: Orgmode Mailing List <emacs-orgmode@gnu.org>
Cc: Nicolas Goaziou <n.goaziou@gmail.com>
Subject: Regression: Empty TODO lines
Date: Sun, 13 Nov 2011 12:30:39 +0100	[thread overview]
Message-ID: <71A67E1B-33FC-4191-966B-AC233D71E7F6@gmail.com> (raw)

Hi Nicolas,

commit dfcb6faef11a2439b56b18a6289803361d402130 (Provide more consistent regexps for headlines)
makes the global TODO list fail on headlines with a TODO keyword but no text following:

* TODO This one works
* TODO
  This one fails (note, there is not even a space after TODO.

While I agree that a TODO line with not text is not good, I think
it should not break the TODO list view.  I am attaching the backtrace.

Cheers

- Carsten

--------------------------------------------------------------------------------------------
Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p nil)
  goto-char(nil)
  (if org-agenda-todo-list-sublevels (goto-char (match-end 2)) (org-end-of-subtree (quote invisible)))
  (catch :skip (save-match-data (beginning-of-line) (org-agenda-skip) (setq beg ... end ...) (when ... ... ... ...)) (goto-char (match-beginning 2)) (setq marker (org-agenda-new-marker ...) category (org-get-category) org-category-pos (get-text-property ... ...) txt (match-string 2) tags (org-get-tags-at ...) txt (org-agenda-format-item "" txt category tags) priority (1+ ...) todo-state (org-get-todo-state)) (org-add-props txt props (quote org-marker) marker (quote org-hd-marker) marker (quote priority) priority (quote org-category) category (quote org-category-position) org-category-pos (quote type) "todo" (quote todo-state) todo-state) (push txt ee) (if org-agenda-todo-list-sublevels (goto-char ...) (org-end-of-subtree ...)))
  (while (re-search-forward regexp nil t) (catch :skip (save-match-data ... ... ... ...) (goto-char ...) (setq marker ... category ... org-category-pos ... txt ... tags ... txt ... priority ... todo-state ...) (org-add-props txt props ... marker ... marker ... priority ... category ... org-category-pos ... "todo" ... todo-state) (push txt ee) (if org-agenda-todo-list-sublevels ... ...)))
  (let* ((props ...) (regexp ...) marker priority category org-category-pos tags todo-state ee txt beg end) (goto-char (point-min)) (while (re-search-forward regexp nil t) (catch :skip ... ... ... ... ... ...)) (nreverse ee))
  org-agenda-get-todos()
  (setq rtn (org-agenda-get-todos))
  (cond ((and ... ...) (setq rtn ...) (setq results ...)) ((eq arg :timestamp) (setq rtn ...) (setq results ...) (setq rtn ...) (setq results ...)) ((eq arg :sexp) (setq rtn ...) (setq results ...)) ((eq arg :scheduled) (setq rtn ...) (setq results ...)) ((eq arg :closed) (setq rtn ...) (setq results ...)) ((eq arg :deadline) (setq rtn ...) (setq deadline-results ...) (setq results ...)))
  (while (setq arg (pop args)) (cond (... ... ...) (... ... ... ... ...) (... ... ...) (... ... ...) (... ... ...) (... ... ... ...)))
  (save-restriction (if org-agenda-restrict (narrow-to-region org-agenda-restrict-begin org-agenda-restrict-end) (widen)) (while (setq arg ...) (cond ... ... ... ... ... ...)))
  (save-excursion (save-restriction (if org-agenda-restrict ... ...) (while ... ...)))
  (let ((case-fold-search nil)) (save-excursion (save-restriction ... ...)))
  (save-current-buffer (set-buffer buffer) (unless (eq major-mode ...) (error "Agenda file %s is not in `org-mode'" file)) (let (...) (save-excursion ...)) results)
  (with-current-buffer buffer (unless (eq major-mode ...) (error "Agenda file %s is not in `org-mode'" file)) (let (...) (save-excursion ...)) results)
  (if (not buffer) (list (format "ORG-AGENDA-ERROR: No such org-file %s" file)) (with-current-buffer buffer (unless ... ...) (let ... ...) results))
  (let* ((org-startup-folded nil) (org-startup-align-all-tables nil) (buffer ...) arg results rtn deadline-results) (if (not buffer) (list ...) (with-current-buffer buffer ... ... results)))
  org-agenda-get-day-entries("~/org/orgmode.org" (11 13 2011) :todo)
  (setq rtn (org-agenda-get-day-entries file date :todo))
  (catch (quote nextfile) (org-check-agenda-file file) (setq rtn (org-agenda-get-day-entries file date :todo)) (setq rtnall (append rtnall rtn)))
  (while (setq file (pop files)) (catch (quote nextfile) (org-check-agenda-file file) (setq rtn ...) (setq rtnall ...)))
  (let* ((today ...) (date ...) (kwds org-todo-keywords-for-agenda) (completion-ignore-case t) (org-select-this-todo-keyword ...) rtn rtnall files file pos) (when (equal arg ...) (setq org-select-this-todo-keyword ...)) (and (equal 0 arg) (setq org-select-this-todo-keyword nil)) (org-set-local (quote org-last-arg) arg) (setq org-agenda-redo-command (quote ...)) (setq files (org-agenda-files nil ...) rtnall nil) (while (setq file ...) (catch ... ... ... ...)) (if org-agenda-overriding-header (insert ... "\n") (insert "Global list of TODO items of type: ") (add-text-properties ... ... ...) (org-agenda-mark-header-line ...) (setq pos ...) (insert ... "\n") (add-text-properties pos ... ...) (setq pos ...) (unless org-agenda-multi ... ... ...) (add-text-properties pos ... ...)) (org-agenda-mark-header-line (point-min)) (when rtnall (insert ... "\n")) (goto-char (point-min)) (or org-agenda-multi (org-fit-agenda-window)) (add-text-properties (point-min) (point-max) (quote ...)) (org-finalize-agenda) (setq buffer-read-only t))
  org-todo-list(nil)
  call-interactively(org-todo-list)
  (cond ((setq entry ...) (if ... ... ...)) ((equal keys "C") (setq org-agenda-custom-commands org-agenda-custom-commands-orig) (customize-variable ...)) ((equal keys "a") (call-interactively ...)) ((equal keys "s") (call-interactively ...)) ((equal keys "t") (call-interactively ...)) ((equal keys "T") (org-call-with-arg ... ...)) ((equal keys "m") (call-interactively ...)) ((equal keys "M") (org-call-with-arg ... ...)) ((equal keys "e") (call-interactively ...)) ((equal keys "?") (org-tags-view nil "+FLAGGED") (org-add-hook ... ... t t)) ((equal keys "L") (unless ... ...) (unless restriction ... ...)) ((equal keys "#") (call-interactively ...)) ((equal keys "/") (call-interactively ...)) ((equal keys "!") (customize-variable ...)) (t (error "Invalid agenda key")))
  (let* ((prefix-descriptions nil) (org-agenda-window-setup ...) (org-agenda-custom-commands-orig org-agenda-custom-commands) (org-agenda-custom-commands ...) (buf ...) (bfn ...) entry key type match lprops ans) (unless org-agenda-overriding-restriction (unless ... ...) (setq org-agenda-restrict nil) (move-marker org-agenda-restrict-begin nil) (move-marker org-agenda-restrict-end nil)) (put (quote org-agenda-redo-command) (quote org-lprops) nil) (put (quote org-agenda-redo-command) (quote last-args) nil) (setq org-agenda-last-dispatch-buffer (current-buffer)) (unless keys (setq ans ... keys ... restriction ...)) (when (and ... restriction) (put ... ... ...) (cond ... ...)) (cond (... ...) (... ... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ... ...) (... ... ...) (... ...) (... ...) (... ...) (t ...)))
  (catch (quote exit) (let* (... ... ... ... ... ... entry key type match lprops ans) (unless org-agenda-overriding-restriction ... ... ... ...) (put ... ... nil) (put ... ... nil) (setq org-agenda-last-dispatch-buffer ...) (unless keys ...) (when ... ... ...) (cond ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...)))
  org-agenda(nil)
  call-interactively(org-agenda nil nil)

             reply	other threads:[~2011-11-13 11:30 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-13 11:30 Carsten Dominik [this message]
2011-11-13 19:29 ` Regression: Empty TODO lines Mikhail Titov
2011-11-13 23:46 ` Nicolas Goaziou
2011-11-14  7:36   ` Carsten Dominik
2011-11-14 18:09     ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=71A67E1B-33FC-4191-966B-AC233D71E7F6@gmail.com \
    --to=carsten.dominik@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=n.goaziou@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).