summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <n.goaziou@gmail.com>2012-01-31 20:21:44 +0100
committerNicolas Goaziou <n.goaziou@gmail.com>2012-01-31 20:21:44 +0100
commit182970cf8e680943483fcece79d17070b783bb72 (patch)
treecfe96125535a69587e46f196499a464e53e9a4c1
parent900b988742f52cf88ae976b89587591a52709a53 (diff)
downloadorg-mode-182970cf8e680943483fcece79d17070b783bb72.tar.gz
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.
-rw-r--r--lisp/org-exp.el12
1 files changed, 7 insertions, 5 deletions
diff --git a/lisp/org-exp.el b/lisp/org-exp.el
index 8a7ca62..2373613 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))