emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [PATCH] Add 'inline-only option to org-export-babel-evaluate


From: Eric Schulte
Subject: Re: [O] [PATCH] Add 'inline-only option to org-export-babel-evaluate
Date: Tue, 02 Apr 2013 16:14:19 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

I'm happy to apply this patch, however please also supply a patch which
updates the corresponding documentation.

Thanks!

Aaron Ecay <address@hidden> writes:

> * lisp/ob-exp.el (org-export-babel-evaluate): Update defcustom to
>   provide 'inline-only option
>   (org-babel-exp-results): Implement 'inline-only for
>   org-export-babel-evaluate
>
> This is useful because there is no way for inline results to be stored.
> The imagined usecase is that all non-inline source blocks will be
> evaluated manually by the user.  Inline blocks, however, must be
> evaluated during export, or they will be simply deleted by the exporter.
> ---
>  lisp/ob-exp.el | 11 ++++++++---
>  1 file changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/lisp/ob-exp.el b/lisp/ob-exp.el
> index 0d98690..6783bd5 100644
> --- a/lisp/ob-exp.el
> +++ b/lisp/ob-exp.el
> @@ -52,10 +52,13 @@
>  (defcustom org-export-babel-evaluate t
>    "Switch controlling code evaluation during export.
>  When set to nil no code will be evaluated as part of the export
> -process."
> +process.  When set to 'inline-only, only inline code blocks will
> +be executed."
>    :group 'org-babel
>    :version "24.1"
> -  :type 'boolean)
> +  :type '(choice (const :tag "Never" nil)
> +              (const :tag "Only inline code" inline-only)
> +              (const :tag "Always" t)))
>  (put 'org-export-babel-evaluate 'safe-local-variable (lambda (x) (eq x nil)))
>  
>  (defun org-babel-exp-get-export-buffer ()
> @@ -378,7 +381,9 @@ Results are prepared in a manner suitable for export by 
> org-mode.
>  This function is called by `org-babel-exp-do-export'.  The code
>  block will be evaluated.  Optional argument SILENT can be used to
>  inhibit insertion of results into the buffer."
> -  (when (and org-export-babel-evaluate
> +  (when (and (or (eq org-export-babel-evaluate t)
> +              (and (eq type 'inline)
> +                   (eq org-export-babel-evaluate 'inline-only)))
>            (not (and hash (equal hash (org-babel-current-result-hash)))))
>      (let ((lang (nth 0 info))
>         (body (if (org-babel-noweb-p (nth 2 info) :eval)

-- 
Eric Schulte
http://cs.unm.edu/~eschulte



reply via email to

[Prev in Thread] Current Thread [Next in Thread]