Browse Source

org-capture.el: Use %\n instead of %n.

* org-capture.el (org-capture-fill-template): Use %\n instead of %n as a
template element to be replaced with the nth prompted string.
(org-capture-templates): Update docstring.

* org.texi (Template expansion): Update doc to reflect change.

Using %n triggers errors when the template contains escaped strings,
which happens a lot with links.
Bastien Guerry 13 years ago
parent
commit
1666b910fe
2 changed files with 3 additions and 3 deletions
  1. 1 1
      doc/org.texi
  2. 2 2
      lisp/org-capture.el

+ 1 - 1
doc/org.texi

@@ -6700,7 +6700,7 @@ dynamic insertion of content.  The templates are expanded in the order given her
             @r{You may specify a default value and a completion table with}
             @r{You may specify a default value and a completion table with}
             @r{%^@{prompt|default|completion2|completion3...@}.}
             @r{%^@{prompt|default|completion2|completion3...@}.}
             @r{The arrow keys access a prompt-specific history.}
             @r{The arrow keys access a prompt-specific history.}
-%<n>        @r{Insert the text entered at the nth %^@{@var{prompt}@}, where <n> is}
+%\n         @r{Insert the text entered at the nth %^@{@var{prompt}@}, where @code{n} is}
             @r{a number, starting from 1.}
             @r{a number, starting from 1.}
 %?          @r{After completing the template, position cursor here.}
 %?          @r{After completing the template, position cursor here.}
 @end smallexample
 @end smallexample

+ 2 - 2
lisp/org-capture.el

@@ -248,7 +248,7 @@ be replaced with content and expanded in this order:
               A default value and a completion table ca be specified like this:
               A default value and a completion table ca be specified like this:
               %^{prompt|default|completion2|completion3|...}.
               %^{prompt|default|completion2|completion3|...}.
   %?          After completing the template, position cursor here.
   %?          After completing the template, position cursor here.
-  %<n>        Insert the text entered at the nth %^{prompt}, where <n> is
+  %\\n         Insert the text entered at the nth %^{prompt}, where `n' is
               a number, starting from 1.
               a number, starting from 1.
 
 
 Apart from these general escapes, you can access information specific to the
 Apart from these general escapes, you can access information specific to the
@@ -1480,7 +1480,7 @@ The template may still contain \"%?\" for cursor positioning."
       ;; Replace %n escapes with nth %^{...} string
       ;; Replace %n escapes with nth %^{...} string
       (setq strings (nreverse strings))
       (setq strings (nreverse strings))
       (goto-char (point-min))
       (goto-char (point-min))
-      (while (re-search-forward "%\\([1-9][0-9]*\\)" nil t)
+      (while (re-search-forward "%\\\\\\([1-9][0-9]*\\)" nil t)
 	(unless (org-capture-escaped-%)
 	(unless (org-capture-escaped-%)
 	  (replace-match
 	  (replace-match
 	   (nth (1- (string-to-number (match-string 1))) strings)
 	   (nth (1- (string-to-number (match-string 1))) strings)