Eric S Fraga <> writes:

> Hello,
> I have the following org capture template:
> #+begin_src emacs-lisp
> (setq org-capture-templates '(("j" "journal" entry (file+datetree+prompt 
> "~/s/notes/")
>                                "* %(format-time-string \"%H:%M\") %^{Entry} 
> %^G\n%i%?")))
> #+end_src
> (other rules elided for clarity).  Trying this today (after not using it
> for a long time), I get the following error:
> ,----
> | Debugger entered--Lisp error: (void-variable org-time-was-given)
> |   org-capture-set-target-location()
> |   org-capture(nil)
> |   call-interactively(org-capture nil nil)
> |   command-execute(org-capture)
> `----
> I don't actually use this rule any longer as I prefer to clock in and
> out but I was trying to show a friend how he could use org for
> journalling.
> I've had a look at the source (reasonably up to date) but this variable
> does not seem to be something I should be setting.  Is my capture rule
> somehow wrong?  Or is this a bug in org-capture?

FWIW, I tried the capture rule in a minimal emacs and it's working fine
for me:

Org-mode version 8.0.3 (release_8.0.3-144-gbd09fe @

That includes a bunch of private commits, but when I look at git history
I don't find the commit you mention in your org version, f1b99a, so
maybe you have your own bunch of private commits and one or more of them
broke something? Maybe try a vanilla org?

The variable is indeed not to be set by you: it's a dynamically scoped
variable, so somebody binds it at some level and then every callee
(direct or indirect) can access it. Stepping through
org-capture-set-location shows that it is unbound up until the call to
org-read-date (line 907-909 in org-capture.el) and it is bound on return
from that function, at least in my case.

> Any suggestions or pointers welcome!
> Thanks,
> eric


Reply via email to