Hi Dave,

Dave Abrahams <d...@boostpro.com> writes:

> Sorry, but I don't want to spend the time on that.  I'm trying to get
> the rules changed so that it isn't so easy to corrupt an org file.  

The current rule is "Leave SCHEDULED: and DEADLINE: information where
Org's `org-schedule' and `org-deadline' put it."

Maybe I don't understand how do you want to change this rule.

> I'm not much interested in building a tool to undo corruption.
>
>> FYI: Nicolas and I have been discussing about the issue you raised, and
>> the integration of org-element.el will force us to be clearer about such
>> cases, which is good.
>
> I sincerely hope that when you become clearer about such cases you pick
> a liberal set of rules that isn't so error-prone.  The ideas that I
> can't just hit return after a headline and start typing a body, and that
> I'll be nagged about misplaced SCHEDULED: lines, are both very
> unappealing.

I have just added this hack:

  "Check for misplaced SCHEDULED and DEADLINE cookies"
  http://orgmode.org/worg/org-hacks.html#sec-1-2-8

Here is the function:

(defun org-check-misformatted-subtree ()
  "Check misformatted entries in the current buffer."
  (interactive)
  (show-all)
  (org-map-entries
   (lambda ()
     (move-beginning-of-line 2)
     (if (or (and (org-get-scheduled-time (point))
                  (not (looking-at (concat "^.*" org-scheduled-regexp))))
             (and (org-get-deadline-time (point))
                  (not (looking-at (concat "^.*" org-deadline-regexp)))))
         (when (y-or-n-p "Fix this subtree? ")
           (message "Call the function again when you're done fixing this 
subtree.")
           (recursive-edit))
       (message "All subtrees checked.")))))

HTH,

-- 
 Bastien

Reply via email to