From a7e12d2af5293a71473e1ca175f1c1ac087d4c04 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 29 Mar 2014 22:39:09 +0100 Subject: [PATCH] ox: Fix multiple deactivated subscripts export * lisp/ox.el (org-export--remove-uninterpreted-data-1): Fix multiple deactivated subscripts export. * testing/lisp/test-ox.el (test-org-export/uninterpreted): Add test. Thanks to Xavier Garrido for reporting it. http://permalink.gmane.org/gmane.emacs.orgmode/84403 --- lisp/ox.el | 4 ++-- testing/lisp/test-ox.el | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/lisp/ox.el b/lisp/ox.el index 9f77af4e1..fc0e98739 100644 --- a/lisp/ox.el +++ b/lisp/ox.el @@ -2379,8 +2379,8 @@ returned by the function." ?\s))))))))))) (when new ;; Splice NEW at BLOB location in parse tree. - (dolist (e new) (org-element-insert-before e blob)) - (org-element-extract-element blob)))) + (dolist (e new (org-element-extract-element blob)) + (unless (string= e "") (org-element-insert-before e blob)))))) info) ;; Return modified parse tree. data) diff --git a/testing/lisp/test-ox.el b/testing/lisp/test-ox.el index fe20496a1..c3c63b51e 100644 --- a/testing/lisp/test-ox.el +++ b/testing/lisp/test-ox.el @@ -690,7 +690,17 @@ Paragraph <2012-03-29 Thu>[2012-03-29 Thu]" (template . (lambda (c i) (org-export-data (plist-get i :title) i))) (section . (lambda (s c i) c)))) - nil nil nil '(:with-sub-superscript nil)))))) + nil nil nil '(:with-sub-superscript nil))))) + ;; Special case: multiples uninterpreted objects in a row. + (should + (equal "a_b_c_d\n" + (org-test-with-temp-text "a_b_c_d" + (org-export-as + (org-export-create-backend + :transcoders '((subscript . (lambda (s c i) "dummy")) + (paragraph . (lambda (p c i) c)) + (section . (lambda (s c i) c)))) + nil nil nil '(:with-sub-superscript {})))))) (ert-deftest test-org-export/export-scope () "Test all export scopes."