Freeze for SLIME 2.4

João Távora joaotavora at gmail.com
Sun Feb 23 23:44:16 UTC 2014


> I'm attaching a copy of my .emacs file renamed to my_dot_emacs.
> There will be changes to my .emacs as I learn more about what I need.

Hi Paul,

I'm annotating your .emacs file, not solving your issue with the broken
contribs in particular, but I've spotted some mistakes.

> ;;Don't know what this does, but I saw it in slime/README.md so I thought to try it...
> ```el

The "```el" is not Elisp. It's a bit of github-specific markdown markup
to highlight emacs-lisp code.

> (require 'cl-lib "~/my-slime-sandbox/slime/lib/cl-lib.el") ;;this is
> cl-lib-0.3 shipped w/slime.

You shouldn't need to do this at all, unless you plan to use cl-lib in other
projects.

> ;;Latest slime installation
> (add-to-list 'load-path "~/my-slime-sandbox/slime/") ;your SLIME directory
>
> ;;(require 'slime-tests) ;;This is the way to load the test suite for interactive use, but it gives errors this way.
> 						 ;;Run the tests from
> 						 within emacs with M-x
> 						 slime-batch-test.

This should be OK to uncomment, but beware that slime-tests.el required
this way may not always live in your slime dir (the only you added to
the load-path so far)

> ;;Stuff from
> http://archgeek.wordpress.com/2009/02/07/setting-up-slime-emacs-and-sbcl/

Mind you this article is 5 years old and possibly outdated in some
aspects.

> (eval-after-load "slime"
>
>   '(progn
>
> 	;;Recently added these three lines to allow quicklisp to work
> 	(set-language-environment "UTF-8")
> 	(setq slime-net-coding-system 'utf-8-unix)

I don't have this and quicklisp loads fine. I load it from my ~/.sbclrc
like so: (load "~/quicklisp/setup.lisp")

Perhaps you could explain why you think utf-8-unix is needed. Maybe it
is.

> 	;;(load (expand-file-name "~/quicklisp/slime-helper.el"))
> 	;;NOTE: this causes quicklisp to load its version of slime
> 	rather than mine

Indeed. Don't do this unless you plan to use quicklisp's version
exclusively.

> 	(setq slime-lisp-implementations
> 	'(
> 	(sbcl ("/usr/local/bin/sbcl") :coding-system utf-8-unix) ;;for sbcl
> 	;;cmucl won't load clx under mcclim!
> 	;;(cmucl ("/opt/cmucl-20d/bin/lisp") :coding-system iso-8859-1-unix) ;;Not using
> 	;;;;(cmucl ("/opt/cmucl-20d/bin/lisp") :coding-system utf-8-unix) ;;Don't work
> 	(ccl ("/usr/local/bin/ccl") :program-args -K :coding-system utf-8-unix) ;;64-bit
> 	(ccl32 ("/usr/local/bin/ccl32") :program-args -K :coding-system utf-8-unix) ;;32-bit
> 	;;;;(clforjava ("/home/pfb/clforjava")) ;;Doesn't work properly
> 	)

This looks fine, though the default coding-system should work.

> 	common-lisp-hyperspec-root "~/my-slime-sandbox/HyperSpec/")
>
>   (slime-setup '(
> 	slime-fancy  ;;added this when quicklisp was added
> 	
> ;	slime-tramp  ;;added this when quicklisp was added. (may be useful)
> 	slime-asdf
> 	;;slime-typeout-frame	;;starts slime with a external typeout frame
> 	slime-indentation
> ;	slime-mdot-fu
> 	;;slime-sbcl-exts   ;;decided not to continue with this
> 	slime-xref-browser
> 	slime-highlight-edits	;;Added this to test. I'm having trouble adapting to it, but it is useful.
> 	slime-mrepl				;;Allows multiple repls. Invoke w/ M-x slime-open-listener.
> 	;;slime-tests ;;Not the best place for this.
> 	
> 	))

See below after your `slime-autoloads' line.

> 	;; Remove the following without noticed problems
> 	;;(slime-autodoc-mode)

Indeed. The `slime-autodoc' contrib is included in `slime-fancy'
contrib. And should set itself up automatically when the contrib is
enabled.

> 	;;(setq slime-complete-symbol*-fancy t)

> 	;;(setq slime-complete-symbol-function
> 	'slime-fuzzy-complete-symbol)

If you comment out this line `slime-fuzzy-complete-symbol' won't be your
default completion function.


> 	;;(add-hook 'lisp-mode-hook (lambda () (slime-mode t)))

This is redoing something that SLIME should take care of.
 	
> 	;;When this is loaded, it fills the repl with many warnings...
> 	;;(load "~/quicklisp/log4slime-setup.el")
> 	;;(global-log4slime-mode 1) ;;This generates a compiler warning

I'll have a look at log4slime and get in touch with the author to see if
we can make it a proper (third-party) contrib.
> 	
>   ))
> 	
> (require 'slime-autoloads)

Your contrib setup is fine, but if you wish you could add here

    (setq slime-contribs '(slime-fancy slime-asdf slime-indentation
                           slime-xref-browser slime-hightlight-edits
                           slime-mrepl))

Instead of the `slime-setup' call in your eval-after-load block.

João



More information about the slime-devel mailing list