summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <n.goaziou@gmail.com>2014-01-29 08:05:44 (GMT)
committer Nicolas Goaziou <n.goaziou@gmail.com>2014-01-29 08:05:44 (GMT)
commit98eed5baf9fe7cd6955bcae74eab4466b1d86a9c (patch)
treea3fb03be9e6febcc54aaf7eca3a1720c0357b85f
parentba724406f9461dab694f31c1ba2054d1872ca654 (diff)
parent63a2a403a92f77ddb2035996a41a5fd77bed61af (diff)
downloadorg-mode-98eed5baf9fe7cd6955bcae74eab4466b1d86a9c.zip
org-mode-98eed5baf9fe7cd6955bcae74eab4466b1d86a9c.tar.gz
Merge branch 'maint'
-rw-r--r--lisp/ob-exp.el7
-rw-r--r--testing/lisp/test-ob-exp.el13
2 files changed, 17 insertions, 3 deletions
diff --git a/lisp/ob-exp.el b/lisp/ob-exp.el
index 509a6d8..38affaa 100644
--- a/lisp/ob-exp.el
+++ b/lisp/ob-exp.el
@@ -311,7 +311,7 @@ The function respects the value of the :exports header argument."
(org-babel-exp-code info)))))
(defcustom org-babel-exp-code-template
- "#+BEGIN_SRC %lang%flags\n%body\n#+END_SRC"
+ "#+BEGIN_SRC %lang%switches%flags\n%body\n#+END_SRC"
"Template used to export the body of code blocks.
This template may be customized to include additional information
such as the code block name, or the values of particular header
@@ -321,6 +321,7 @@ and the following %keys may be used.
lang ------ the language of the code block
name ------ the name of the code block
body ------ the body of the code block
+ switches -- the switches associated to the code block
flags ----- the flags passed to the code block
In addition to the keys mentioned above, every header argument
@@ -343,8 +344,10 @@ replaced with its value."
org-babel-exp-code-template
`(("lang" . ,(nth 0 info))
("body" . ,(org-escape-code-in-string (nth 1 info)))
+ ("switches" . ,(let ((f (nth 3 info)))
+ (and (org-string-nw-p f) (concat " " f))))
("flags" . ,(let ((f (assq :flags (nth 2 info))))
- (when f (concat " " (cdr f)))))
+ (and f (concat " " (cdr f)))))
,@(mapcar (lambda (pair)
(cons (substring (symbol-name (car pair)) 1)
(format "%S" (cdr pair))))
diff --git a/testing/lisp/test-ob-exp.el b/testing/lisp/test-ob-exp.el
index f8858b5..d09e9eb 100644
--- a/testing/lisp/test-ob-exp.el
+++ b/testing/lisp/test-ob-exp.el
@@ -303,10 +303,21 @@ Here is one at the end of a line. =2=
(org-export-execute-babel-code)
(buffer-string)))))
+(ert-deftest ob-export/export-src-block-with-switches ()
+ "Test exporting a source block with switches."
+ (should
+ (string-match
+ "\\`#\\+BEGIN_SRC emacs-lisp -n -r$"
+ (org-test-with-temp-text
+ "#+BEGIN_SRC emacs-lisp -n -r\n\(+ 1 1)\n#+END_SRC"
+ (org-export-execute-babel-code)
+ (buffer-string)))))
+
(ert-deftest ob-export/export-src-block-with-flags ()
"Test exporting a source block with a flag."
(should
- (string-match "\\`#\\+BEGIN_SRC emacs-lisp -some-flag$"
+ (string-match
+ "\\`#\\+BEGIN_SRC emacs-lisp -some-flag$"
(org-test-with-temp-text
"#+BEGIN_SRC emacs-lisp :flags -some-flag\n\(+ 1 1)\n#+END_SRC"
(org-export-execute-babel-code)