emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] bulk org-agenda-do-date-later problem OMG BACKTRACE ATTACHED


From: Douglas
Subject: Re: [O] bulk org-agenda-do-date-later problem OMG BACKTRACE ATTACHED
Date: Sun, 05 Jan 2014 23:40:53 -0800
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

That worked. Thanks for explaining that. 1 pushed the entry one day forward, or to today if the entry was prior to yesterday. I followed the directions in Feedback, so I believe the backtrace was from uncompiled code. I don't know why it wasn't sending.

Douglas

On 1/5/14 7:56 PM, Nick Dokos wrote:
Douglas <address@hidden> writes:

The backtrace is attached.  I am trying to bulk push org-agenda entries one day 
later in the agenda using org-agenda-do-date-later.  I'm trying to change the 
timestamp of these
tasks. I am not using "SCHEDULED: [timestamp]".  .emacs has not been included 
due to an abundance of personal information.  org-agenda-files has been excised due to 
personal
information.

What I did:

1. Loaded the org-agenda using "C-c a a".
2. Set the view to day using "d".
3. Went to the day before yesterday (Jan 3, 2014) at the time (Jan 5, 2014) using 
"b".
4. Marked a done task (to test) for bulk action using "m".
5. Brought up the menu for bulk action using "B".
6. Selected the Function option using "f".
7. Typed "org-agenda-do-date-later" into the echo/evaluation buffer at the 
bottom of the window and hit return.

I expected the marked task to be pushed one day later in the agenda to January 4, 
2014.  I expected what normally occurs when I press S-<right>.  Instead a long 
error popped up in
the echo buffer.  Nothing happened in the agenda buffer.  The mark remained.

The probable reason the backtrace did not make it through the mail is
that it was produced using compiled code and so it contained binary
stuff (perhaps nul bytes) that confused the mailer. You should try to
produce backtraces using uncompiled code: they are much more informative
in general. Or you could elide the strings containing the binary stuff
as I have done below but that's less informative.

In this case, the backtrace is simple enough:

,----
| Debugger entered--Lisp error: (wrong-number-of-arguments #[(arg)
|   "..." [arg last-command this-command (16) (org-agenda-date-later-minutes 
org-agenda-date-earlier-minutes) org-agenda-date-later-minutes 1 (4) (org-agenda-date-later-hours 
org-agenda-date-earlier-hours) org-agenda-date-later-hours org-agenda-date-later 
prefix-numeric-value] 4 nil "P"] 0)
|   org-agenda-do-date-later()   <<< called with no argument
|   eval((org-agenda-do-date-later))
|   ...
|   org-agenda-bulk-action(nil)
|   call-interactively(org-agenda-bulk-action nil nil)
`----

C-h f org-agenda-do-date-later RET says:

,----
| org-agenda-do-date-later is an interactive Lisp function in
| `org-agenda.el'.
|
| (org-agenda-do-date-later ARG)
|
| Not documented.
`----
                             ^^^

i.e. org-agenda-do-date-later takes a mandatory argument while you
called it with no argument. That's an error on your part, not a bug in
the code.  Try defining a helper function to do the appropriate
impedance matching:

(defun my-org-agend-do-one-day-later ()
        (interactive)
        (org-agenda-do-date-later 1))

and passing that as the function in the bulk action.

Untested and I'm not sure that 1 is the right value to pass.





reply via email to

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