tags:

views:

169

answers:

1

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