Function: org-babel-execute:octave
org-babel-execute:octave is a byte-compiled function defined in
ob-octave.el.gz.
Signature
(org-babel-execute:octave BODY PARAMS &optional MATLABP)
Documentation
Execute Octave or Matlab BODY according to PARAMS.
When MATLABP is non-nil, execute Matlab. Otherwise, execute Octave.
Source Code
;; Defined in /usr/src/emacs/lisp/org/ob-octave.el.gz
(defun org-babel-execute:octave (body params &optional matlabp)
"Execute Octave or Matlab BODY according to PARAMS.
When MATLABP is non-nil, execute Matlab. Otherwise, execute Octave."
(let* ((session
(funcall (intern (format "org-babel-%s-initiate-session"
(if matlabp "matlab" "octave")))
(cdr (assq :session params)) params))
(result-type (cdr (assq :result-type params)))
(full-body
(org-babel-expand-body:generic
body params (org-babel-variable-assignments:octave params)))
(gfx-file (ignore-errors (org-babel-graphical-output-file params)))
(result (org-babel-octave-evaluate
session
(if gfx-file
(mapconcat 'identity
(list
"set (0, \"defaultfigurevisible\", \"off\");"
full-body
(format "print -dpng %S\nans=%S" gfx-file gfx-file))
"\n")
full-body)
result-type matlabp)))
(if gfx-file
nil
(org-babel-reassemble-table
result
(org-babel-pick-name
(cdr (assq :colname-names params)) (cdr (assq :colnames params)))
(org-babel-pick-name
(cdr (assq :rowname-names params)) (cdr (assq :rownames params)))))))