From 50e4df3d05d995d261ffb66064440b0e4ef8857b Mon Sep 17 00:00:00 2001 From: Ahmed Shariff Date: Mon, 24 Jul 2023 11:18:31 -0700 Subject: [PATCH 1/2] Parse json from kernelspec being printed with warnings --- jupyter-kernelspec.el | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/jupyter-kernelspec.el b/jupyter-kernelspec.el index b87334a6..7fb741e7 100644 --- a/jupyter-kernelspec.el +++ b/jupyter-kernelspec.el @@ -76,10 +76,17 @@ REFRESH." (or (and (not refresh) (gethash host jupyter--kernelspecs)) (let ((specs (plist-get - (let ((json (or (jupyter-command "kernelspec" "list" + (let* ((json-result (or (jupyter-command "kernelspec" "list" "--json" "--log-level" "ERROR") (error "\ -Can't obtain kernelspecs from jupyter shell command")))) +Can't obtain kernelspecs from jupyter shell command"))) + (_ (string-match "{.*}" json-result)) + (json-start (car (match-data))) + (json-end (cadr (match-data))) + (json (substring json-result json-start json-end))) + (when (> json-start 0) + (warn "Getting kernelspec has warning(s):" + (substring json-result 0 json-start))) (condition-case nil (jupyter-read-plist-from-string json) (error From f9b93bf8297d9ad29fc1e0350e1d21b46e74eccb Mon Sep 17 00:00:00 2001 From: Shariff Faleel Date: Mon, 24 Jul 2023 14:01:16 -0700 Subject: [PATCH 2/2] Fix regex --- jupyter-kernelspec.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jupyter-kernelspec.el b/jupyter-kernelspec.el index 7fb741e7..c44582be 100644 --- a/jupyter-kernelspec.el +++ b/jupyter-kernelspec.el @@ -80,7 +80,7 @@ REFRESH." "--json" "--log-level" "ERROR") (error "\ Can't obtain kernelspecs from jupyter shell command"))) - (_ (string-match "{.*}" json-result)) + (_ (string-match "{\\(.\\|\n\\)*}" json-result)) (json-start (car (match-data))) (json-end (cadr (match-data))) (json (substring json-result json-start json-end)))