12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- (require 'ob)
- (require 'ob-eval)
- (defvar org-babel-default-header-args:mscgen
- '((:results . "file") (:exports . "results"))
- "Default arguments to use when evaluating a mscgen source block.")
- (defun org-babel-expand-body:mscgen (body params &optional processed-params)
- "Expand BODY according to PARAMS, return the expanded body." body)
- (defun org-babel-execute:mscgen (body params)
- "Execute a block of Mscgen code with org-babel. This function
- is called by `org-babel-execute-src-block'. Default filetype is
- png. Modify by setting :filetype parameter to mscgen supported
- formats."
- (message "executing Mscgen source code block")
- (let* ((out-file (or (cdr (assoc :file params)) "output.png" ))
- (filetype (or (cdr (assoc :filetype params)) "png" )))
- (unless (cdr (assoc :file params))
- (error (concat
- "\nERROR: no output file specified. "
- "Add \":file some_name.png\" to the src header")))
- (org-babel-eval (concat "mscgen -T " filetype " -o " out-file) body)
- out-file))
- (defun org-babel-prep-session:mscgen (session params)
- "Prepare SESSION according to PARAMS."
- (error "Mscgen does not support sessions"))
- (provide 'ob-mscgen)
|