What does HackerNews think of emacs-jupyter?

An interface to communicate with Jupyter kernels.

Language: Emacs Lisp

As far as I know, there are no other editors or word processors that offer interpolated variables at a keystroke[1], the primary reason I developed the software. A similar editor to KeenWrite is Jupyter Notebooks, which looks like it has an Emacs extension[2]. I think of KeenWrite as being meant for long-form prose with a little math and stats thrown in (e.g., sci-fi novels); Jupyter Notebooks is meant for math and stats with short-form prose thrown in.

[1]: https://youtu.be/CFCqe3A5dFg?t=48 (variables tutorial)

[2]: https://github.com/nnicandro/emacs-jupyter

For anybody following along with the examples, a few points/tips that might help newcomers:

1. (By default) before you can use Python source blocks, you need to have the Org Babel Python functionality loaded which is most easily done by evaluating the elisp (require 'ob-babel), but there are other ways also [1].

2. The first example, which uses the print function, will not output anything because the Python blocks by default are evaluated inside a function body and the return value is returned to Org [2]. To return the printed output instead, you need the header argument ":results output". There is an example of this syntax later in TFA.

3. If you are serious about replacing (or complementing) other Jupyter tools with Org mode, you might want to eventually look at emacs-jupyter [3], which provides a more advanced handling of outputs and also supports other (i.e. non-Python) kernels.

Also, I don't think I've ever seen anything like the debugging example and when I tried to replicate it out of curiosity, the block simply failed with a bdb.BdbQuit exception. Am I missing something? What is supposed to happen?

[1] https://orgmode.org/manual/Languages.html

[2] https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-...

[3] https://github.com/nnicandro/emacs-jupyter

There's also org mode in emacs.

https://github.com/nnicandro/emacs-jupyter

I'm not a great fan of notebooks though, I keep using the REPL with X forwarding for matplotlib, sided with a code editor.

You can also tap into the entire Jupyter system using emacs-jupyter [1] which also includes an org-babel component – and it looks like you can preview the LaTeX in Org mode given a few options options [2].

[1] https://github.com/nnicandro/emacs-jupyter

[2] See https://github.com/nnicandro/emacs-jupyter#a-note-on-using-t... and https://github.com/nnicandro/emacs-jupyter/issues/218

There is also Emacs Jupyter if you use Emacs, and all sorts of `org-babel` integrations if you use org-mode.

https://github.com/nnicandro/emacs-jupyter

There is a package which lets you interact with ipython kernels instead. You might want to check that out.

https://github.com/nnicandro/emacs-jupyter

My concept of a "REPL" is mostly defined by emacs. You would have a buffer with a code file, with an active jupyter kernel with the correct dependencies loaded in it. Then one would send any active region with `C-c C-c` and get timely feedback.

With this mode https://github.com/nnicandro/emacs-jupyter one can connect to a jupyter kernel running locally or remote (would mostly prefer SSH port forwarding or kubectl port-forward the remote jupyter server). It makes life so much easier to interact with cloud environment (e.g. spark).

You don't need to customise a browser. Just use emacs. Try writing "notebooks" in org-mode using emacs-jupyter.

https://orgmode.org/ https://github.com/nnicandro/emacs-jupyter