فهرست منبع

ox: Fix uninterpreted data in captions

* lisp/ox.el (org-export--remove-uninterpreted-data-1): Handle
  uninterpreted data in captions.

* testing/lisp/test-ox.el (test-org-export/uninterpreted): Add tests.

Reported-by: Johannes Rainer <johannes.rainer@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/100476>
Nicolas Goaziou 9 سال پیش
والد
کامیت
48f009bc9f
2فایلهای تغییر یافته به همراه24 افزوده شده و 1 حذف شده
  1. 1 1
      lisp/ox.el
  2. 23 0
      testing/lisp/test-ox.el

+ 1 - 1
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)
 

+ 23 - 0
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"