I recently upgraded to Emacs 23.1.50, and Slime stopped connecting - it would start the inferior-lisp, but never connect. After some investigation, I found that it would work if started from emacs -q and then everything up until and including the call to slime would work. Is there any way to force the remainder of my customizations to wait until the slime-repl has connected in order to be processed? This would solve my immediate issue.
+3
A:
From your description, it sounds as though a setting in your .emacs before the call to Slime is what is breaking Slime.
A couple of ideas:
- Get an official release (version number 23.1.1) just in case there's something weird with your build
- Move the Slime connection code to the front of your .emacs, thereby causing your customizations to happen after the slime connection is made
- Actually debug your .emacs (slowly move the slime initialization call forward until it works)
- Try adding
(sit-for 10)
after the call to start Slime in case there's some weird synchronization going on
But, specifically, there is a hook in Slime named 'slime-connected-hook
, which you could use to finish your customizations. i.e. Split your .emacs into two parts (ending the first with a call to start slime), and register the second part to get loaded after the Slime process has connected.
(add-hook 'slime-connected-hook (lambda () (load "~/.emacs.part2.el")))
Trey Jackson
2009-10-13 16:24:49