emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Refile targets fail with certain filename


From: Nathan Neff
Subject: Re: [O] Refile targets fail with certain filename
Date: Mon, 12 Dec 2011 15:04:55 -0600

Thanks Nick for your advice.  I have posted a new e-mail
with the subject "Refile fails with blank * TODO"

On Mon, Dec 12, 2011 at 11:05 AM, Nick Dokos <address@hidden> wrote:
> Nathan Neff <address@hidden> wrote:
>
>> Hello,
>>
>> This was a very tricky problem to work around.  I have two directories
>> ("notesmine" and "personal") that I use to refile stuff to.  I refile to my
>> notesmine directory once every few months, so I was baffled last night
>> when I started getting "Wrong type argument:
>> stringp, nil" when I wanted to refile to my notesmine directory.
>>
>> ;; Setup
>> ;; My /Users/nate/Documents/notesmine directory has a file called
>> "org-mode.org" in it.
>>
>> ;; Begin Code
>> (defun njn/personal-org-files()
>>        (interactive)
>>        (directory-files "/Users/nate/Documents/notesmine" 't "^[^.].*org$")
>>     )
>>
>> (defun njn/refile-targets-personal()
>>     (interactive)
>>     (setq org-refile-targets
>>           (quote ((njn/personal-org-files :maxlevel . 5))))
>>   )
>>
>> ;; I would then run M-x njn/refile-targets-personal, and
>> ;; then press Ctrl-C Ctrl-W to refile a heading in one of my org files.
>> ;; Then, I would see the "Wrong type argument: stringp nil"
>>
>> I found that the problem *disappears* when I remove or re-name
>> the "org-mode.org" file from my notesmine directory!
>>
>> I refile to my personal directory all the time, and I found that if
>> I move the "org-mode.org" file to my personal directory, (or create a blank
>> "org-mode.org" file in my personal directory then I would start
>> getting the same "Wrong type argument stringp, nil" error when refiling
>> to my personal directory.
>>
>> So, as a geek, I'm interested in why the "org-mode.org" filename causes
>> this error.  I've reproduced the problem with the simple code above, so
>> I hope someone else can say "Yes, I can reproduce the problem" and I will
>> have done some good :-)
>>
>> Can anyone reproduce the error and tell me if "org-mode.org" is a keyword or
>> function or something, or is the problem in the regular expression I'm
>> using to select
>> my refile targets?
>>
>
> I cannot reproduce it, but the setup needed is probably sufficiently 
> complicated
> to make the attempt futile.
>
> Here's the minimal .emacs I tried:
>
> --8<---------------cut here---------------start------------->8---
> ;;; -*- mode: emacs-lisp -*-
> ;;; constant part
> (add-to-list 'load-path (expand-file-name "~/src/emacs/org/org-mode/lisp"))
> (add-to-list 'load-path (expand-file-name 
> "~/src/emacs/org/org-mode/contrib/lisp"))
> (add-to-list 'auto-mode-alist '("\\.\\(org\\|org_archive\\|txt\\)$" . 
> org-mode))
> (require 'org-install)
>
> (setq debug-on-error t)
> (setq eval-expression-print-length nil)
> (setq eval-expression-print-level nil)
>
> (global-set-key "\C-cl" 'org-store-link)
> (global-set-key "\C-ca" 'org-agenda)
>
> ;;;; Nathan Neff's problem config.
> ;; Setup
> ;; My /Users/nate/Documents/notesmine directory has a file called 
> "org-mode.org" in it.
>
> (setq org-agenda-files '("/home/nick/lib/notesmine"))
>
> ;; Begin Code
> (defun njn/personal-org-files()
>       (interactive)
>       (directory-files "/home/nick/lib/notesmine" 't "^[^.].*org$")
>    )
>
> (defun njn/refile-targets-personal()
>    (interactive)
>    (setq org-refile-targets
>          (quote ((njn/personal-org-files :maxlevel . 5))))
>  )
>
> ;; I would then run M-x njn/refile-targets-personal, and
> ;; then press Ctrl-C Ctrl-W to refile a heading in one of my org files.
> ;; Then, I would see the "Wrong type argument: stringp nil"
> ;;; end of Nathan Neff's problem config
>
> --8<---------------cut here---------------end--------------->8---
>
> and /home/nick/lib/notesmine contains two files, tasks.org and org-mode.org:
>
> tasks.org:
> --8<---------------cut here---------------start------------->8---
>
> * TODO foo
>  SCHEDULED: <2011-12-12 Mon>
>
> ** DONE bar
>   SCHEDULED: <2011-12-12 Mon>
> --8<---------------cut here---------------end--------------->8---
>
> org-mode.org:
>
> --8<---------------cut here---------------start------------->8---
>
> * one
> ** two
> *** three
> **** four
> ***** five
> ****** TODO foo
>       SCHEDULED: <2011-12-12 Mon>
> --8<---------------cut here---------------end--------------->8---
>
> After doing M-x njn/refile-targets-personal, I can refile from tasks.org (to 
> either
> tasks.org or org-mode.org) with C-c C-w with no problems.
>
> I'd suggest you turn on debug-on-error and post the backtrace, preferably
> with a minimal .emacs similar to the above and none of your other
> customizations: emacs -q -l /path/to/minimal/dot/emacs
>
> Nick



reply via email to

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