Re: Thoughts on this ob language generator

2023-01-18 Thread Ihor Radchenko
George Mauer  writes:

> I had a need the other day to execute some typescript in an org document.
> Now I know that there's an ob-typescript package but that doesn't quite
> work the way I want and expects typescript to be installed globally (which
> runs into a variety of versioning issues).
>
> There is a better option available with the `npx` program (installed
> alongside `npm`) which can install a package along with its dependencies
> into a temporary sandbox and run its binaries.
>
> I rewrote the typescript babel plugin to do this and then realized that
> there was relatively little in it beyond variable and function names that
> was typescript-specific. The exact same process can be used for anything
> that has an interpreter up on npm. Coffeescript, mermaidjs, all sorts of
> things.
>
> So I made a macro. I'm interested what people here think:
> https://github.com/togakangaroo/create-ob-npx

I'd say that the problem you are trying to solve is similar to what
ob-shell.el does. And it does it similarly, modulo common shell syntax.

More generally, generic backends like ob-shell or what you are proposing
are a subset of "take the code block, save it to file, and pass the file
to be executed by a CLI command".

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at .
Support Org development at ,
or support my work at 



Re: Thoughts on this ob language generator

2023-01-14 Thread George Mauer
Thanks a lot Tim, I really appreciate you responding (as you said, it can
be discouraging to not get any response)

For the record, I just tried this simple example and it works

#+begin_src emacs-lisp :results silent
  (create-ob-npx :name "ob-nbb"
 :language "clojurescript"
 :npx-arguments "nbb")
#+end_src

#+begin_src clojurescript
  (prn (+ 1 2 3))
#+end_src

#+RESULTS:
: 6


Never pushed anything to MELPA before but will have to take a look at how
to do this.

On Sat, Jan 14, 2023 at 7:41 PM Tim Cross  wrote:

> George Mauer  writes:
>
> > I had a need the other day to execute some typescript in an org
> document. Now I know that there's an
> > ob-typescript package but that doesn't quite work the way I want and
> expects typescript to be installed
> > globally (which runs into a variety of versioning issues).
> >
> > There is a better option available with the `npx` program (installed
> alongside `npm`) which can install a
> > package along with its dependencies into a temporary sandbox and run its
> binaries.
> >
> > I rewrote the typescript babel plugin to do this and then realized that
> there was relatively little in it
> > beyond variable and function names that was typescript-specific. The
> exact same process can be used for
> > anything that has an interpreter up on npm. Coffeescript, mermaidjs, all
> sorts of things.
> >
> > So I made a macro. I'm interested what people here think:
> https://github.com/togakangaroo/create-ob-npx
>
> This looks interesting and could have some great potential. As you say,
> tehre is a growing class of languages which could be supported using
> this method. I'm interested in trying out the nbb package (Clojurescript
> on node) using this method, but right now, no time.
>
> Really just wanted to give feedbac as I noticed nobody else responded
> and didn't want to give the impression there was no interest.
>
>


Re: Thoughts on this ob language generator

2023-01-14 Thread Tim Cross
George Mauer  writes:

> I had a need the other day to execute some typescript in an org document. Now 
> I know that there's an
> ob-typescript package but that doesn't quite work the way I want and expects 
> typescript to be installed
> globally (which runs into a variety of versioning issues).
>
> There is a better option available with the `npx` program (installed 
> alongside `npm`) which can install a
> package along with its dependencies into a temporary sandbox and run its 
> binaries.
>
> I rewrote the typescript babel plugin to do this and then realized that there 
> was relatively little in it
> beyond variable and function names that was typescript-specific. The exact 
> same process can be used for
> anything that has an interpreter up on npm. Coffeescript, mermaidjs, all 
> sorts of things.
>
> So I made a macro. I'm interested what people here think: 
> https://github.com/togakangaroo/create-ob-npx

This looks interesting and could have some great potential. As you say,
tehre is a growing class of languages which could be supported using
this method. I'm interested in trying out the nbb package (Clojurescript
on node) using this method, but right now, no time.

Really just wanted to give feedbac as I noticed nobody else responded
and didn't want to give the impression there was no interest.



Thoughts on this ob language generator

2023-01-13 Thread George Mauer
I had a need the other day to execute some typescript in an org document.
Now I know that there's an ob-typescript package but that doesn't quite
work the way I want and expects typescript to be installed globally (which
runs into a variety of versioning issues).

There is a better option available with the `npx` program (installed
alongside `npm`) which can install a package along with its dependencies
into a temporary sandbox and run its binaries.

I rewrote the typescript babel plugin to do this and then realized that
there was relatively little in it beyond variable and function names that
was typescript-specific. The exact same process can be used for anything
that has an interpreter up on npm. Coffeescript, mermaidjs, all sorts of
things.

So I made a macro. I'm interested what people here think:
https://github.com/togakangaroo/create-ob-npx