klipse

Yehonathan Sharvit 2019-05-21T05:21:44.023400Z

@porkostomus That sounds like a cool project. You have two options here: First Option: Not using Klipse for the UI but only using Klipse for the cljs evaluation. There is a repo that exposes an eval function here: https://github.com/viebel/klipse-clj Second Option: Using Klipse for both the UI and the cljs evaluation. In that case, you can use the global var klipse_editors that is an array of codemirror editors and use getValue() to retrieve the content of each editor e.g. klipse_editors[0].getValue() (see https://github.com/viebel/klipse#access-the-codemirror-editors-programmaticaly).

Yehonathan Sharvit 2019-05-21T05:23:46.025800Z

I guess that you want to allow the user to add a Klipse snippet by clicking on a button or something, which is a slightly different use case than the usual use case for Klipse where the snippets are klipsified at page load time. To implement that, you need to Klipsify a snippet explicitly. See here for how to do that: https://github.com/viebel/klipse/wiki/How-to-Klipsify-an-arbitrary-HTML-element

Yehonathan Sharvit 2019-05-21T05:23:58.026Z

I hope that it helps

porkostomus 2019-05-21T10:10:06.030Z

Wow, this is great! Indeed the last option is what I'm going for eventually, to be able to interactively add code blocks, formulas and explanations. But since this is a learning project I'll probably try out each of them along the way. Thank you so much for all of this!

Yehonathan Sharvit 2019-05-21T10:40:47.030200Z

My pleasure @porkostomus