Hi,
I have sbcl 1.0.7 running remotely on machine A and I initially connected to it from emacs/slime on another machine B. I would like to start an emacs on machine A, and attach to the repl thread that is visible on machine B's emacs/slime repl.
The problem is that machine B is my laptop and I executed a function that will take about 24 hrs. I would disconnect the slime connection, but, that will terminate the repl-thread that currently executing the long function. Can I keep this thread alive *and* disconnect the slime connection?
Thanks,
Osei Poku osei.poku@gmail.com writes:
long function. Can I keep this thread alive *and* disconnect the slime connection?
have a look at screen (f.e. http://www.csci.csusb.edu/turner/archive/notes/screen.html) and start emacs inside a screensession (emacs -nw)
You can deattach your emacs-session, login via ssh reattach your emacs-session, etc. as you like...
hope that gave you an idea,
okflo
On Thu, Aug 23, 2007 at 03:48:09PM +0200, Otto Diesenbacher wrote:
Osei Poku osei.poku@gmail.com writes:
long function. Can I keep this thread alive *and* disconnect the slime connection?
have a look at screen (f.e. http://www.csci.csusb.edu/turner/archive/notes/screen.html) and start emacs inside a screensession (emacs -nw)
You can deattach your emacs-session, login via ssh reattach your emacs-session, etc. as you like...
Yes I do this already and it is extremely convenient. I had already started something out of screen that's why I asked the question. I needed to transfer the repl-thread to an emacs that was started in a screen.
I ended up waiting for the function to finish, however, while investigating I noticed an emacs function "slime-thread-attach" in slime.el which seemed promising. However, I think it just starts a new connection in different repl thread. I can't imagine how I would get it work though since I cannot detach a thread. Running that command gives an error about the slime port file already existing.
Someone on #lisp had mentioned that Allegro CL had this capability in its repl.
hope that gave you an idea,
okflo
slime-devel site list slime-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/slime-devel
On 2007-08-23, Osei Poku osei.poku@gmail.com wrote:
I have sbcl 1.0.7 running remotely on machine A and I initially connected to it from emacs/slime on another machine B. I would like to start an emacs on machine A, and attach to the repl thread that is visible on machine B's emacs/slime repl.
You have to start the swank-side on machine A with :dont-close t, e.g. via setting swank:*dont-close* before calling swank:start-server.
After that, you can also `slime-connect' from an Emacs on A to that process. (You can discover the port you've got to connect via `slime-list-connections' on B.)
I think this should do the trick,
-T.
[ It seems Gmane had some trouble over the last days, so excuse if this comes through twice. ]
On 2007-08-23, Osei Poku osei.poku@gmail.com wrote:
I have sbcl 1.0.7 running remotely on machine A and I initially connected to it from emacs/slime on another machine B. I would like to start an emacs on machine A, and attach to the repl thread that is visible on machine B's emacs/slime repl.
You have to start the swank-side on machine A with :dont-close t, e.g. via setting swank:*dont-close* before calling swank:start-server.
After that, you can also `slime-connect' from an Emacs on A to that process. (You can discover the port you've got to connect via `slime-list-connections' on B.)
I think this should do the trick,
-T.