[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Re: Symbol's function definition is void: org-datetree-find-year
From: |
Carsten Dominik |
Subject: |
Re: [O] Re: Symbol's function definition is void: org-datetree-find-year-create / autoload org-datetree library? |
Date: |
Sat, 19 Mar 2011 14:53:49 +0100 |
On 19.3.2011, at 14:51, Matt Lundin wrote:
> "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.
A third possibility it to wrap the defadvice form into
(eval-after-load "org-datetree"
'(defadvice......
)
This will wait for the time when org-datetree is loaded.
Cheers
- Carsten
>
> 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
>