[O] Bug: Org capture: Invalid use of ‘\’ in replacement text [9.1.14 (9.1.14-1049-g04641c-elpaplus @ /home/ionasal/.emacs.d/elpa/org-plus-contrib-20181203/)]
There's an escaping bug in Org capture: 1. emacs -Q 2. Evaluate: (setq org-capture-templates '(("Z" "org-protocol capture" entry (file "/tmp/tmp") "* %? %(let ((x \"%:annotation\")) (if (string= x \"\") \"\" (concat x \"\\n\")))%i"))) 3. Evaluate (require 'org-protocol) 4. Evaluate to simulate org protocol capture: (org-protocol-capture '(:template "Z" :body "foo\nbar\n")) Causes error: (error "Capture abort: (error Invalid use of ‘\\’ in replacement text)") org-protocol is used in the example as that's where I encountered it, but the bug is in org-capture proper. Note that this works: (org-protocol-capture '(:template "Z" :body "foo")) Emacs : GNU Emacs 26.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30) of 2018-07-05 Package: Org mode version 9.1.14 (9.1.14-1049-g04641c-elpaplus @ /home/ionasal/.emacs.d/elpa/org-plus-contrib-20181203/)
Re: [O] Bug: Org capture: Invalid use of ‘\’ in replacement text [9.1.14 (9.1.14-1049-g04641c-elpaplus @ /home/ionasal/.emacs.d/elpa/org-plus-contrib-20181203/)]
Hello, Allen Li writes: > There's an escaping bug in Org capture: > > 1. emacs -Q > 2. Evaluate: > > (setq org-capture-templates >'(("Z" "org-protocol capture" entry > (file "/tmp/tmp") > "* %? > %(let ((x \"%:annotation\")) (if (string= x \"\") \"\" (concat x > \"\\n\")))%i"))) > > 3. Evaluate (require 'org-protocol) > > 4. Evaluate to simulate org protocol capture: > > (org-protocol-capture '(:template "Z" :body "foo\nbar\n")) > > Causes error: > > (error "Capture abort: (error Invalid use of ‘\\’ in replacement > text)") Fixed. Thank you. Regards, -- Nicolas Goaziou