On Fri, Dec 9, 2016 at 12:19 PM, Eric S Fraga <e.fr...@ucl.ac.uk> wrote:

> On Friday,  9 Dec 2016 at 16:42, Matt Price wrote:
> > I think I am getting closer, actually (details soon, when I have a
> > fully working  solution)).
>
> I look forward to seeing it!
>

OK, I've run into the limits of my knowledge.

There are at least 2 plugins that will give a live code execution
environemnt within an HTML presentation:
- RevealEditor, which adds one global Ace editor instance to the
presentation, and which shows the live rendering of HTML, CSS, and JS code
when the html encoding follows the format:

<pre><code class="hljs js" data-trim contenteditable>[1,2,3].map ((x) => x + 1)
</code></pre>


- klipse, which  instantiates a new instance of CodeMirror for every
appropriately formatted set of tags in the form:

<klipse-snippet data-language="javascript">[1,2,3].map ((x) => x +
1)</klipse-snippet>

Meanwhile, html export (and also reveal export) will give something more like:

<pre  class="src src-javascript"><span style="color:
#8c8c8c;">[</span>1,2,3<span style="color: #8c8c8c;">]</span>.map
<span style="color: #8c8c8c;">((</span>x<span style="color:
#8c8c8c;">)</span> =&gt; x + 1<span style="color: #8c8c8c;">)</span>

I would like to conditionally export

- revealeditor-compatible code if (a) a flag "org-reveal-use-editor"
is set AND (b) the code block meets certain criteria, e.g. language
and maybe something in the header like "make-live t"

- klipse-compatible code if (a) a flag "org-reveal-klipsify is set AND
similar conditions to (b) above

- standard html output if neither of the above conditions is met.

What are the best ways do achieve this, do you think? Thanks guys,

Matt

Reply via email to