Hello, I use org-refile quite a bit, but for my use-case, I want to refile my org-mode subtrees not to an org-agenda file, but to the current file or another file I'm currently visiting.
I had a way of doing this that was working correctly, but now has stopped working. I'm not sure what I changed that broke it.
Here's the code I'm using for org-refile:
(setq org-outline-path-complete-in-steps nil) ; Refile in a single go
(setq org-completion-use-ido nil)
(setq org-refile-use-outline-path t) ; Show full paths for refiling
(setq org-refile-allow-creating-parent-nodes (quote confirm)) ; allow refile to create parent tasks with confirmation
(defun my-org-files-list ()
(mapcar (lambda (buffer)
(buffer-file-name buffer))
(org-buffer-list 'files t)))
(setq org-refile-targets '((my-org-files-list :maxlevel . 3)))
Again, this used to work. But now when I run org-refile, I get this:
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
get-file-buffer(nil)
org-find-base-buffer-visiting(nil)
org-get-agenda-file-buffer(nil)
org-refile-get-targets(nil (#("this" 0 4 (fontified t face org-level-1))))
org-refile-get-location("Refile subtree \"this\" to" nil confirm nil)
org-refile(nil)
call-interactively(org-refile record nil)
command-execute(org-refile record)
execute-extended-command(nil "org-refile")
call-interactively(execute-extended-command nil nil)
command-execute(execute-extended-command)
Any suggestions on how to fix this? Thanks!