* Capture Bug?
@ 2016-09-21 8:58 lists
2016-09-21 11:54 ` Adam Porter
0 siblings, 1 reply; 8+ messages in thread
From: lists @ 2016-09-21 8:58 UTC (permalink / raw)
To: emacs-orgmode
I have a capture template which prompts for a file name and uses this to
create a filename with a datestamp:
(defun capture-pelican-draft-file (path)
(let ((name (read-string "Name: ")))
(expand-file-name (format "%s-%s.org"
(format-time-string "%Y-%m-%d")
name) path)))
("g"
"New blog post (ianbarton.net)"
plain
(file (capture-pelican-draft-file
"~/Documents/emacs/web_sites/ianbarton.net/org/_posts"))
"#+AUTHOR: Ian Barton\n#+DATE: %u\n#+PROPERTY: MODIFIED:
\n#+TITLE\n#+CATEGORY: Blog \n#+PROPERTY: TAGS \n#+PROPERTY: SUMMARY
\n#+SETUPFILE: ../setup.org\n\n")
On the current git master the function capture-pelican-draft-file
doesn't seem to be evaluated, resulting in a "File name doesn't exist"
error. Doing git bisect seems to point at the commit below:
8860c92f62dac87267416708e81bc8aec026fcc7 is the first bad commit
commit 8860c92f62dac87267416708e81bc8aec026fcc7
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Date: Fri Jun 24 00:55:03 2016 +0200
ob-exp: Small fix
* lisp/ob-exp.el (org-babel-exp-src-block): Use `symbol-name'
instead of
`eval' since the argument is a dynamically scoped variable anyhow.
Ian.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 8:58 Capture Bug? lists
@ 2016-09-21 11:54 ` Adam Porter
2016-09-21 18:24 ` lists
2016-09-21 21:38 ` Nick Dokos
0 siblings, 2 replies; 8+ messages in thread
From: Adam Porter @ 2016-09-21 11:54 UTC (permalink / raw)
To: emacs-orgmode
lists@wilkesley.net writes:
> I have a capture template which prompts for a file name and uses this
> to create a filename with a datestamp:
>
> (defun capture-pelican-draft-file (path)
> (let ((name (read-string "Name: ")))
> (expand-file-name (format "%s-%s.org"
> (format-time-string "%Y-%m-%d")
> name) path)))
>
>
> ("g"
> "New blog post (ianbarton.net)"
> plain
> (file (capture-pelican-draft-file
> "~/Documents/emacs/web_sites/ianbarton.net/org/_posts"))
> "#+AUTHOR: Ian Barton\n#+DATE: %u\n#+PROPERTY: MODIFIED:
> \n#+TITLE\n#+CATEGORY: Blog \n#+PROPERTY: TAGS \n#+PROPERTY: SUMMARY
> \n#+SETUPFILE: ../setup.org\n\n")
Are you using custom-set-variables to set org-capture-templates? If
not, I think you need to unquote capture-pelican-draft-file.
>> On the current git master the function capture-pelican-draft-file
> doesn't seem to be evaluated, resulting in a "File name doesn't exist"
> error. Doing git bisect seems to point at the commit below:
>
> 8860c92f62dac87267416708e81bc8aec026fcc7 is the first bad commit
> commit 8860c92f62dac87267416708e81bc8aec026fcc7
> Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
> Date: Fri Jun 24 00:55:03 2016 +0200
That commit is about org-babel, which I don't think should have anything
to do with org-capture. But you said you bisected it, so you mean that
before that commit, your code works as-is?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 11:54 ` Adam Porter
@ 2016-09-21 18:24 ` lists
2016-09-21 20:01 ` Adam Porter
2016-09-21 20:51 ` Nicolas Goaziou
2016-09-21 21:38 ` Nick Dokos
1 sibling, 2 replies; 8+ messages in thread
From: lists @ 2016-09-21 18:24 UTC (permalink / raw)
To: emacs-orgmode, Emacs-orgmode
On 2016-09-21 12:54, Adam Porter wrote:
> lists@wilkesley.net writes:
>
>> I have a capture template which prompts for a file name and uses this
>> to create a filename with a datestamp:
>>
>> (defun capture-pelican-draft-file (path)
>> (let ((name (read-string "Name: ")))
>> (expand-file-name (format "%s-%s.org"
>> (format-time-string "%Y-%m-%d")
>> name) path)))
>>
>>
>> ("g"
>> "New blog post (ianbarton.net)"
>> plain
>> (file (capture-pelican-draft-file
>> "~/Documents/emacs/web_sites/ianbarton.net/org/_posts"))
>> "#+AUTHOR: Ian Barton\n#+DATE: %u\n#+PROPERTY: MODIFIED:
>> \n#+TITLE\n#+CATEGORY: Blog \n#+PROPERTY: TAGS \n#+PROPERTY: SUMMARY
>> \n#+SETUPFILE: ../setup.org\n\n")
>
> Are you using custom-set-variables to set org-capture-templates? If
> not, I think you need to unquote capture-pelican-draft-file.
>
>>> On the current git master the function capture-pelican-draft-file
>> doesn't seem to be evaluated, resulting in a "File name doesn't exist"
>> error. Doing git bisect seems to point at the commit below:
>>
>> 8860c92f62dac87267416708e81bc8aec026fcc7 is the first bad commit
>> commit 8860c92f62dac87267416708e81bc8aec026fcc7
>> Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
>> Date: Fri Jun 24 00:55:03 2016 +0200
>
> That commit is about org-babel, which I don't think should have
> anything
> to do with org-capture. But you said you bisected it, so you mean that
> before that commit, your code works as-is?
Thanks, I'll redo my bisect. I was being harassed by the dog, so might
have made a mistake! However, the previous commit looks as though it
might have been the one responsible:
commit 5485170263a46fa17db67b0324c4c4e48bcdfe49
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Date: Fri Jun 24 01:11:49 2016 +0200
org-capture: Remove forbidden value type from "file" templates
I'll try unquoting capture-pelican-draft-file.
Ian.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 18:24 ` lists
@ 2016-09-21 20:01 ` Adam Porter
2016-09-21 20:51 ` Nicolas Goaziou
1 sibling, 0 replies; 8+ messages in thread
From: Adam Porter @ 2016-09-21 20:01 UTC (permalink / raw)
To: emacs-orgmode
lists@wilkesley.net writes:
> the previous commit looks as though it
> might have been the one responsible:
>
> commit 5485170263a46fa17db67b0324c4c4e48bcdfe49
> Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
> Date: Fri Jun 24 01:11:49 2016 +0200
>
> org-capture: Remove forbidden value type from "file" templates
That definitely sounds relevant!
> I'll try unquoting capture-pelican-draft-file.
Let me know if it works. I still often get confused when dealing with
quoting and unquoting and...
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 18:24 ` lists
2016-09-21 20:01 ` Adam Porter
@ 2016-09-21 20:51 ` Nicolas Goaziou
2016-09-22 9:14 ` Ian Barton
1 sibling, 1 reply; 8+ messages in thread
From: Nicolas Goaziou @ 2016-09-21 20:51 UTC (permalink / raw)
To: lists; +Cc: Emacs-orgmode, emacs-orgmode
Hello,
lists@wilkesley.net writes:
> commit 5485170263a46fa17db67b0324c4c4e48bcdfe49
> Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
> Date: Fri Jun 24 01:11:49 2016 +0200
>
> org-capture: Remove forbidden value type from "file" templates
>
Try wrapping `capture-pelican-draft-file' call within a function instead
of putting a raw sexp.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 11:54 ` Adam Porter
2016-09-21 18:24 ` lists
@ 2016-09-21 21:38 ` Nick Dokos
2016-09-22 2:54 ` Adam Porter
1 sibling, 1 reply; 8+ messages in thread
From: Nick Dokos @ 2016-09-21 21:38 UTC (permalink / raw)
To: emacs-orgmode
Adam Porter <adam@alphapapa.net> writes:
> lists@wilkesley.net writes:
>
>> I have a capture template which prompts for a file name and uses this
>> to create a filename with a datestamp:
>>
>> (defun capture-pelican-draft-file (path)
>> (let ((name (read-string "Name: ")))
>> (expand-file-name (format "%s-%s.org"
>> (format-time-string "%Y-%m-%d")
>> name) path)))
>>
>>
>> ("g"
>> "New blog post (ianbarton.net)"
>> plain
>> (file (capture-pelican-draft-file
>> "~/Documents/emacs/web_sites/ianbarton.net/org/_posts"))
>> "#+AUTHOR: Ian Barton\n#+DATE: %u\n#+PROPERTY: MODIFIED:
>> \n#+TITLE\n#+CATEGORY: Blog \n#+PROPERTY: TAGS \n#+PROPERTY: SUMMARY
>> \n#+SETUPFILE: ../setup.org\n\n")
>
> Are you using custom-set-variables to set org-capture-templates? If
> not, I think you need to unquote capture-pelican-draft-file.
That's not going to work: unquoting[fn:1] evaluates the unquoted
element during the setting of org-capture-templates. That would have
the effect of evaluating the function call when the setq is evaluated,
whereas the intent here is to evaluate the function call *much* later,
when the capture is initiated.
* Footnotes
[fn:1] ... by which I hope I mean the same thing you do:
using backquote instead of quote in front of the <list> in
(setq org-capture-templates <list>)
and then using , to unquote some internal elements, allowing their
evaluation and therefore replacing them with the results of the
evaluation in the binding of org-capture-templates.
--
Nick
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 21:38 ` Nick Dokos
@ 2016-09-22 2:54 ` Adam Porter
0 siblings, 0 replies; 8+ messages in thread
From: Adam Porter @ 2016-09-22 2:54 UTC (permalink / raw)
To: emacs-orgmode
Nick Dokos <ndokos@gmail.com> writes:
> That's not going to work: unquoting[fn:1] evaluates the unquoted
> element during the setting of org-capture-templates. That would have
> the effect of evaluating the function call when the setq is evaluated,
> whereas the intent here is to evaluate the function call *much* later,
> when the capture is initiated.
Yes, I think you're right. Thanks, Nick. :)
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Capture Bug?
2016-09-21 20:51 ` Nicolas Goaziou
@ 2016-09-22 9:14 ` Ian Barton
0 siblings, 0 replies; 8+ messages in thread
From: Ian Barton @ 2016-09-22 9:14 UTC (permalink / raw)
To: emacs-orgmode; +Cc: Emacs-orgmode
On Wed, Sep 21, 2016 at 10:51:46PM +0200, Nicolas Goaziou wrote:
> Hello,
>
> lists@wilkesley.net writes:
>
> > commit 5485170263a46fa17db67b0324c4c4e48bcdfe49
> > Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
> > Date: Fri Jun 24 01:11:49 2016 +0200
> >
> > org-capture: Remove forbidden value type from "file" templates
> >
> Try wrapping `capture-pelican-draft-file' call within a function instead
> of putting a raw sexp.
>
I have tried:
("g"
"New blog post (ianbarton.net)"
plain
(file (funcall(capture-pelican-draft-file
"~/Documents/emacs/web_sites/ianbarton.net/org/_posts")))
"#+AUTHOR: Ian Barton\n#+DATE: %u\n#+PROPERTY: MODIFIED:
\n#+TITLE\n#+CATEGORY: Blog \n#+PROPERTY: TAGS \n#+PROPERTY:
SUMMARY \n#+SETUPFILE: ../setup.org\n\n")
Not sure if that's what you meant. It didn't work.
--
Best wishes,
Ian.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-09-22 9:15 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-21 8:58 Capture Bug? lists
2016-09-21 11:54 ` Adam Porter
2016-09-21 18:24 ` lists
2016-09-21 20:01 ` Adam Porter
2016-09-21 20:51 ` Nicolas Goaziou
2016-09-22 9:14 ` Ian Barton
2016-09-21 21:38 ` Nick Dokos
2016-09-22 2:54 ` Adam Porter
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).