Function: org-babel--normalize-body

org-babel--normalize-body is a byte-compiled function defined in ob-core.el.gz.

Signature

(org-babel--normalize-body DATUM)

Documentation

Normalize body for element or object DATUM.

DATUM is a source block element or an inline source block object. Remove final newline character and spurious indentation.

Source Code

;; Defined in /usr/src/emacs/lisp/org/ob-core.el.gz
(defun org-babel--normalize-body (datum)
  "Normalize body for element or object DATUM.
DATUM is a source block element or an inline source block object.
Remove final newline character and spurious indentation."
  (let* ((value (org-element-property :value datum))
	 (body (if (string-suffix-p "\n" value)
		   (substring value 0 -1)
		 value)))
    (cond ((org-element-type-p datum 'inline-src-block)
	   ;; Newline characters and indentation in an inline
	   ;; src-block are not meaningful, since they could come from
	   ;; some paragraph filling.  Treat them as a white space.
	   (replace-regexp-in-string "\n[ \t]*" " " body))
	  ((org-src-preserve-indentation-p datum) body)
	  (t (org-remove-indentation body)))))