diff --git a/lisp/ox.el b/lisp/ox.el index ac0366249..0b9f4f0cb 100644 --- a/lisp/ox.el +++ b/lisp/ox.el @@ -2732,7 +2732,7 @@ returned by the function." ;; Splice NEW at BLOB location in parse tree. (dolist (e new (org-element-extract-element blob)) (unless (string= e "") (org-element-insert-before e blob)))))) - info) + info nil nil t) ;; Return modified parse tree. data) diff --git a/testing/lisp/test-ox.el b/testing/lisp/test-ox.el index e795226de..ed4a483d9 100644 --- a/testing/lisp/test-ox.el +++ b/testing/lisp/test-ox.el @@ -762,6 +762,29 @@ Paragraph <2012-03-29 Thu>[2012-03-29 Thu]" (plist-get i :title) i))) (section . (lambda (s c i) c)))) nil nil nil '(:with-sub-superscript nil))))) + ;; Handle uninterpreted objects in captions. + (should + (equal "adummy\n" + (org-test-with-temp-text "#+CAPTION: a_b\nParagraph" + (org-export-as + (org-export-create-backend + :transcoders + '((subscript . (lambda (s c i) "dummy")) + (paragraph . (lambda (p c i) + (org-export-data (org-export-get-caption p) i))) + (section . (lambda (s c i) c)))) + nil nil nil '(:with-sub-superscript t))))) + (should + (equal "a_b\n" + (org-test-with-temp-text "#+CAPTION: a_b\nParagraph" + (org-export-as + (org-export-create-backend + :transcoders + '((subscript . (lambda (s c i) "dummy")) + (paragraph . (lambda (p c i) + (org-export-data (org-export-get-caption p) i))) + (section . (lambda (s c i) c)))) + nil nil nil '(:with-sub-superscript nil))))) ;; Special case: multiples uninterpreted objects in a row. (should (equal "a_b_c_d\n"