1

I have the following source block of Scheme code:

#+BEGIN_SRC scheme :results value verbatim append
(define shift
  (lambda (list-with-sublists)
    (cond
     [(pair? (car list-with-sublists))
      (cons (car (car list-with-sublists))
            (cons (cdr (car list-with-sublists))
                  (cdr list-with-sublists)))]
     [else
      (cons (car list-with-sublists)
            (cdr list-with-sublists))])))

(shift '(a (b c) d))
#+END_SRC

However, it seems that org-mode cannot resist formatting the resulting list as a table and it will output tables, disregarding the verbatim argument:

#+RESULTS:
| a | (b c) | d |
| a | (b c) | d |
| a | (b c) | d |

I have tried it with silent and in the minibuffer the output is only a string (a (b c) d). So I went ahead and tried to output the same string in Python, to see, whether it is programming language related:

#+BEGIN_SRC python :results output verbatim replace
print("(a (b c) d)")
#+END_SRC

#+RESULTS:
: (a (b c) d)

This works just fine. verbatim only does not work for my Scheme code.

What am I doing wrong?

Versions

  • Emacs: GNU Emacs 26.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.0) of 2018-11-14
  • Org-mode: 9.1.9 (built-in)

Edit

By now I have figured out, that I can get a string output, but only, if I format the Scheme value as a string already in my code. Probably the issue is, that Org-babel does not know how to deal with arbitrary values from any programming language.

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.