summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2020-04-07 01:21:33 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2020-04-07 01:21:33 +0200
commite3373f4beb16395f17e54c3494c0c7e53222ebcd (patch)
treeef39348f1995184d199ccd090ca2d8a1c960be2f
parente1961c543a9871ee79ff36e7a11453397aede0d4 (diff)
downloadorg-mode-e3373f4beb16395f17e54c3494c0c7e53222ebcd.tar.gz
ob-core: Properly replace results in special blocks
* lisp/ob-core.el (org-babel-result-end): Handle results in special blocks. * testing/lisp/test-ob.el (test-ob/replace-special-block-result): New test.
-rw-r--r--lisp/ob-core.el2
-rw-r--r--testing/lisp/test-ob.el11
2 files changed, 12 insertions, 1 deletions
diff --git a/lisp/ob-core.el b/lisp/ob-core.el
index 9ab2fa9..4689a47 100644
--- a/lisp/ob-core.el
+++ b/lisp/ob-core.el
@@ -2488,7 +2488,7 @@ in the buffer."
(if (memq (org-element-type element)
;; Possible results types.
'(drawer example-block export-block fixed-width item
- plain-list src-block table))
+ plain-list special-block src-block table))
(save-excursion
(goto-char (min (point-max) ;for narrowed buffers
(org-element-property :end element)))
diff --git a/testing/lisp/test-ob.el b/testing/lisp/test-ob.el
index 97e1b49..fdd8a0d 100644
--- a/testing/lisp/test-ob.el
+++ b/testing/lisp/test-ob.el
@@ -545,6 +545,17 @@ duplicate results block."
(org-babel-next-src-block 1)
(should (looking-at org-babel-src-block-regexp))))
+(ert-deftest test-ob/replace-special-block-result ()
+ (should-error
+ (org-test-with-temp-text "
+#+begin_src emacs-lisp :wrap special<point>
+'foo
+#+end_src"
+ (org-babel-execute-src-block)
+ (org-babel-execute-src-block)
+ (buffer-string)
+ (search-forward "#+begin_special" nil nil 2))))
+
(ert-deftest test-ob/catches-all-references ()
(org-test-with-temp-text "
#+NAME: literal-example