From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?S=C3=A9bastien_Vauban?= Subject: Re: TODO state change from TODO to DONE blocked Date: Thu, 24 Feb 2011 17:04:39 +0100 Message-ID: <80wrkp4dwo.fsf@somewhere.org> References: <80lj15yab6.fsf@somewhere.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org To: emacs-orgmode-mXXj517/zsQ@public.gmane.org Hi, S=C3=A9bastien Vauban wrote: > I've a really weird exception occurring: change state from TODO to DONE is > blocked... while I'm on a leaf of the Org tree!? > > Debugger entered--Lisp error: (error #("TODO state change from TODO to DO= NE blocked" 23 27 (face org-todo) 31 35 (face org-done))) > signal(error (#("TODO state change from TODO to DONE blocked" 23 27 (fa= ce org-todo) 31 35 (face org-done)))) > error("TODO state change from %s to %s blocked" #("TODO" 0 4 (face org-= todo)) #("DONE" 0 4 (face org-done))) > (if (interactive-p) (error "TODO state change from %s to %s blocked" th= is state) (message "TODO state change from %s to %s blocked" this state) (t= hrow (quote exit) nil)) > (if (save-excursion (save-match-data ...)) nil (if (interactive-p) (err= or "TODO state change from %s to %s blocked" this state) (message "TODO sta= te change from %s to %s blocked" this state) (throw ... nil))) > (unless (save-excursion (save-match-data ...)) (if (interactive-p) (err= or "TODO state change from %s to %s blocked" this state) (message "TODO sta= te change from %s to %s blocked" this state) (throw ... nil))) > (progn (setq org-last-todo-state-is-todo (not ...)) (unless (save-excur= sion ...) (if ... ... ... ...))) > (if org-blocker-hook (progn (setq org-last-todo-state-is-todo ...) (unl= ess ... ...))) > (when org-blocker-hook (setq org-last-todo-state-is-todo (not ...)) (un= less (save-excursion ...) (if ... ... ... ...))) > (let* ((match-data ...) (startpos ...) (logging ...) (org-log-done org-= log-done) (org-log-repeat org-log-repeat) (org-todo-log-states org-todo-log= -states) (this ...) (hl-pos ...) (head ...) (ass ...) (interpret ...) (done= -word ...) (final-done-word ...) (last-state ...) (completion-ignore-case t= ) (member ...) (tail ...) (state ...) (state ...) (next ...) (change-plist = ...) dolog now-done-p) (when org-blocker-hook (setq org-last-todo-state-is-= todo ...) (unless ... ...)) (store-match-data match-data) (replace-match ne= xt t t) (unless (pos-visible-in-window-p hl-pos) (message "TODO state chang= ed to %s" ...)) (unless head (setq head ... ass ... interpret ... done-word= ... final-done-word ...)) (when (memq arg ...) (message "Keyword-Set %d/%d= : %s" ... ... ...)) (setq org-last-todo-state-is-todo (not ...)) (setq now-= done-p (and ... ...)) (and logging (org-local-logging logging)) (when (and = ... ... ...) (setq dolog ...) (if ... ...) (when ... ...) (when ... ... ...= ) (when ... ...)) (org-todo-trigger-tag-changes state) (and org-auto-align-= tags (not org-setting-tags) (org-set-tags nil t)) (when org-provide-todo-st= atistics (org-update-parent-todo-statistics)) (run-hooks (quote org-after-t= odo-state-change-hook)) (if (and arg ...) (setq head ...)) (put-text-proper= ty (point-at-bol) (point-at-eol) (quote org-todo-head) head) (when now-done= -p (when ... ...) (org-auto-repeat-maybe state)) (if (and ... ... ... ...) = (progn ... ...)) (when org-trigger-hook (save-excursion ...))) > (catch (quote exit) (org-back-to-heading t) (if (looking-at outline-reg= exp) (goto-char ...)) (or (looking-at ...) (looking-at " *")) (let* (... ..= . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .= .. dolog now-done-p) (when org-blocker-hook ... ...) (store-match-data matc= h-data) (replace-match next t t) (unless ... ...) (unless head ...) (when .= .. ...) (setq org-last-todo-state-is-todo ...) (setq now-done-p ...) (and l= ogging ...) (when ... ... ... ... ... ...) (org-todo-trigger-tag-changes st= ate) (and org-auto-align-tags ... ...) (when org-provide-todo-statistics ..= .) (run-hooks ...) (if ... ...) (put-text-property ... ... ... head) (when = now-done-p ... ...) (if ... ...) (when org-trigger-hook ...))) > (save-excursion (catch (quote exit) (org-back-to-heading t) (if ... ...= ) (or ... ...) (let* ... ... ... ... ... ... ... ... ... ... ... ... ... ..= . ... ... ... ... ... ...))) > (let ((org-blocker-hook org-blocker-hook) (case-fold-search nil)) (when= (equal arg ...) (setq arg nil org-blocker-hook nil)) (when (and org-blocke= r-hook ...) (setq org-blocker-hook nil)) (save-excursion (catch ... ... ...= ... ...))) > org-todo(nil) > call-interactively(org-todo) > (cond ((commandp org-speed-command) (setq this-command org-speed-comman= d) (call-interactively org-speed-command)) ((functionp org-speed-command) (= funcall org-speed-command)) ((and org-speed-command ...) (eval org-speed-co= mmand)) (t (let ... ...))) > (cond ((and org-use-speed-commands ...) (cond ... ... ... ...)) ((and .= .. ... ... ...) (let ... ... ... ... ...)) (t (setq org-table-may-need-upda= te t) (self-insert-command N) (org-fix-tags-on-the-fly) (if org-self-insert= -cluster-for-undo ...))) > org-self-insert-command(1) > call-interactively(org-self-insert-command nil nil) > > I absolutely don't understand which conditions are met for provoking that > strange reaction. > > Taking that leaf and putting it in a blanco Org file allows me to do the = state > change. So, it's not related to the headline itself. Weird discovery: in the "full" document, the state change is blocked. But, = the state change works if I narrow the buffer on that leaf subtree... > Anybody having an idea, or able to suggest some more tests to do, based o= n the > above input? Best regards, Seb --=20 S=C3=A9bastien Vauban _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode-mXXj517/zsQ@public.gmane.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode