Preserve indentation of explicitly indented lines in example blocks

* lisp/org.el (org-indent-line-function): Made the way in which example blocks are
  indented more flexible.

Before: Lines in example blocks were indented like the surrounding begin and end
delimiters.
After: By default, lines in example blocks are indented like the surrounding begin and end
delimiters, unless the user explicitly indents them differently.

TINYCHANGE
This commit is contained in:
Valentin Wüstholz 2011-08-09 21:28:56 +02:00 committed by Nicolas Goaziou
parent 06591f2ccc
commit ce6010262d

View file

@ -19460,10 +19460,14 @@ If point is in an inline task, mark that task instead."
(save-excursion
(re-search-backward "^[ \t]*#\\+begin_\\([a-z]+\\)" nil t))
(setq column
(if (equal (downcase (match-string 1)) "src")
;; src blocks: let `org-edit-src-exit' handle them
(org-get-indentation)
(org-get-indentation (match-string 0)))))
(cond ((equal (downcase (match-string 1)) "src")
;; src blocks: let `org-edit-src-exit' handle them
(org-get-indentation))
((equal (downcase (match-string 1)) "example")
(max (org-get-indentation)
(org-get-indentation (match-string 0))))
(t
(org-get-indentation (match-string 0))))))
;; This line has nothing special, look at the previous relevant
;; line to compute indentation
(t