emacs-orgmode
[Top][All Lists]
Advanced

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

[O] Re: Symbol's function definition is void: org-datetree-find-year-cre


From: Matt Lundin
Subject: [O] Re: Symbol's function definition is void: org-datetree-find-year-create / autoload org-datetree library?
Date: Sat, 19 Mar 2011 09:51:07 -0400
User-agent: Gnus/5.110016 (No Gnus v0.16) Emacs/24.0.50 (gnu/linux)

"Urs Rau (UK)" <address@hidden> writes:

> On latest git version release_7.4-419-g68114f, [Org-mode version 7.4
> (release_7.4.419.g68114f)] , I am trying to archive to a date-tree and
> get the error:
>
> Symbol's function definition is void: org-datetree-find-year-create
>
> I found that if I '(load "org-datetree.el")' in the scratch buffer, it then 
> succeeds. 
>
> Does org-datetree not get auto-loaded?

I mentioned this in a previous email, but I'll elaborate a bit here.
Only one function from org-datetree is autoloaded:
org-datetree-find-date-create. None of the other functions is loaded
until this function is called *or* until you evaluate (require
'org-datetree). 

To solve the problem, you could either rewrite the defadvice to use
org-datetree-find-date-create or add (require 'org-datetree) to your
emacs.

To change the advice, simply replace the following lines

--8<---------------cut here---------------start------------->8---
          (org-datetree-find-year-create y)
          (org-datetree-find-month-create y m)
          (org-datetree-find-day-create y m d)
--8<---------------cut here---------------end--------------->8---

with 

--8<---------------cut here---------------start------------->8---
          (org-datetree-find-date-create `(,m ,d ,y))
--8<---------------cut here---------------end--------------->8---

> Also I have searched the *.el files to find the definition of
> "org-datetree-find-year-create" and found inconsistent use of the
> "keep-restriction" check, sometimes it is all lower case, sometimes it
> is all uppercase, I guess lisp is not case sensitive?
>
> $ find ./ -type f -exec grep -i "keep-restriction" {} /dev/null \; 
> ./lisp/org-agenda.el:           (date &optional keep-restriction))
> ./lisp/org-capture.el:                  (DATE &optional KEEP-RESTRICTION))
> ./lisp/org-datetree.el:(defun org-datetree-find-date-create (date &optional 
> keep-restriction)
> ./lisp/org-datetree.el:If KEEP-RESTRICTION is non-nil, do not widen the 
> buffer.
> ./lisp/org-datetree.el:    (or keep-restriction (widen))

Look at the context in which the uppercase occurs (e.g., a docstring).

Best,
Matt



reply via email to

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