On 24 July 2011 18:48, Bastien <b...@altern.org> wrote: > Hi Philipp, > > Philipp Möller <bootsare...@googlemail.com> writes: > >> nevermind. I figured out that the expansion order of %s and s >> expressions is the problem and also the reason for the with the >> correct URL. >> The solution is to use %(get-page-title (current-kill 0)). > > Thanks for letting us know! > >> Can this be added to the documentation or is it supposed to be obvious >> from the order of available template expansions? > > IMHO this should go in the documentation -- could you provide a patch > for this?
A patch for the doc string and the info manual is attached. Let me know if anything is wrong with it. Philipp > Thanks, > > -- > Bastien >
diff --git a/doc/org.texi b/doc/org.texi index 87f73a8..8c6b137 100644 --- a/doc/org.texi +++ b/doc/org.texi @@ -6526,39 +6526,39 @@ buffer again after capture is completed. In the template itself, special @kbd{%}-escapes@footnote{If you need one of these sequences literally, escape the @kbd{%} with a backslash.} allow -dynamic insertion of content: +dynamic insertion of content. The templates are expanded in the order given here: @smallexample -%^@{@var{prompt}@} @r{prompt the user for a string and replace this sequence with it.} - @r{You may specify a default value and a completion table with} - @r{%^@{prompt|default|completion2|completion3...@}.} - @r{The arrow keys access a prompt-specific history.} +%[@var{file}] @r{insert the contents of the file given by @var{file}.} +%(@var{sexp}) @r{evaluate Elisp @var{sexp} and replace with the result.} +%<...> @r{the result of format-time-string on the ... format specification.} +%t @r{timestamp, date only.} +%T @r{timestamp with date and time.} +%u, %U @r{like the above, but inactive timestamps.} %a @r{annotation, normally the link created with @code{org-store-link}.} -%A @r{like @code{%a}, but prompt for the description part.} %i @r{initial content, the region when capture is called while the} @r{region is active.} @r{The entire text will be indented like @code{%i} itself.} -%t @r{timestamp, date only.} -%T @r{timestamp with date and time.} -%u, %U @r{like the above, but inactive timestamps.} -%^t @r{like @code{%t}, but prompt for date. Similarly @code{%^T}, @code{%^u}, @code{%^U}.} - @r{You may define a prompt like @code{%^@{Birthday@}t}.} -%<...> @r{the result of format-time-string on the ... format specification.} -%n @r{user name (taken from @code{user-full-name}).} +%A @r{like @code{%a}, but prompt for the description part.} %c @r{Current kill ring head.} %x @r{Content of the X clipboard.} -%^C @r{Interactive selection of which kill or clip to use.} -%^L @r{Like @code{%^C}, but insert as link.} %k @r{title of the currently clocked task.} %K @r{link to the currently clocked task.} +%n @r{user name (taken from @code{user-full-name}).} %f @r{file visited by current buffer when org-capture was called.} %F @r{full path of the file or directory visited by current buffer.} +%:keyword @r{specific information for certain link types, see below.} %^g @r{prompt for tags, with completion on tags in target file.} %^G @r{prompt for tags, with completion all tags in all agenda files.} +%^t @r{like @code{%t}, but prompt for date. Similarly @code{%^T}, @code{%^u}, @code{%^U}.} + @r{You may define a prompt like @code{%^@{Birthday@}t}.} +%^C @r{Interactive selection of which kill or clip to use.} +%^L @r{Like @code{%^C}, but insert as link.} %^@{@var{prop}@}p @r{Prompt the user for a value for property @var{prop}.} -%:keyword @r{specific information for certain link types, see below.} -%[@var{file}] @r{insert the contents of the file given by @var{file}.} -%(@var{sexp}) @r{evaluate Elisp @var{sexp} and replace with the result.} +%^@{@var{prompt}@} @r{prompt the user for a string and replace this sequence with it.} + @r{You may specify a default value and a completion table with} + @r{%^@{prompt|default|completion2|completion3...@}.} + @r{The arrow keys access a prompt-specific history.} @end smallexample @noindent
diff --git a/lisp/org-capture.el b/lisp/org-capture.el index d80bddc..d18dd96 100644 --- a/lisp/org-capture.el +++ b/lisp/org-capture.el @@ -206,39 +206,40 @@ properties are: capture was invoked, kill the buffer again after capture is finalized. -The template defines the text to be inserted. Often this is an org-mode -entry (so the first line should start with a star) that will be filed as a -child of the target headline. It can also be freely formatted text. -Furthermore, the following %-escapes will be replaced with content: +The template defines the text to be inserted. Often this is an +org-mode entry (so the first line should start with a star) that +will be filed as a child of the target headline. It can also be +freely formatted text. Furthermore, the following %-escapes will +be replaced with content and expanded in this order: - %^{prompt} prompt the user for a string and replace this sequence with it. - A default value and a completion table ca be specified like this: - %^{prompt|default|completion2|completion3|...}. + %[pathname] insert the contents of the file given by `pathname'. + %(sexp) evaluate elisp `(sexp)' and replace with the result. + %<...> the result of format-time-string on the ... format specification. %t time stamp, date only. %T time stamp with date and time. %u, %U like the above, but inactive time stamps. - %^t like %t, but prompt for date. Similarly %^T, %^u, %^U. - You may define a prompt like %^{Please specify birthday. - %<...> the result of format-time-string on the ... format specification. - %n user name (taken from `user-full-name'). %a annotation, normally the link created with `org-store-link'. %i initial content, copied from the active region. If %i is indented, the entire inserted text will be indented as well. + %A like %a, but prompt for the description part. %c current kill ring head. %x content of the X clipboard. - %^C interactive selection of which kill or clip to use. - %^L like %^C, but insert as link. %k title of currently clocked task. %K link to currently clocked task. + %n user name (taken from `user-full-name'). %f file visited by current buffer when org-capture was called. %F full path of the file or directory visited by current buffer. + %:keyword specific information for certain link types, see below. %^g prompt for tags, with completion on tags in target file. %^G prompt for tags, with completion on all tags in all agenda files. + %^t like %t, but prompt for date. Similarly %^T, %^u, %^U. + You may define a prompt like %^{Please specify birthday. + %^C interactive selection of which kill or clip to use. + %^L like %^C, but insert as link. %^{prop}p prompt the user for a value for property `prop'. - %:keyword specific information for certain link types, see below. - %[pathname] insert the contents of the file given by `pathname'. - %(sexp) evaluate elisp `(sexp)' and replace with the result. - + %^{prompt} prompt the user for a string and replace this sequence with it. + A default value and a completion table ca be specified like this: + %^{prompt|default|completion2|completion3|...}. %? After completing the template, position cursor here. Apart from these general escapes, you can access information specific to the