forked from mirrors/org-mode
org-babel-expand-body:ocaml
This commit is contained in:
parent
e07aced178
commit
8e9f4eec88
|
@ -48,15 +48,19 @@
|
||||||
(defvar org-babel-ocaml-eoe-indicator "\"org-babel-ocaml-eoe\";;")
|
(defvar org-babel-ocaml-eoe-indicator "\"org-babel-ocaml-eoe\";;")
|
||||||
(defvar org-babel-ocaml-eoe-output "org-babel-ocaml-eoe")
|
(defvar org-babel-ocaml-eoe-output "org-babel-ocaml-eoe")
|
||||||
|
|
||||||
|
(defun org-babel-expand-body:ocaml (body params &optional processed-params)
|
||||||
|
(let ((vars (second (or processed-params (org-babel-process-params params)))))
|
||||||
|
(concat
|
||||||
|
(mapconcat
|
||||||
|
(lambda (pair) (format "let %s = %s;" (car pair) (cdr pair)))
|
||||||
|
vars "\n") "\n" body "\n")))
|
||||||
|
|
||||||
(defun org-babel-execute:ocaml (body params)
|
(defun org-babel-execute:ocaml (body params)
|
||||||
"Execute a block of Ocaml code with org-babel."
|
"Execute a block of Ocaml code with org-babel."
|
||||||
(message "executing ocaml source code block")
|
(message "executing ocaml source code block")
|
||||||
(let* ((processed-params (org-babel-process-params params))
|
(let* ((processed-params (org-babel-process-params params))
|
||||||
(vars (second processed-params))
|
(vars (second processed-params))
|
||||||
(full-body (concat
|
(full-body (org-babel-expand-body:ocaml body params processed-params))
|
||||||
(mapconcat
|
|
||||||
(lambda (pair) (format "let %s = %s;" (car pair) (cdr pair)))
|
|
||||||
vars "\n") "\n" body "\n"))
|
|
||||||
(session (org-babel-prep-session:ocaml session params))
|
(session (org-babel-prep-session:ocaml session params))
|
||||||
(raw (org-babel-comint-with-output session org-babel-ocaml-eoe-output t
|
(raw (org-babel-comint-with-output session org-babel-ocaml-eoe-output t
|
||||||
(insert (concat (org-babel-chomp full-body) " ;;"))
|
(insert (concat (org-babel-chomp full-body) " ;;"))
|
||||||
|
|
Loading…
Reference in New Issue