---- On Mon, 19 Feb 2024 01:31:42 +0100 Jack Kamm wrote --- > I don't remember the details, but my past self [1] thought it would be > good to find a way to replace `process-file' with `make-process' in > `org-babel--shell-command-on-region' or `org-babel-eval', and it seems > you are thinking along those lines with `my-org-babel-eval-async'. Hope > you're able to make progress on this and get the improvements into > ob-eval.el eventually. > > [1] https://list.orgmode.org/871rczg7bi....@gmail.com/#t
AFAIK, aside from appending "&", =make-process= is the only way. It would probably make sense to continue using =shell= though. If I understand correctly, you (and others) jump between the Org buffer block and the comint buffer? ---- On Mon, 19 Feb 2024 10:03:36 +0100 Ihor Radchenko wrote --- > Note that we already have a WIP an asynchronous API in the works. > Check out `org-async-call' in > https://code.tecosaur.net/tec/org-mode/src/branch/dev/lisp/org-macs.el#L377 > If possible, we should reuse it. :O - What's the status? - Anything I could help with? - Are there any notes or supplements that go along with it? > I have several general questions: > > - what if append/prepend to result asynchronously? > - what if we replace the result, call async evaluation two times, and they > arrive in opposite order (first called is calculated after the second)? > - on failure, Org babel sometimes uses ~org-babel-eval-error-notify~. How > will it interact with asynchronous evaluation? What if we have multiple > simultaneously arriving error notifications? > Example: try running > #+begin_src bash > idontexist > #+end_src Are these open questions for the `org-async-call' implementation? -- Matt Trzcinski Emacs Org contributor (ob-shell) Learn more about Org mode at https://orgmode.org Support Org development at https://liberapay.com/org-mode