emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Matt Price <moptop99@gmail.com>
To: Org Mode <emacs-orgmode@gnu.org>
Subject: Re: teaching with live-updating code examples
Date: Sat, 10 Dec 2016 00:19:21 -0500	[thread overview]
Message-ID: <CAN_Dec8wcasLtZhwgOhgWWaNKyHzT_=x+pMEUke2CWr2YG1MEw@mail.gmail.com> (raw)
In-Reply-To: <87oa0l58bk.fsf@ucl.ac.uk>

[-- Attachment #1: Type: text/plain, Size: 1708 bytes --]

On Fri, Dec 9, 2016 at 12:19 PM, Eric S Fraga <e.fraga@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

[-- Attachment #2: Type: text/html, Size: 5187 bytes --]

  parent reply	other threads:[~2016-12-10  5:20 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <bcd5ea41e88d4128ab2103df173ec879@HE1PR01MB1898.eurprd01.prod.exchangelabs.com>
2016-12-09  6:33 ` teaching with live-updating code examples Eric S Fraga
2016-12-09 16:42   ` Matt Price
     [not found]   ` <68509a97983e4d4e9eaca4922725c87a@HE1PR01MB1898.eurprd01.prod.exchangelabs.com>
2016-12-09 17:19     ` Eric S Fraga
2016-12-10  4:59       ` Matt Price
2016-12-10  5:19       ` Matt Price [this message]
2016-12-08 18:07 Matt Price

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAN_Dec8wcasLtZhwgOhgWWaNKyHzT_=x+pMEUke2CWr2YG1MEw@mail.gmail.com' \
    --to=moptop99@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).