From 182970cf8e680943483fcece79d17070b783bb72 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 31 Jan 2012 20:21:44 +0100 Subject: [PATCH] org-exp: Fix export error with code blocks within lists * lisp/org-exp.el (org-export-select-backend-specific-text): Always preserve original indentation as a text property so that lists do not get broken by indentation at column 0. --- lisp/org-exp.el | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lisp/org-exp.el b/lisp/org-exp.el index 8a7ca6227..2373613ca 100644 --- a/lisp/org-exp.el +++ b/lisp/org-exp.el @@ -1730,10 +1730,11 @@ from the buffer." ":[ \t]*\\(.*\\)") nil t) (if (not (eq backend org-export-current-backend)) (delete-region (point-at-bol) (min (1+ (point-at-eol)) (point-max))) - (replace-match "\\1\\2" t) - (add-text-properties - (point-at-bol) (min (1+ (point-at-eol)) (point-max)) - `(org-protected t original-indentation ,ind org-native-text t)))) + (let ((ind (get-text-property (point-at-bol) 'original-indentation))) + (replace-match "\\1\\2" t) + (add-text-properties + (point-at-bol) (min (1+ (point-at-eol)) (point-max)) + `(org-protected t original-indentation ,ind org-native-text t))))) ;; Delete #+ATTR_BACKEND: stuff of another backend. Those ;; matching the current backend will be taken care of by ;; `org-export-attach-captions-and-attributes' @@ -1748,7 +1749,8 @@ from the buffer." (while (re-search-forward (concat "^[ \t]*#\\+BEGIN_" backend-name "\\>.*\n?") nil t) (setq beg (match-beginning 0) beg-content (match-end 0)) - (setq ind (save-excursion (goto-char beg) (org-get-indentation))) + (setq ind (or (get-text-property beg 'original-indentation) + (save-excursion (goto-char beg) (org-get-indentation)))) (when (re-search-forward (concat "^[ \t]*#\\+END_" backend-name "\\>.*\n?") nil t) (setq end (match-end 0) end-content (match-beginning 0)) -- 2.11.4.GIT