From e426340cd3a643ba08f905149e98013f9d667509 Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Wed, 15 Aug 2012 20:54:22 +0200 Subject: [PATCH] Fix: ein:tb-show did not work in shared-output buffer It did not work because ein:get-notebook does not work. Notebook is not well defined in shared-output buffer since it knows only about kernel (through cell). This reflect the design that kernel and notebook is well decoupled. --- lisp/ein-kernel.el | 1 + lisp/ein-traceback.el | 6 +++--- lisp/ein.el | 1 + 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lisp/ein-kernel.el b/lisp/ein-kernel.el index 7c95ed5..0f80d76 100644 --- a/lisp/ein-kernel.el +++ b/lisp/ein-kernel.el @@ -58,6 +58,7 @@ FIXME: document other slots." after-execute-hook kernelinfo) +(defalias 'ein:kernel-id 'ein:$kernel-kernel-id) (defstruct ein:$kernelinfo "Info related (but unimportant) to kernel diff --git a/lisp/ein-traceback.el b/lisp/ein-traceback.el index 3799048..ed14b24 100644 --- a/lisp/ein-traceback.el +++ b/lisp/ein-traceback.el @@ -79,10 +79,10 @@ (unless (ein:and-let* ((tb-data (ein:get-traceback-data)) (url-or-port (ein:get-url-or-port)) - (notebook (ein:get-notebook)) - (nb-name (ein:notebook-name notebook)) + (kernel (ein:get-kernel)) + (kr-id (ein:kernel-id kernel)) (tb-name (format ein:tb-buffer-name-template - url-or-port nb-name))) + url-or-port kr-id))) (ein:tb-popup (ein:tb-new tb-name) tb-data) t) (error "No traceback is available."))) diff --git a/lisp/ein.el b/lisp/ein.el index 2317faa..53e0d3b 100644 --- a/lisp/ein.el +++ b/lisp/ein.el @@ -44,6 +44,7 @@ "Ask server to create a new notebook and open it in a new buffer." t) (autoload 'ein:notebook-name "ein-notebook") +(autoload 'ein:kernel-id "ein-kernel") (autoload 'ein:connect-to-notebook-command "ein-connect" nil t) (autoload 'ein:connect-to-notebook "ein-connect" nil t)