*
lisp/ob-python.el (org-babel-python-initiate-session-by-key): Do not
rely
on 10ms delay to initialize Python. Wait until python process is
initialized
using `org-babel-comint-wait-for-output'.
---
lisp/ob-python.el
| 5 +++--
1
file changed, 3 insertions(+), 2 deletions(-)
diff
--git a/lisp/ob-python.el b/lisp/ob-python.el
index
932aca08e..e50a7c2e2 100644
---
a/lisp/ob-python.el
+++
b/lisp/ob-python.el
@@
-197,8 +197,7 @@ (defun org-babel-python-initiate-session-by-key (&optional session)
(setq
py-buffer (org-babel-python-with-earmuffs session)))
(let
((python-shell-buffer-name
(org-babel-python-without-earmuffs
py-buffer)))
-
(run-python
cmd)
-
(sleep-for
0 10)))
+
(run-python
cmd)))
((and
(eq 'python-mode org-babel-python-mode)
(fboundp
'py-shell)) ; python-mode.el
(require
'python-mode)
@@
-217,6 +216,8 @@ (defun org-babel-python-initiate-session-by-key (&optional session)
(py-shell
nil nil t org-babel-python-command py-buffer nil nil t nil)))
(t
(error
"No function available for running an inferior Python")))
+
;; Wait until Python initializes.
+
(org-babel-comint-wait-for-output py-buffer)
(setq
org-babel-python-buffers
(cons
(cons session py-buffer)
(assq-delete-all
session org-babel-python-buffers)))
--
2.35.1