Open TatriX opened 4 years ago
I fiddle with this a bit more and have gotten it to to function partially.
(cl-defun ++hy-init-named-session (&optional session)
(condition-case err
(unless (and (featurep 'hy-mode) (fboundp 'run-python))
(require 'hy-mode))
(error (error "No function available for running an inferior Hy")))
(save-window-excursion
(let ((session (if session (intern session) :default)))
(unless (org-babel-hy-session-buffer session)
(let* ((hy-shell--buffer-name (org-babel-hy-with-earmuffs session))
(hy-shell--name (org-babel-hy-without-earmuffs hy-shell--buffer-name)))
(run-hy)
(setq org-babel-hy-buffers
(cons (cons session hy-shell--buffer-name)
(assq-delete-all session org-babel-hy-buffers)))))
session)))
(add-function :override (symbol-function 'org-babel-hy-initiate-session-by-key) #'++hy-init-named-session)
Adding the :override
advice for org-babel-hy-initiate-session-by-key
gets org-babel-hy-buffers
set correctly.
I'm getting some strange output in the results block though.
#+begin_src hy :results output :session hylang
(import [matplotlib :as mp]
[numpy :as np])
(print "stuff")
#+end_src
#+RESULTS:
: ... import matplotlib as mp
: import numpy as np
: None
: print('stuff')
:
: stuff
: import builtins
: None
I'm not certain if that is out of the ordinary; I have never used this package before. I do not see the code echoed in the results when executed outside of a session.
Hi! I've tried using ob-hy and I've got and error for the following code:
Error:
It seems that
run-hy
no longer takes an argument, so I fixed that and it worked.Another issue is with sessions:
Doesn't work:
But this does, because I guess
hy-mode
create buffer*Hy*
by default.