Function: org-babel-execute:gnuplot
org-babel-execute:gnuplot is a byte-compiled function defined in
ob-gnuplot.el.gz.
Signature
(org-babel-execute:gnuplot BODY PARAMS)
Documentation
Execute Gnuplot BODY according to PARAMS.
This function is called by org-babel-execute-src-block.
Source Code
;; Defined in /usr/src/emacs/lisp/org/ob-gnuplot.el.gz
(defun org-babel-execute:gnuplot (body params)
"Execute Gnuplot BODY according to PARAMS.
This function is called by `org-babel-execute-src-block'."
(org-require-package 'gnuplot)
(let ((session (cdr (assq :session params)))
(result-type (cdr (assq :results params)))
(body (org-babel-expand-body:gnuplot body params))
output)
(save-window-excursion
;; evaluate the code body with gnuplot
(if (string= session "none")
(let ((script-file (org-babel-temp-file "gnuplot-script-")))
(with-temp-file script-file
(insert (concat body "\n")))
(unless noninteractive (message "gnuplot \"%s\"" script-file))
(setq output
(shell-command-to-string
(format
"gnuplot \"%s\""
(org-babel-process-file-name
script-file
(if (member system-type '(cygwin windows-nt ms-dos))
t nil)))))
(unless noninteractive (message "%s" output)))
(with-temp-buffer
(insert (concat body "\n"))
(gnuplot-mode)
(gnuplot-send-buffer-to-gnuplot)))
(if (member "output" (split-string result-type))
output
nil)))) ;; signal that output has already been written to file