emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] [PATCH] inline src block results can be removed


From: Charles C. Berry
Subject: Re: [O] [PATCH] inline src block results can be removed
Date: Wed, 12 Nov 2014 15:47:07 -0800
User-agent: Alpine 2.00 (OSX 1167 2008-08-23)

On Wed, 12 Nov 2014, Aaron Ecay wrote:

Hi Chuck,

2014ko azaroak 12an, "Charles C. Berry"-ek idatzi zuen:

Inline src blocks cannot update their results --- causing some of us
heaadaches [1].

These patches fix that by placing the result of an inline src block in an
export snippet with a faux :back-end called 'babel'.

So C-c C-c with point on src_R{1+2} will insert `@@babel:3@@'. Updating
the contents of the inline src block and retyping C-c C-c will update the
snippet. On export, these snippets are rendered using the verbatim
transcoder, e.g. \texttt{3} for latex backends.

Support for most backends is provided.

org-babel-execute-buffer will also update such snippets.

Instead of using an export snippet, which requires per-backend changes,
you could wrap results in a macro, e.g. {{{results(2)}}}.

Users could customize this macro per-buffer (with the usual #+macro
keyword) to provide their own formatting of inline results.  You
could provide the fallback interpretation in the second call to
‘org-macro-replace-all’ in ‘org-export-as’ (currently responsible
for expanding a few macros like {{{author}}} and {{{date}}}).

What do you think of this idea?


Aaron,

I like the flexibility that macros would allow.

Some care needs to be taken with commas, but not a big deal.

I don't think the usual #+MACRO works here, as the definition would be found in `org-macro-templates' by the first call and existing stuff would be expanded instead of being left for babel to remove it. But setting it up as a document keyword should work, right?

Don't know if there are other gotchas.

Maybe a limited collection of formats could be set up to support basic markup options and the macro could choose amongst them with a second arg set by a babel header arg.

I am not quite sure how to marry this to header args. Maybe the :wrap header arg should be hijacked for inline src blocks to specify a macro for the results.

I mean, does anyone actually use stuff like src_R[:wrap latex]{1+2}? The current result cannot be parsed as an export block, AFAICS.

Chuck

reply via email to

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