forked from mirrors/org-mode
org-babel-asymptote now supports interactive viewing if the :file header argument is missing
This commit is contained in:
parent
8e87868df2
commit
a704ce4896
|
@ -34,7 +34,9 @@
|
|||
;;
|
||||
;; 2) we are generally only going to return results of type "file"
|
||||
;;
|
||||
;; 3) we are adding the "file" and "cmdline" header arguments
|
||||
;; 3) we are adding the "file" and "cmdline" header arguments, if file
|
||||
;; is omitted then the -V option is passed to the asy command for
|
||||
;; interactive viewing
|
||||
;;
|
||||
;; 4) there are no variables (at least for now)
|
||||
|
||||
|
@ -60,14 +62,19 @@ called by `org-babel-execute-src-block'."
|
|||
(message "executing Asymptote source code block")
|
||||
(let* ((result-params (split-string (or (cdr (assoc :results params)) "")))
|
||||
(out-file (cdr (assoc :file params)))
|
||||
(format (or (and (string-match ".+\\.\\(.+\\)" out-file)
|
||||
(format (or (and out-file
|
||||
(string-match ".+\\.\\(.+\\)" out-file)
|
||||
(match-string 1 out-file))
|
||||
"pdf"))
|
||||
(cmdline (cdr (assoc :cmdline params)))
|
||||
(in-file (make-temp-file "org-babel-asymptote")))
|
||||
(in-file (make-temp-file "org-babel-asymptote"))
|
||||
(cmd (concat "asy "
|
||||
(if out-file
|
||||
(concat "-globalwrite -f " format " -o " out-file)
|
||||
"-V")
|
||||
" " cmdline " " in-file)))
|
||||
(with-temp-file in-file (insert body))
|
||||
(message (concat "asy -globalwrite -f " format " -o " out-file " " cmdline " " in-file))
|
||||
(shell-command (concat "asy -globalwrite -f " format " -o " out-file " " cmdline " " in-file))
|
||||
(message cmd) (shell-command cmd)
|
||||
out-file))
|
||||
|
||||
(defun org-babel-prep-session:asymptote (session params)
|
||||
|
|
Loading…
Reference in New Issue